Closed dschense closed 5 months ago
what was the command, where you added multiple keys to the .py script?
Have you tried to change the generate_keys.py itself with changing MAX_KEYS
to 20, and the default in the -n
argument to 20 and then make the command as you would with 1 key?
Maybe there is a missing blank line at the end of the keyfile? If this works, the keyfile parser woould't stop until blank line I guess.
Command: python3 generate_keys.py -tinfs i_agree -n 50 -v
got the PREFIX Files in the output folder.
Also tried to change the generation script to Default 50 like you told.
patched:
# For the nrf51
export LC_CTYPE=C
xxd -p -c 100000 PREFIX_keyfile | xxd -r -p | dd of=nrf51_firmware.bin skip=1 bs=1 seek=$(grep -oba OFFLINEFINDINGPUBLICKEYHERE! nrf51_firmware.bin | cut -d ':' -f 1) conv=notrunc
still the same problem. Dont get any location data from devices with more than 1 key included in the files.
Its fixed for me.
did not see the MAX_KEYS
value within the firmware. Keyfile with 50
, but firmware with 20
does not match.
my fault.
I'm not quite sure if I'm not doing something wrong.
With a single key, generated via generate_keys.py, everything seems to work as intended. The firmware can be patched and the dongle can be flashed so that location data can also be retrieved.
But as soon as I generate multiple keys (no matter how many: 5, 20, 50, 100,..), I can flash the patched firmware to the NRF51822 dongle, but I never get a location. I have tested this procedure several times. Only once did I succeed in patching the firmware with a keyfile containing 20 keys and was able to send location data after the flash.
Is there anything I have overlooked?