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

Toggle GPIO on Beacon when out of range of Phone?

Hello,

I'm just starting to use the nRF Smart Beacon kit.

Is it possible to have the beacon toggle a GPIO on-board when the beacon is out of range of the phone/app?

Also, is a specific compiler needed to create the application .hex file?

I am willing to pay an experienced nRF developer to walk me through re-programming the app on the Smart Beacon.

Email me at [email protected]

Thanks,

Mike

Parents
  • I've managed to compile a .hex file in Keil. Now I'm trying to create an init file.

    I've installed nrfutil through pip and have been attempting to run code that creates the init file:

    nrfutil pkg generate --hw-version 51 --sd-req 0x81 --application-version 4 --application app.hex test.zip

    I'm pretty sure my SoftDevice version is wrong since I have 7.1, but the list of SoftDevice codes didn't go up that right. And I don't know my application version. Any help here too?

    But I receive this error:

    AttributeError: 'dict' object has no attribute 'iteritems'

  • I am sorry for the long delay.

    If you are planning on a big project I would absolutely recommend you to buy an nRF51 Development Kit, and program it using the debugger included with the kit. Here is a link explaining how to do it. Developing only using the DFU can be a nightmare, as it won't let you debug your code. In addition, you can not upgrade the SoftDevice over the air nor use any SDK versions above SDK 7. Using a DK will make this possible. Here is an informative link regarding this.

    I am not sure what causes the error, I will look into it if you choose to continue with that approach (without DK and programmer).

    Best regards,

    Simon

Reply
  • I am sorry for the long delay.

    If you are planning on a big project I would absolutely recommend you to buy an nRF51 Development Kit, and program it using the debugger included with the kit. Here is a link explaining how to do it. Developing only using the DFU can be a nightmare, as it won't let you debug your code. In addition, you can not upgrade the SoftDevice over the air nor use any SDK versions above SDK 7. Using a DK will make this possible. Here is an informative link regarding this.

    I am not sure what causes the error, I will look into it if you choose to continue with that approach (without DK and programmer).

    Best regards,

    Simon

Children
  • It would be nice to work with the hardware I already have, especially since it seems like I'm close to figuring it out.

    I've managed to use the nrfutil command to create a .zip package. But when I try to upload this package to the beacon using the nRF beacon app, I receive the error: remote dfu operation failed

    This is the code I used to generate the .zip package:
    nrfutil pkg generate --hw-version 51 --application myapp.hex --application-version 0xffffffff --sd-req 0x64,0x45,0x5a myapp.zip

    Can you help me with this?

  • What I initially spotted, is that you are using a new version of nrfutil,  which will not work with SDK 7 and 6. Try using nrfutil version 0.5.1 instead (I have attached the executable). The commands are a little different, but typing nrfutil --help gives more information.

    Have you checked if the sd-req numbers are according to the SoftDevice already present on the chip? It should be a sticker on the back showing the version, then check this link to find out what SoftDevice is used. Then, look here to find the correct FWID.

    Use the same method as above to find out what SDK the bootloader uses, and make sure the application comes from the same SDK.

    However, if somebody else has used the smart beacon before you, chances are big that the chip contains different firmware. 

    nrfutil.zip

    Best regards,

    Simon

Related