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

Program on Thingy52

I am starting with Thingy and I am having some troubles. Background is I have done some work with nRF52840 that sends beacons one-by-one with different payloads. And then receive the beacons and do decode. I am trying to do the same on Thingy but I cannot find startup examples. And I have several problems with Thingy.

First, I am not familiar with the words using across the materials, like firmware and bootloader. I have read the article about FW architecture from the infocenter, but I still have questions about it. Like, for my need, do I need to change the FW? And/or the bootloader? Second, I don't know how to flash a program onto the Thingy, it appears that you can use OTA with another 52DK to flash, is this correct? Third, I am using Thingy with 52832. Can I use S140 on it?

Parents
  • Hi mich_x. Firmware is essentially software (SW) which is designed for a specific piece of hardware. So for the Nordic Thingy, the firmware is the SW that makes the Thingy:52 do the things it can do. The SW has been specifically designed to work for the Nordic Thingy:52. A basic bootloader executes an application located at a specific memory location (see the bootloader module for more info). You will most likely need to change the FW to run the Thingy as a beacon, yes. To run custom FW on the Thingy, you will need use the secure dfu bootloader. Also, take a look at this link for compiling new FW for the Thingy. As the Thingy FW is based off of SDK v13, you should take a look at SDK 13 examples if you want to use the Thingy as a beacon.

    For flashing the Nordic Thingy FW onto the Thingy, you can either use Over the Air DFU or use a wired connection. See this link for more info on OTA-DFU. See this link for more info on the wired connection option.

    Regarding the softdevice, you cannot use the S140 Softdevice on it. You will need to use the s132 v4.0.2 Softdevice.

  • You can still flash your custom FW via OTA-DFU. OTA-DFU is a bit more complicated when flashing custom FW because you need to use the secure dfu bootloader I refer to in the answer. I am pretty sure you can re-flash the same FW OTA. The wired connection option is easier because you can just connect the Thingy to an nrf51/52 DK, plug in the 10 pin cable to the Debug Out Pin (P19) in the DK, turn both devices on & then use nrfgostudio to erase the DK, program the correct softdevice on the Thingy (i.e. v4.0.2) & then flash your custom FW.

  • I have downloaded this SDK and compiled the PCA20020 project in it. And I flashed the hex(hopefully). But nothing shows on the Thingy. Then light well goes off now. Which project were you talking about when you say change the color of the light into white. One more thing is that we I tried to flash the hex onto Thingy, it said that there are coeds in Soft Device area. So I have to erase all soft device before flashing the program. Is this something wrong?

  • Did you remember to erase the Thingy, then flash the correct softdevice & finally program the firmware application hex file at the end?

  • Sorry to bother you a lot. I am now able to flash a program onto Thingy. I have tried to change the color of the lightwell to red.

    My question is now. I found that the ble_event_type on Thingy in the PCA20020 example is different from the one in SDK 13. I am wondering if I could choose the ble.h from Softdevice and use the functions defined there.

    Like the sent beacon and receive adv etc.

  • I am unsure, but did you know that you can use the eddystone beacon protocol on the Thingy? Take a look at this link. Could be helpful. The module is currently experimental, so there might be some errors that will be updated in future Thingy FW. But it's definitely worth a shot!

  • In fact, not only do I have to send beacons on one device, I also have to receive beacons sent by other devices. I have checked the link and the Ebbystone library of SDK v13. But I can't find how to implement Ebbystone receiver using nRF52 device. Is it possible or supported? 

    Plus, I quite confused about why the original BLE services are not supported on Thingy? I thought the SDK of Thingy is pretty similar to SDK v13. 

Reply
  • In fact, not only do I have to send beacons on one device, I also have to receive beacons sent by other devices. I have checked the link and the Ebbystone library of SDK v13. But I can't find how to implement Ebbystone receiver using nRF52 device. Is it possible or supported? 

    Plus, I quite confused about why the original BLE services are not supported on Thingy? I thought the SDK of Thingy is pretty similar to SDK v13. 

Children
Related