Skip to content

Not showing battery level - nRF52832-QFAA #24

@kentux

Description

@kentux

Hi !

I'm trying to flash a nRF52832-QFAA with this firmware.

I've launch a make all HAS_BATTERY=1 and after replace the key with xxd command, I'm able to show the beacon in web frontend. But battery level is absent.

I have no idea how to debug this issue, have you some clues or anything else for helping me ?

Thank you !

PS: I'm using a ST-LINK V2 with J-Link FW

Compilation logs

make -C nrf52832/armgcc GNU_INSTALL_ROOT=/home/quentin/misc/AirTagLike/nrf-sdk/gcc-arm-none-eabi-7-2018-q2-update/bin/ MAX_KEYS=500 HAS_DEBUG=0 HAS_BATTERY=1 KEY_ROTATION_INTERVAL=3600 ADVERTISING_INTERVAL=1000 RANDOM_ROTATE_KEYS=1 nrf52832_xxaa bin_nrf52832_xxaa
make[1]: Entering directory '/home/quentin/misc/AirTagLike/heystack-nrf5x/nrf52832/armgcc'
cd _build && mkdir nrf52832_xxaa
Compiling file: es_battery_voltage_saadc.c
Compiling file: nrfx_saadc.c
Assembling file: gcc_startup_nrf52.S
/home/quentin/misc/AirTagLike/nrf-sdk/nRF5_SDK_15.3.0_59ac345/components/toolchain/gcc/Makefile.common:280: warning: pattern recipe did not update peer target '_build/nrf52832_xxaa/gcc_startup_nrf52.s.o.o'.
Compiling file: nrf_log_backend_rtt.c
Compiling file: nrf_log_backend_serial.c
Compiling file: nrf_log_backend_uart.c
Compiling file: nrf_log_default_backends.c
Compiling file: nrf_log_frontend.c
Compiling file: nrf_log_str_formatter.c
Compiling file: app_button.c
Compiling file: app_error.c
Compiling file: app_error_handler_gcc.c
Compiling file: app_error_weak.c
Compiling file: app_scheduler.c
Compiling file: app_timer.c
Compiling file: app_util_platform.c
Compiling file: hardfault_implementation.c
Compiling file: nrf_assert.c
Compiling file: nrf_atfifo.c
Compiling file: nrf_atflags.c
Compiling file: nrf_atomic.c
Compiling file: nrf_balloc.c
Compiling file: nrf_fprintf.c
Compiling file: nrf_fprintf_format.c
Compiling file: nrf_memobj.c
Compiling file: nrf_pwr_mgmt.c
Compiling file: nrf_ringbuf.c
Compiling file: nrf_section_iter.c
Compiling file: nrf_strerror.c
Compiling file: system_nrf52.c
Compiling file: boards.c
Compiling file: nrf_drv_clock.c
Compiling file: nrf_drv_uart.c
Compiling file: nrfx_atomic.c
Compiling file: nrfx_clock.c
Compiling file: nrfx_gpiote.c
Compiling file: nrfx_prs.c
Compiling file: nrfx_uart.c
Compiling file: nrfx_uarte.c
Compiling file: main.c
In file included from ../../main.c:54:0:
../../main.h:43:9: note: #pragma message: RTC_FREQUENCY: (32768 / (31 + 1))
 #pragma message("RTC_FREQUENCY: " _STRINGIFY(COMPUTED_RTC_FREQUENCY))
         ^~~~~~~
../../main.h:44:9: note: #pragma message: MAX_TIMER_INTERVAL_SECONDS: (0xFFFFFF / (32768 / (31 + 1)))
 #pragma message("MAX_TIMER_INTERVAL_SECONDS: " _STRINGIFY(COMPUTED_MAX_TIMER_INTERVAL))
         ^~~~~~~
Compiling file: ble_stack.c
Compiling file: SEGGER_RTT.c
Compiling file: SEGGER_RTT_Syscalls_GCC.c
Compiling file: SEGGER_RTT_printf.c
Compiling file: ble_advdata.c
Compiling file: ble_conn_params.c
Compiling file: ble_conn_state.c
Compiling file: ble_srv_common.c
Compiling file: nrf_ble_gatt.c
Compiling file: nrf_ble_qwr.c
Compiling file: utf.c
Compiling file: ble_lbs.c
Compiling file: nrf_sdh.c
Compiling file: nrf_sdh_ble.c
Compiling file: nrf_sdh_soc.c
Linking target: _build/nrf52832_xxaa.out
   text	   data	    bss	    dec	    hex	filename
  26164	    160	    776	  27100	   69dc	_build/nrf52832_xxaa.out
Preparing: _build/nrf52832_xxaa.hex
Preparing: _build/nrf52832_xxaa.bin
DONE nrf52832_xxaa
merging application and softdevice... : nrf52832_xxaa
mergehex -m _build/nrf52832_xxaa.hex /home/quentin/misc/AirTagLike/nrf-sdk/nRF5_SDK_15.3.0_59ac345/components/softdevice/s132/hex/s132_nrf52_6.1.1_softdevice.hex -o _build/nrf52832_xxaa_s132.hex
Parsing input files.
Merging file "nrf52832_xxaa.hex" into output.
Merging file "s132_nrf52_6.1.1_softdevice.hex" into output.
Storing merged file.
hex2bin.py _build/nrf52832_xxaa_s132.hex _build/nrf52832_xxaa_s132.bin
make[1]: Leaving directory '/home/quentin/misc/AirTagLike/heystack-nrf5x/nrf52832/armgcc'
mkdir -p ./release
cp nrf52832/armgcc/_build/*_s???.bin ./release/

release/nrf52832_xxaa.txt

# Build options for nrf52832_xxaa
GNU_INSTALL_ROOT=gcc-arm-none-eabi-7-2018-q2-update
MAX_KEYS=500
HAS_DEBUG=0
HAS_BATTERY=1
KEY_ROTATION_INTERVAL=3600
ADVERTISING_INTERVAL=1000
RANDOM_ROTATE_KEYS=1

Updating key command + result

$ xxd -p -c 100000 XXXXX_keyfile | xxd -r -p | dd of=nrf52832_xxaa_s132_XXXXX.bin skip=1 bs=1 seek=$(grep -oba OFFLINEFINDINGPUBLICKEYHERE! nrf52832_xxaa_s132.bin | cut -d ':' -f1) conv=notrunc
28+0 records in
28+0 records out
28 bytes copied, 3.9218e-05 s, 714 kB/s

Flashing device command + result

$ openocd -f openocd.cfg -c "init; halt; nrf51 mass_erase; program nrf52832_xxaa_s132_XXXXX.bin verify; reset; exit"
Open On-Chip Debugger 0.12.0
Licensed under GNU GPL v2
For bug reports, read
	http://openocd.org/doc/doxygen/bugs.html
Warn : Interface already configured, ignoring
Info : J-Link STLink V2 compiled Aug 12 2019 10:28:03
Info : Hardware version: 1.00
Info : VTarget = 3.300 V
Info : clock speed 1000 kHz
Info : SWD DPIDR 0x2ba01477
Info : [nrf52.cpu] Cortex-M4 r0p1 processor detected
Info : [nrf52.cpu] target has 6 breakpoints, 4 watchpoints
Info : starting gdb server for nrf52.cpu on 3333
Info : Listening on port 3333 for gdb connections
[nrf52.cpu] halted due to debug-request, current mode: Thread 
xPSR: 0x61000000 pc: 0x00015cce msp: 0x2000ffb0
Info : nRF52832-QFAA(build code: E0) 512kB Flash, 64kB RAM
Info : Mass erase completed.
[nrf52.cpu] halted due to debug-request, current mode: Thread 
xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc
** Programming Started **
Warn : Adding extra erase range, 0x0002c6d4 .. 0x0002cfff
** Programming Finished **
** Verify Started **
** Verified OK **

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions