We are using HMC5883 in a linux board (minnowboard max, still to send
to upstream).
Looking at the code, the code in _detect_backends() still has the code
to use HMC5883:
#if CONFIG_HAL_BOARD == HAL_BOARD_LINUX && CONFIG_HAL_BOARD_SUBTYPE !=
HAL_BOARD_SUBTYPE_LINUX_NONE
...
#elif HAL_COMPASS_DEFAULT == HAL_COMPASS_HMC5843
_add_backend(AP_Compass_HMC5843::detect);
#elif HAL_COMPASS_DEFAULT == HAL_COMPASS_PX4 || HAL_COMPASS_DEFAULT ==
HAL_COMPASS_VRBRAIN
...
#endif
From AP_HAL_Boards.h:
#elif CONFIG_HAL_BOARD == HAL_BOARD_APM2
...
#define HAL_COMPASS_DEFAULT HAL_COMPASS_HMC5843
...
#endif
So I fail to see why you said the code is not there anymore or why it
doesn't work for you :-/.
--
Lucas De Marchi