Getting started with Thingy91

I am trying to flash an LED on and off on the Thingy91 I have been provided using the Blinky program.

I have managed to update the firnware and model as described in the getting started guide and updated to asset tracker v2.

I have installed the nRF connect desktop and through this the programmer and toolchain manager. Through this I open Segger studio and open an nRF connect project SDK release 1.8.0 Projects: blinky, boardname thingy_nrf9160. I build and there are no errors, this produces the file merged.hex and I use the programmer to update the Thingy91 in MCUboot mode. The hex file merged.hex deploys ok. I can tell it has deployed because the function of asset tracker v2 is replaced, and nothing happens. No LEDs blinking. There are no compiler warnings telling me that I have no onboard LED. There are other hex files produced at the same time: zephyr.hex, mcuboot_primary.hex and mcuboot_primary_app.hex.

I have also tried enabling the build for mcu boot as described here youtu.be/1jgImp7FBy8 and updating the app_signed.hex This doesn't work either.

Can you advise what I am doing wrong or preferably point me in the direction of a really basic getting started guide that deals with programming and not setting up hardware.

There is clearly a bit of the getting started process I am missing.

Thanks

Parents
  • Hi, 

    You should build with boardname thingy91_nrf9160_ns and update with app_signed.hex. After programming, power off/on the thingy91, it should blink with red. 

    Regards,
    Amanda

  • Hi folks,

    Reusing an old thread since the question is kinda the same.

    I'm trying to build and flash blinky sample into Thingy91, however I don't see it is blinking red.

    Building code, then flash ./build/zephyr/app_signed.hex went ok. However after power cycle Thingy91, it has fading blue led in the light well or all rgb. I've tried to flash via "Programmer" and with nrfutil on Ubuntu 22.04 with the same result.

    nrfutil device program --firmware build/zephyr/app_signed.hex --traits mcuBoot
    

    Could someone provide a hint what might be wrong, so I don't get an expected result? SDK ver. 2.3.0, Thingy91 v.1.0.0

    Regards,

    Alex

  • You should probably create a new thread, as things may have changed a lot since several years ago.

    Did you try the Thingy91 Getting Started Guide?  https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/working_with_nrf/nrf91/thingy91_gsg.html

    It loads a pre-build file, and connects to nRF Cloud, so not the same as blinky.  But you it is pre-built (so rules that out), and also has steps to update the device firmware first.

    Blinky (zephyr/samples/basic/blinky) did work for me, but there isn't any logging output, so you don't really know what is happening if the LED isn't blinking.

    You could also try zephyr/samples/hello_world, to see serial output (or just add some printk() statements to blinky). 

    I usually add a bit of a delay at the start of the samples, otherwise I find it may output (e.g. errors) before the serial is connected (e.g. nRF Terminal in VS Code)

    e.g.

    void main(void)
    {
        printk("0\n"); // or LOG_INF("0");
    	k_msleep(1000);
    	printk("1\n");
    	k_msleep(1000);
    	printk("2\n");
    	k_msleep(1000);
    	printk("3\n");
    
    	printk("Hello World! %s\n", CONFIG_BOARD);
    }



Reply
  • You should probably create a new thread, as things may have changed a lot since several years ago.

    Did you try the Thingy91 Getting Started Guide?  https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/working_with_nrf/nrf91/thingy91_gsg.html

    It loads a pre-build file, and connects to nRF Cloud, so not the same as blinky.  But you it is pre-built (so rules that out), and also has steps to update the device firmware first.

    Blinky (zephyr/samples/basic/blinky) did work for me, but there isn't any logging output, so you don't really know what is happening if the LED isn't blinking.

    You could also try zephyr/samples/hello_world, to see serial output (or just add some printk() statements to blinky). 

    I usually add a bit of a delay at the start of the samples, otherwise I find it may output (e.g. errors) before the serial is connected (e.g. nRF Terminal in VS Code)

    e.g.

    void main(void)
    {
        printk("0\n"); // or LOG_INF("0");
    	k_msleep(1000);
    	printk("1\n");
    	k_msleep(1000);
    	printk("2\n");
    	k_msleep(1000);
    	printk("3\n");
    
    	printk("Hello World! %s\n", CONFIG_BOARD);
    }



Children
No Data
Related