Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Hardware
  3. Everything nRF52840

Everything nRF52840

Scheduled Pinned Locked Moved Hardware
323 Posts 28 Posters 50.5k Views 33 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H heinzv

    @neverdie I can do upload with the standard ST-Link V2 Dongle on the same bare E73 module but for the BMP it is read-only?
    How do you flash the bare modules (not the DK)?

    NeverDieN Offline
    NeverDieN Offline
    NeverDie
    Hero Member
    wrote on last edited by NeverDie
    #106

    @heinzv said in Everything nRF52840:

    @neverdie I can do upload with the standard ST-Link V2 Dongle on the same bare E73 module but for the BMP it is read-only?
    How do you flash the bare modules (not the DK)?

    Not sure I understand your question. I can flash bare modules using the DK. I'll let others comment how they do it without using the DK, as that's about all I know. One final tip though: Generally it's important to power your target module independently of whatever programmer you're using. For instance, on the DK, it will detect the voltage level on the target and adjust accordingly, but it isn't meant to power the target.

    H 1 Reply Last reply
    1
    • NeverDieN NeverDie

      @heinzv said in Everything nRF52840:

      @neverdie I can do upload with the standard ST-Link V2 Dongle on the same bare E73 module but for the BMP it is read-only?
      How do you flash the bare modules (not the DK)?

      Not sure I understand your question. I can flash bare modules using the DK. I'll let others comment how they do it without using the DK, as that's about all I know. One final tip though: Generally it's important to power your target module independently of whatever programmer you're using. For instance, on the DK, it will detect the voltage level on the target and adjust accordingly, but it isn't meant to power the target.

      H Offline
      H Offline
      heinzv
      wrote on last edited by heinzv
      #107

      @neverdie To my first statement: I was just wondering why I can upload sketches with teh ST-Link V2 dongle (but no serial output/debug windows) but the BMP might face read-only protection (I thin kthe upload script should have some kind of mass erase before upload)?
      Regarding my question: I think I you understood my question right and I also read the nRF DK features and it says it features a SEGGER J-Link OB Debugger with debug out functionality. So I guess it's a flasher/debugger not only for it's on-board nRF52840 MCU but also for external nRF modules connected to the DK right?

      Are you're also using the DK with the Arduino IDE (though with restrictions like no full nRF52840 support) and the mySensors project?

      Meanwhile I'm exploring the nRF52840 USB dongles. And maybe I'll get along with the BMP modules and understand how the work with the Arduino IDE (so far I spent many hours with Google und no success).

      NeverDieN 1 Reply Last reply
      0
      • alowhumA Offline
        alowhumA Offline
        alowhum
        Plugin Developer
        wrote on last edited by
        #108

        The easiest way to get started with NRF5 might actually be the BBC Micro:bit :-)

        NeverDieN 1 Reply Last reply
        1
        • H heinzv

          @neverdie To my first statement: I was just wondering why I can upload sketches with teh ST-Link V2 dongle (but no serial output/debug windows) but the BMP might face read-only protection (I thin kthe upload script should have some kind of mass erase before upload)?
          Regarding my question: I think I you understood my question right and I also read the nRF DK features and it says it features a SEGGER J-Link OB Debugger with debug out functionality. So I guess it's a flasher/debugger not only for it's on-board nRF52840 MCU but also for external nRF modules connected to the DK right?

          Are you're also using the DK with the Arduino IDE (though with restrictions like no full nRF52840 support) and the mySensors project?

          Meanwhile I'm exploring the nRF52840 USB dongles. And maybe I'll get along with the BMP modules and understand how the work with the Arduino IDE (so far I spent many hours with Google und no success).

          NeverDieN Offline
          NeverDieN Offline
          NeverDie
          Hero Member
          wrote on last edited by NeverDie
          #109

          @heinzv said in Everything nRF52840:

          Regarding my question: I think I you understood my question right and I also read the nRF DK features and it says it features a SEGGER J-Link OB Debugger with debug out functionality. So I guess it's a flasher/debugger not only for it's on-board nRF52840 MCU but also for external nRF modules connected to the DK right?

          Right.

          Are you're also using the DK with the Arduino IDE (though with restrictions like no full nRF52840 support) and the mySensors project?

          Not presently. I made a weak attempt recently but something is broken (probably on my end) to where I couldn't get it to compile anymore, whereas previously I could. So, I decided to see what else was available, which led me to mbed, and then now to SES, which has no trouble compiling. As long as I can directly manipulate the nRF52 registers and have access to serial output for debugging, I can do pretty much do whatever I need to do.

          1 Reply Last reply
          0
          • alowhumA alowhum

            The easiest way to get started with NRF5 might actually be the BBC Micro:bit :-)

            NeverDieN Offline
            NeverDieN Offline
            NeverDie
            Hero Member
            wrote on last edited by NeverDie
            #110

            @alowhum said in Everything nRF52840:

            The easiest way to get started with NRF5 might actually be the BBC Micro:bit :-)

            Yes! From what I can tell, a lot of development work has gone into the micro bit to make it easily programmable using any of a handful of different languages including C, C++, and micropython. Apparently it's somehow possible to do a hybrid of C and micropython, where the time sensitive parts can be written in C/C++ and the rest in micropython. Not sure how that works exactly, but it sounds interesting.

            Originally I thought the BBC micro bit was purely a toy, but when I saw it could scroll text across its 5x5 matrix of LED's I realized that it could be more than that. Very clever!

            You can also program the microbit using the Arduino IDE:
            https://learn.adafruit.com/use-micro-bit-with-arduino

            My hope is that somewhere there's an easy-to-use way to:

            1. Do OTA updates.
            2. Interface with bluetooth.

            It seems there may be a way to OTA update the micro bit, probably from a bluetooth phone:
            https://phwallen.github.io/microbit-swift/

            What I'd prefer, obviously, is doing the OTA update from a computer (maybe using a dongle of some kind?) If that were possible, then nRF51 modules are so cheap you could imagine putting them in almost anything, even if it's to control a different kind of radio.

            https://www.aliexpress.com/item/nRF51822-04-BLE-4-0-Mini-AT-Command-WIFI-Wireless-Bluetooth-Module-TTL-Slave-Low-Power/32840163615.html?spm=2114.search0104.3.1.12f72932SZIor6&ws_ab_test=searchweb0_0,searchweb201602_2_10065_10068_10130_10547_10546_10059_10884_10548_315_10545_10887_10696_100031_10084_531_10083_10103_10618_10307_449,searchweb201603_60,ppcSwitch_0&algo_expid=1b57e3dd-d427-4abc-81b4-4ecb74b14cbd-0&algo_pvid=1b57e3dd-d427-4abc-81b4-4ecb74b14cbd&transAbTest=ae803_4&priceBeautifyAB=0

            1 Reply Last reply
            1
            • H heinzv

              @neverdie and @Nca78 thanks for the quick response, I have ordered the nRF52840 DK from Nordic (via Mouser). That works with Segger and also with Arduino Studio too (for the simple and existing 52832 projects like mySensors)?
              And fo the Arduino Studio (or VS Code) is there a serial terminal for debug output too?
              How to you flash then the bare nRF52 modules which have only the SWD interface (I have plenty of them)?

              @nagelc I have again tried my Black Magic Probe Dongle with Arduino IDE, but it does not yet work for me (maybe I still have not understood it). In Arduino Studio I have tge GDB serial port but neither the upload works properly nor I have understood how to use it with the GDB debug window.

              I attach the devices (Windows 10) and the output from Arduino IDE. Maybe you can give me further hints:

              0_1538297328202_BMP_COM_devices.jpg
              0_1538297341028_BMP_USB_devices.jpg

              I used a simple blink sketch which works with ST-LInk V2 upload but not with BMP. Here is the output from the upload:

              Sketch uses 3600 bytes (0%) of program storage space. Maximum is 409600 bytes.
              Target voltage: unknown
              Remote debugging using \.\COM58
              Available Targets:
              No. Att Driver
              1 Nordic nRF52
              2 Nordic nRF52 Access Port
              Attaching to Remote target
              0x00000ad0 in ?? ()
              Reading symbols from nRF52832_Blink.ino.elf...done.
              Loading section .text, size 0xe10 lma 0x1c000
              Loading section .ARM.exidx, size 0x8 lma 0x1ce10
              Loading section .data, size 0x74 lma 0x1ce18
              Start address 0x1c5fc, load size 3724
              Transfer rate: 26 KB/sec, 620 bytes/write.
              Temporary breakpoint 1 at 0x1cb4c: file D:\mcdev\arduino\portable\packages\sandeepmistry\hardware\nRF5\0.6.0\cores\nRF5\main.cpp, line 28.
              Starting program: C:\Users\internet\AppData\Local\Temp\arduino_build_189520\nRF52832_Blink.ino.elf
              Note: automatically using hardware breakpoints for read-only addresses.
              An error occurred while uploading the sketch

              nagelcN Offline
              nagelcN Offline
              nagelc
              wrote on last edited by
              #111

              @heinzv I'm running a different sketch, but I get almost the same output as you except at the end: instead of "An error occured . . .":

              Note: automatically using hardware breakpoints for read-only addresses.
              
              Temporary breakpoint 1, main ()
                  at D:\carln\Documents\Arduino\libraries\MySensors/hal/architecture/NRF5/MyMainNRF5.cpp:23
              23	{
              
              Program complete!
              

              There are a couple of differences.
              " Sketch uses 17856 bytes (3%) of program storage space. Maximum is 524288 bytes."
              Not sure why my maximum storage space would be higher than yours.
              "Start address 0x2fa0, load size 18080"
              Different sketch, so I would not expect the load size to match, but not sure why the Start address would be different.

              On the Arduino Tools tab, are you selecting Bootloader/SD: None?

              H 1 Reply Last reply
              0
              • nagelcN nagelc

                @heinzv I'm running a different sketch, but I get almost the same output as you except at the end: instead of "An error occured . . .":

                Note: automatically using hardware breakpoints for read-only addresses.
                
                Temporary breakpoint 1, main ()
                    at D:\carln\Documents\Arduino\libraries\MySensors/hal/architecture/NRF5/MyMainNRF5.cpp:23
                23	{
                
                Program complete!
                

                There are a couple of differences.
                " Sketch uses 17856 bytes (3%) of program storage space. Maximum is 524288 bytes."
                Not sure why my maximum storage space would be higher than yours.
                "Start address 0x2fa0, load size 18080"
                Different sketch, so I would not expect the load size to match, but not sure why the Start address would be different.

                On the Arduino Tools tab, are you selecting Bootloader/SD: None?

                H Offline
                H Offline
                heinzv
                wrote on last edited by
                #112

                @nagelc Thanks for your response and trying to get me further.
                I'm trying to get you as much infos as possible:
                I made a couple of screenshots and picture of my environment. Maybe that helps to trace down to the problem.
                I followed exactly the instructions from sanseeps Arduino/nRF5 configuration/installation.
                Uploading the bkink example with the ST-Link V2 works, but there is no serial print, no debug, thus I'm trying the BMP way.

                Here some setttings from my Arduino IDE (Tools section)
                0_1538340519482_Arduino_nRF52_Tools_1.jpg
                0_1538340524669_Arduino_nRF52_Tools_2.jpg

                Here are my different BMP modules I have used
                0_1538341046798_BMP-Modules.jpg
                and the COM devices in Win 10
                0_1538341107671_WIn10_COM_devices.jpg
                I have tried all kind of driver (using Zadik 2.4), but WInUSB, lisbusbK, libusb ... they all create USB devices only but no COM devices, which Arduino IDE does not "like") only the usbser driver gives me COM devices

                and the target device I'm using (which works, when I load the sketch with the ST-Link and select ST-Link in Arduino IDE)
                0_1538341217241_nRF52832_Modul.jpg

                nagelcN 1 Reply Last reply
                0
                • H Offline
                  H Offline
                  heinzv
                  wrote on last edited by
                  #113

                  @neverdie good discussion, but in order to get my desired solution which is sensor nodes with E-Paper and working with OpenHAB I need I either get the nRF52 modules running with mySensors (ideally just using the Arduino porject and IDE) using the nRF option (I think there is some initial nRF5 support) and using the older nRF24 protocol, or using LoRa with an RFM95 module (which is also supported) or I switch completly to Segger and make a ZigBee V3.0 solution (requiring a ZigBee gateway for OpenHAB). With my new Philips Hue HW version and the new SW firmware upgrade. It is claiming to support ZigBee V3.0 devices which includes also Temp/Hum sensors.

                  I'm also looking forward for the solution from berkseo where he does exactly that with and nRF52, but that seem to take some time to make it available.
                  https://www.openhardware.io/view/629/Temperature-and-humidity-sensorverNRF52832E-Ink-display#tabs-instructions

                  NeverDieN 1 Reply Last reply
                  0
                  • H heinzv

                    @neverdie good discussion, but in order to get my desired solution which is sensor nodes with E-Paper and working with OpenHAB I need I either get the nRF52 modules running with mySensors (ideally just using the Arduino porject and IDE) using the nRF option (I think there is some initial nRF5 support) and using the older nRF24 protocol, or using LoRa with an RFM95 module (which is also supported) or I switch completly to Segger and make a ZigBee V3.0 solution (requiring a ZigBee gateway for OpenHAB). With my new Philips Hue HW version and the new SW firmware upgrade. It is claiming to support ZigBee V3.0 devices which includes also Temp/Hum sensors.

                    I'm also looking forward for the solution from berkseo where he does exactly that with and nRF52, but that seem to take some time to make it available.
                    https://www.openhardware.io/view/629/Temperature-and-humidity-sensorverNRF52832E-Ink-display#tabs-instructions

                    NeverDieN Offline
                    NeverDieN Offline
                    NeverDie
                    Hero Member
                    wrote on last edited by NeverDie
                    #114

                    @heinzv Fair enough.

                    Probably soon I'll take a crack at doing an OTA DFU with an nRF52840. The good news is that Nordic is reasonably responsive to questions with about a 24 hour turnaround, so that means any sticking points should be resolvable. Failing that I may try writing my own basic OTA uploader.

                    1 Reply Last reply
                    0
                    • H heinzv

                      @nagelc Thanks for your response and trying to get me further.
                      I'm trying to get you as much infos as possible:
                      I made a couple of screenshots and picture of my environment. Maybe that helps to trace down to the problem.
                      I followed exactly the instructions from sanseeps Arduino/nRF5 configuration/installation.
                      Uploading the bkink example with the ST-Link V2 works, but there is no serial print, no debug, thus I'm trying the BMP way.

                      Here some setttings from my Arduino IDE (Tools section)
                      0_1538340519482_Arduino_nRF52_Tools_1.jpg
                      0_1538340524669_Arduino_nRF52_Tools_2.jpg

                      Here are my different BMP modules I have used
                      0_1538341046798_BMP-Modules.jpg
                      and the COM devices in Win 10
                      0_1538341107671_WIn10_COM_devices.jpg
                      I have tried all kind of driver (using Zadik 2.4), but WInUSB, lisbusbK, libusb ... they all create USB devices only but no COM devices, which Arduino IDE does not "like") only the usbser driver gives me COM devices

                      and the target device I'm using (which works, when I load the sketch with the ST-Link and select ST-Link in Arduino IDE)
                      0_1538341217241_nRF52832_Modul.jpg

                      nagelcN Offline
                      nagelcN Offline
                      nagelc
                      wrote on last edited by
                      #115

                      @heinzv For Softdevice, pick None. MySensors doesn't use the Softdevices and I don't think you want it for Generic NRF52 either.
                      The Low Frequency Clock depends on your board. If it has an external crystal outside the NRF 52, use Crystal Oscillator. Otherwise pick RC Oscillator to use the internal oscillator.
                      Your BMP ports look correct. In your setup, 58 for the programmer. Use the UART port , 51, to listen to serial debug.
                      The Black Magic Firmware Upgrade is for use with DFU Util to upgrade the firmware on the probe. I'm not sure what the Trace Capture is.

                      H 1 Reply Last reply
                      0
                      • nagelcN nagelc

                        @heinzv For Softdevice, pick None. MySensors doesn't use the Softdevices and I don't think you want it for Generic NRF52 either.
                        The Low Frequency Clock depends on your board. If it has an external crystal outside the NRF 52, use Crystal Oscillator. Otherwise pick RC Oscillator to use the internal oscillator.
                        Your BMP ports look correct. In your setup, 58 for the programmer. Use the UART port , 51, to listen to serial debug.
                        The Black Magic Firmware Upgrade is for use with DFU Util to upgrade the firmware on the probe. I'm not sure what the Trace Capture is.

                        H Offline
                        H Offline
                        heinzv
                        wrote on last edited by heinzv
                        #116

                        @nagelc I have tested both w/ and w/o softdevice, it doesnt make a difference but yes I'll remove it again.
                        My boards (the E73 module) have an external 32kHz crystal osci for RTC.
                        In Arduino, you can only select one port. If COM58 is set (for the programmer) then it would open the serial monitor also on that port. However I have tried to use port 51 with another terminal (putty) and it does not connect (I've tried with different baud rates).
                        I'm not sure but I think (and read) that the second port is only for the SW update of the BMP and not for debugging. Debugging is most likely also on port 58 but for the GDB and not for Arduino, but if it is used (initiated) via Arduino, I could not connect to GDB with a command terminal, so I think the programm has to be started with the command windows and GDB. I've also tested that from that direction and was also not succesfull (I spnt many hours with Google and BMP docu and GDB).
                        I also don't know how to use the non COM (USB only) devices like the "Trace Capture" as thery are not visible/offered in Arduiono IDE.

                        You're using BMP with Arduino IDE? How are you doing the serial output?
                        How can you used two different ports in Arduino (there is only one port setting)?

                        nagelcN 1 Reply Last reply
                        0
                        • H heinzv

                          @nagelc I have tested both w/ and w/o softdevice, it doesnt make a difference but yes I'll remove it again.
                          My boards (the E73 module) have an external 32kHz crystal osci for RTC.
                          In Arduino, you can only select one port. If COM58 is set (for the programmer) then it would open the serial monitor also on that port. However I have tried to use port 51 with another terminal (putty) and it does not connect (I've tried with different baud rates).
                          I'm not sure but I think (and read) that the second port is only for the SW update of the BMP and not for debugging. Debugging is most likely also on port 58 but for the GDB and not for Arduino, but if it is used (initiated) via Arduino, I could not connect to GDB with a command terminal, so I think the programm has to be started with the command windows and GDB. I've also tested that from that direction and was also not succesfull (I spnt many hours with Google and BMP docu and GDB).
                          I also don't know how to use the non COM (USB only) devices like the "Trace Capture" as thery are not visible/offered in Arduiono IDE.

                          You're using BMP with Arduino IDE? How are you doing the serial output?
                          How can you used two different ports in Arduino (there is only one port setting)?

                          nagelcN Offline
                          nagelcN Offline
                          nagelc
                          wrote on last edited by nagelc
                          #117

                          @heinzv Yes. I'm using with Arduino IDE, but I connect a terminal program (TerraTerm) to the UART com port. You need to do more setup to get the serial out from NRF52832. The easiest way is to use the MyBoardNRF5 board type to select a pin to be TX. But that is a bit much for a blink sketch.
                          There is yet another usb driver for the Trace and Firmware Update ports. I forget how that is loaded (zadig I think), but you can safely ignore it.
                          Seems like your setup should just work uploading the sketch on your COM58.

                          For the GDB connection. There is a syntax difference for ports higher than 9. Try this. I had it in my notes, but haven't tried it since my ports are less than 9.

                          "target extended-remote \.\com58"

                          H 1 Reply Last reply
                          0
                          • nagelcN nagelc

                            @heinzv Yes. I'm using with Arduino IDE, but I connect a terminal program (TerraTerm) to the UART com port. You need to do more setup to get the serial out from NRF52832. The easiest way is to use the MyBoardNRF5 board type to select a pin to be TX. But that is a bit much for a blink sketch.
                            There is yet another usb driver for the Trace and Firmware Update ports. I forget how that is loaded (zadig I think), but you can safely ignore it.
                            Seems like your setup should just work uploading the sketch on your COM58.

                            For the GDB connection. There is a syntax difference for ports higher than 9. Try this. I had it in my notes, but haven't tried it since my ports are less than 9.

                            "target extended-remote \.\com58"

                            H Offline
                            H Offline
                            heinzv
                            wrote on last edited by heinzv
                            #118

                            @nagelc So everything works now with the BMP using the MyBoardNRF5. At least it supports the nRF52832 (if I'm lucky also the nRF52840) but I started with my barebone 832 modules.
                            So it upload the sketch and it does also reset and start.
                            I could also do the connection to the second serial port now with Terra Term and get the Serial.println. Cool.
                            The secret was, that I created another BMP for my blackpills (I did a couple of tweaks) and connect now the HW serial of the nRF52 to the BMP serial (UART2) and it forwards it via the USB of the BMP to the COM port.

                            The output looks now like yours when I do an upload:
                            WARNING: Spurious .ci folder in 'MySensors' library
                            WARNING: Spurious .mystools folder in 'MySensors' library
                            Build options changed, rebuilding all
                            Sketch uses 3720 bytes (0%) of program storage space. Maximum is 524288 bytes.
                            Remote debugging using \.\COM58
                            Target voltage: unknown
                            Available Targets:
                            No. Att Driver
                            1 Nordic nRF52
                            2 Nordic nRF52 Access Port
                            Attaching to Remote target
                            0x00000ae0 in ?? ()
                            Reading symbols from nRF52832_Blink.ino.elf...done.
                            Loading section .text, size 0xe88 lma 0x0
                            Loading section .ARM.exidx, size 0x8 lma 0xe88
                            Loading section .data, size 0x74 lma 0xe90
                            Start address 0x5f8, load size 3844
                            Transfer rate: 27 KB/sec, 640 bytes/write.
                            Temporary breakpoint 1 at 0xbc4: file D:\mcdev\arduino\portable\packages\sandeepmistry\hardware\nRF5\0.6.0\cores\nRF5\main.cpp, line 28.
                            Starting program: C:\Users\internet\AppData\Local\Temp\arduino_build_913185\nRF52832_Blink.ino.elf
                            Note: automatically using hardware breakpoints for read-only addresses.

                            Temporary breakpoint 1, main ()
                            at D:\mcdev\arduino\portable\packages\sandeepmistry\hardware\nRF5\0.6.0\cores\nRF5\main.cpp:28
                            28 {

                            Program complete!

                            Here is the picture of my BMP and the nRF module:
                            0_1538432250904_BMP-and-nRF52.jpg

                            1 Reply Last reply
                            1
                            • H Offline
                              H Offline
                              heinzv
                              wrote on last edited by heinzv
                              #119

                              My nRF52832 moduls with MySensors in nRF24 mode seem to work, I have to start another node acting als Gateway and see if they communicate and what distance can be reached in the nRF24 mode.


                              | / |_ / | ___ _ __ ___ ___ _ __ ___
                              | |/| | | | _
                              \ / _ \ _ \/ __|/ _ \|
                              _/ __|
                              | | | | |
                              | || | / | | _ \ _ | | _
                              |
                              | |
                              |_
                              , |/ ___|| ||/_/|| |/
                              |
                              __/ 2.3.1-beta

                              24 MCO:BGN:INIT NODE,CP=RNNNN---,VER=2.3.1-beta
                              28 TSM:INIT
                              30 TSF:WUR:MS=0
                              31 TSM:INIT:TSP OK
                              33 TSM:FPAR
                              40 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                              2048 !TSM:FPAR:NO REPLY
                              2050 TSM:FPAR
                              2057 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                              4064 !TSM:FPAR:NO REPLY
                              4066 TSM:FPAR
                              4073 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                              6081 !TSM:FPAR:NO REPLY
                              6083 TSM:FPAR
                              6090 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                              8098 !TSM:FPAR:FAIL
                              8099 TSM:FAIL:CNT=1
                              8101 TSM:FAIL:DIS
                              8103 TSF:TDI:TPD
                              18105 TSM:FAIL:RE-INIT
                              18107 TSM:INIT
                              18108 TSM:INIT:TSP OK
                              18110 TSM:FPAR
                              18117 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                              20125 !TSM:FPAR:NO REPLY
                              20127 TSM:FPAR
                              20134 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                              22142 !TSM:FPAR:NO REPLY
                              22144 TSM:FPAR
                              22151 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                              24159 !TSM:FPAR:NO REPLY
                              24161 TSM:FPAR
                              24168 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                              26176 !TSM:FPAR:FAIL
                              26177 TSM:FAIL:CNT=2
                              26179 TSM:FAIL:DIS
                              26181 TSF:TDI:TPD

                              1 Reply Last reply
                              0
                              • NeverDieN Offline
                                NeverDieN Offline
                                NeverDie
                                Hero Member
                                wrote on last edited by NeverDie
                                #120

                                I built the micropython firmware for running on the nRF52840:

                                Here's the proof:

                                MicroPython v1.9.4-623-g34af10d2e on 2018-10-05; PCA10056 with NRF52840
                                Type "help()" for more information.
                                >>> 1+1
                                2
                                >>>
                                

                                You can download it from here: https://forum.micropython.org/viewtopic.php?f=2&t=5348

                                1 Reply Last reply
                                0
                                • NeverDieN Offline
                                  NeverDieN Offline
                                  NeverDie
                                  Hero Member
                                  wrote on last edited by NeverDie
                                  #121

                                  So, the idea for doing OTA code updates is simple enough: you transmit each line of code and the target assembles it into a string. Then the target executes the string, which updates the code on the target. QED

                                  Here's a notional example of what I mean:

                                  >>> simpleCode="def j(x): return x**2"
                                  >>> simpleCode
                                  'def j(x): return x**2'
                                  >>> exec(simpleCode)
                                  >>> j(5)
                                  25
                                  >>>
                                  

                                  You can use whatever radio transport you want, including Nordic's "proprietary radio" that we are all familiar with. There's no reliance on bluetooth or Nordic's DFU. :)

                                  1 Reply Last reply
                                  1
                                  • H Offline
                                    H Offline
                                    heinzv
                                    wrote on last edited by
                                    #122

                                    @NeverDie great job! I'll definity try it on my holyiot bare modules, but I'm still fighting with the flashing via either the Nordic DK and/or ST-Link v2SO far I was not successfull (I only got it to run with Arduino IDE and BMP, but that is not usable in that case). DK seem not recognize my external nRF52840 and the ST-Link wants some address ranges so I'm trying to get it run with openocd, but that also returns errors. So I'm stuck and wasting many evenings/nights (with Google).

                                    NeverDieN 1 Reply Last reply
                                    0
                                    • H heinzv

                                      @NeverDie great job! I'll definity try it on my holyiot bare modules, but I'm still fighting with the flashing via either the Nordic DK and/or ST-Link v2SO far I was not successfull (I only got it to run with Arduino IDE and BMP, but that is not usable in that case). DK seem not recognize my external nRF52840 and the ST-Link wants some address ranges so I'm trying to get it run with openocd, but that also returns errors. So I'm stuck and wasting many evenings/nights (with Google).

                                      NeverDieN Offline
                                      NeverDieN Offline
                                      NeverDie
                                      Hero Member
                                      wrote on last edited by NeverDie
                                      #123

                                      @heinzv Using the DK should be easy. If you want to post how you're wiring your connections to the target, maybe I could help you identify what mistake you are making. Or, if you prefer, you could post to the Nordic support forum, as they would be obligated to help since it's a Nordic product. Or, better yet, do both, because then you'll at least get the ball rolling with Nordic in case you have a defective DK (unlikely, but who knows).

                                      1 Reply Last reply
                                      0
                                      • H Offline
                                        H Offline
                                        heinzv
                                        wrote on last edited by heinzv
                                        #124

                                        @NeverDie thanks for the hints/offer:
                                        I have connected to the nRF52840 DK via the P20 connector
                                        Here is the wiring setup

                                        VDD---> VTG of P20 in DK board
                                        SWDIO--> SWDIO of external board
                                        SWDCLK-->SWDCLK of external Baord
                                        GND DETECT--> GND of external Board
                                        GND--> GND of external baord.

                                        NeverDieN 1 Reply Last reply
                                        0
                                        • H heinzv

                                          @NeverDie thanks for the hints/offer:
                                          I have connected to the nRF52840 DK via the P20 connector
                                          Here is the wiring setup

                                          VDD---> VTG of P20 in DK board
                                          SWDIO--> SWDIO of external board
                                          SWDCLK-->SWDCLK of external Baord
                                          GND DETECT--> GND of external Board
                                          GND--> GND of external baord.

                                          NeverDieN Offline
                                          NeverDieN Offline
                                          NeverDie
                                          Hero Member
                                          wrote on last edited by
                                          #125

                                          @heinzv How is it that you are powering the target?

                                          H 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          15

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular