This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

hx711 routines using in ant bike powe rmeter example

i am developing a bike power meter and designed my own hardware.

From software point of view I used the Ant+ bikepowermeter example from Nordic.

So far  my status is, 

connect to Garmin sportswatch  and accepted as bike powermeter.   works!

calculating the cadence:  work

transmit calculated cadence and simulated power. work

Now i am trying to go ahead with the HX711

Viards example of HX711 works also on my hardware ( NRF52840) and I can see the measurements in the debug window

My next step was to include your files in my project.

compilation works also and I can start the programm

But it hangs when it comes out of your  hx711_init(INPUT_CH_A_128, hx711_callback);     

the next step will be:

softdevice_setup();

but than  : it runs  into the NRF_BREAKPOINT_COND 

i tried to debug, and saw that  

ret_code = nrf_drv_gpiote_in_init(DOUT, &gpiote_config, gpiote_evt_handler)

APP_ERROR_CHECK(ret_code);

 in HX711.c gives a 4 as ret_code, which is a memory error

my mememory map looks :

FLASH_PH_START=0x0

FLASH_PH_SIZE=0x80000

RAM_PH_START=0x20000000

RAM_PH_SIZE=0x10000

FLASH_START=0x31000

FLASH_SIZE=0x6e000

RAM_START=0x20002000

RAM_SIZE=0xf480

Thanks in advance

any idea ?

Parents
  • The easiest should be to start with the ANT example (which use the softdevice) and then include the peripheral drivers and code into the ANT example, rather than the other way around. For instance the ANT example is configured with SOFTDEVICE_PRESENT in the preprocessor symbols which is used by the peripheral drivers, you would need to copy all the defines sdk_config.h to the ANT example.

    If nrf_drv_gpiote_in_init() return NRF_ERROR_NO_MEM, then I suspect you should increment GPIOTE_CONFIG_NUM_OF_LOW_POWER_EVENTS in sdk_config.h

Reply
  • The easiest should be to start with the ANT example (which use the softdevice) and then include the peripheral drivers and code into the ANT example, rather than the other way around. For instance the ANT example is configured with SOFTDEVICE_PRESENT in the preprocessor symbols which is used by the peripheral drivers, you would need to copy all the defines sdk_config.h to the ANT example.

    If nrf_drv_gpiote_in_init() return NRF_ERROR_NO_MEM, then I suspect you should increment GPIOTE_CONFIG_NUM_OF_LOW_POWER_EVENTS in sdk_config.h

Children
Related