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. My Project
  3. nRF5 action!

nRF5 action!

Scheduled Pinned Locked Moved My Project
1.9k Posts 49 Posters 631.4k Views 44 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.
  • NeverDieN NeverDie

    Anyone played around with Nordic's nRF52840 dongle? They're $10 each, and a few places have them in stock.
    https://www.nordicsemi.com/eng/Products/nRF52840-Dongle

    Nordic finally has a v1.0 product specification for the nRF52840, not just the silly v0.5 that they had posted for so long. http://infocenter.nordicsemi.com/pdf/nRF52840_PS_v1.0.pdf

    It has 256K RAM and 1MB of flash. I'm having difficulty imagining which applications would require that much of either one. If it were free, that would be great, but I'm afraid the large RAM becomes an energy drain. For instance, it consumes 3.16µA with System ON, full 256 kB RAM retention, and wake on RTC.

    On the other hand, it consumes 0.4uA of current if System OFF, no RAM retention, and wake on reset

    It consumes 16.4ma if transmitting at full power (8dBm) with DC-DC engaged.

    If compared to LoRa, it's going to lose on range. However, the question is: will it be good enough in a large or otherwise difficult home environment? The specs say it should be better than either nRF24L01 and nRF52832, which seem better suited to smaller dwellings. Maybe (?) the question can be answered with a couple of dongles.

    U Offline
    U Offline
    Uhrheber
    wrote on last edited by
    #1667

    @neverdie said in nRF5 action!:

    It has 256K RAM and 1MB of flash. I'm having difficulty imagining which applications would require that much of either one.

    Bluetooth 5

    1 Reply Last reply
    0
    • JokgiJ Jokgi

      @scalz 0_1526314656566_nRF52840-dongle-smaller.jpg
      I would be interested in any range testing in regard to this dongle. For ground it has whatever it is that it is plugged into. (PC, SBC, USB extention cable, etc) There will be a nRF52840 based dongle out soon. See picture above. This dongle will need to be programed over the SWD lines. No Segger on board this one..!

      U Offline
      U Offline
      Uhrheber
      wrote on last edited by
      #1668

      @jokgi Someone said 800 to 1000m.
      https://www.reddit.com/r/electronics/comments/9b3xhv/a_simple_nrf52840_breakout_board/

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

        I suppose plugging the Nordic dongle into a Raspberry Pi via USB would potentially make a powerful gateway with a very easy setup. :)

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

          Anyone know if the dongle has a USB bootloader on it so that you can upload a sketch over the USB?

          [Edit: apparently, the answer is yes: http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fdevelopment%2Fnrf52840_dongle%2Fgetting_started.html ]

          1 Reply Last reply
          2
          • alowhumA Offline
            alowhumA Offline
            alowhum
            Plugin Developer
            wrote on last edited by alowhum
            #1671

            A plug and play dongle.. now there's something. A controller could theoretically take care of all the work - a user just has to plugin the dongle and it flashes it, installs mysensors..

            I read it can also support Zigbee and Bluetooth. Could it support Zigbee, bluetooth and MySensors at the same time?

            Wow, plug that into a Pi Zero and you have a capable controller for a smart home.

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

              This looks like an Arduino-nano/pro-mini style device with an NRF51:

              https://www.aliexpress.com/item/Nrf51822-LIS3DH-Bluetooth-Module-CJMCU-8223-Bluetooth-acceleration-module/32821873481.html

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

                Maybe this is old news, but it looks like Adafruit put together a nice board and software for the nRF2832. https://www.adafruit.com/product/3406

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

                  I'd like to take a crack at prograamming the nRF52840. Has anyone here tried it? I'm not sure whether the software support for it is in place yet or not. How best to get started with it? As far as compiling and uploading code goes, do I just treat it the same as an nRF2832?

                  H 1 Reply Last reply
                  0
                  • NeverDieN NeverDie

                    I'd like to take a crack at prograamming the nRF52840. Has anyone here tried it? I'm not sure whether the software support for it is in place yet or not. How best to get started with it? As far as compiling and uploading code goes, do I just treat it the same as an nRF2832?

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

                    @neverdie I have ordered 10x nRF52832 and 2x nRF52840 from EBYTE (E73-xxxB/C). I will join you once I got them (they are on they way since 2 weeks). I'll also work together with ransyer to get new PCB's (the last we maybe together are for the ESP32).
                    I'm curious what distance I can get indoor with the BLE 4.2/5.0 (no extra radio) and if required, I will combine it with a LoRA RFM95 (that is also what our PCB's is made for RFM69/95 and CC1101).
                    I'm still working on the sensor with the 1,54" ePaper (where the ATMEGA328p is lost with its 32kB flash and even worse with the 2k RAM)

                    https://de.aliexpress.com/item/CDEBYTE-E73-2G4M04S-BLE-4-2-5-0-long-distance-100m-2-4GHz-SMD-ARM-Core/32820692238.html?spm=a2g0s.9042311.0.0.60a94c4dZdIUhQ

                    this one will be tricky to solder (I'm trying to get something better to solder)
                    https://de.aliexpress.com/item/NRF52840-Bluetooth-5-0-240-mhz-RF-Transceiver-CDSENET-E73-2G4M08S1C-8dbm-Keramik-Antenne-BLE-4/32906661666.html?spm=a2g0s.9042311.0.0.1d174c4dKW9mAo

                    NeverDieN 1 Reply Last reply
                    1
                    • H heinzv

                      @neverdie I have ordered 10x nRF52832 and 2x nRF52840 from EBYTE (E73-xxxB/C). I will join you once I got them (they are on they way since 2 weeks). I'll also work together with ransyer to get new PCB's (the last we maybe together are for the ESP32).
                      I'm curious what distance I can get indoor with the BLE 4.2/5.0 (no extra radio) and if required, I will combine it with a LoRA RFM95 (that is also what our PCB's is made for RFM69/95 and CC1101).
                      I'm still working on the sensor with the 1,54" ePaper (where the ATMEGA328p is lost with its 32kB flash and even worse with the 2k RAM)

                      https://de.aliexpress.com/item/CDEBYTE-E73-2G4M04S-BLE-4-2-5-0-long-distance-100m-2-4GHz-SMD-ARM-Core/32820692238.html?spm=a2g0s.9042311.0.0.60a94c4dZdIUhQ

                      this one will be tricky to solder (I'm trying to get something better to solder)
                      https://de.aliexpress.com/item/NRF52840-Bluetooth-5-0-240-mhz-RF-Transceiver-CDSENET-E73-2G4M08S1C-8dbm-Keramik-Antenne-BLE-4/32906661666.html?spm=a2g0s.9042311.0.0.1d174c4dKW9mAo

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

                      @heinzv Well, great, the more the merrier. :)

                      1 Reply Last reply
                      0
                      • Nca78N Offline
                        Nca78N Offline
                        Nca78
                        Hardware Contributor
                        wrote on last edited by
                        #1677

                        @heinzv said in nRF5 action!:

                        this one will be tricky to solder (I'm trying to get something better to solder)
                        https://de.aliexpress.com/item/NRF52840-Bluetooth-5-0-240-mhz-RF-Transceiver-CDSENET-E73-2G4M08S1C-8dbm-Keramik-Antenne-BLE-4/32906661666.html?spm=a2g0s.9042311.0.0.1d174c4dKW9mAo

                        Already out of stock it seems, it's not possible to order them any more.
                        They seem to have both 32K crystal and inductances for DCDC, that's pretty convenient.

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

                          The answer I got on the Sandeep library made it sound rather iffy as to whether it would work for the nRF52840: https://github.com/sandeepmistry/arduino-nRF5/issues/310
                          or that the coverage might be rather spotty.

                          So, I think I may give mbed a try for programming the nRF52840, because mbed claims to support the nRF52840-DK. Also, I found what seems like a nice and simple youtube tutorial series for how to use mbed: https://www.youtube.com/watch?v=kP_zHbC_5eM

                          If I have success with mbed, I may circle back to the Sandeep library and the mysensors implementation, but I'd like to start with something solid, and it appears that mbed might be.

                          The other nice thing is that it appears mbed provides an abstraction layer which makes easy to program a whole range of different mcu's, incuding many of the stm32's.

                          Anyone here familiar with or tried mbed before?

                          mfalkviddM 1 Reply Last reply
                          1
                          • NeverDieN NeverDie

                            The answer I got on the Sandeep library made it sound rather iffy as to whether it would work for the nRF52840: https://github.com/sandeepmistry/arduino-nRF5/issues/310
                            or that the coverage might be rather spotty.

                            So, I think I may give mbed a try for programming the nRF52840, because mbed claims to support the nRF52840-DK. Also, I found what seems like a nice and simple youtube tutorial series for how to use mbed: https://www.youtube.com/watch?v=kP_zHbC_5eM

                            If I have success with mbed, I may circle back to the Sandeep library and the mysensors implementation, but I'd like to start with something solid, and it appears that mbed might be.

                            The other nice thing is that it appears mbed provides an abstraction layer which makes easy to program a whole range of different mcu's, incuding many of the stm32's.

                            Anyone here familiar with or tried mbed before?

                            mfalkviddM Offline
                            mfalkviddM Offline
                            mfalkvidd
                            Mod
                            wrote on last edited by mfalkvidd
                            #1679

                            @neverdie I tried mbed briefly in a workshop on LoRaWAN FOTA. With the workshop instructions it was easy to use, but my impression is that Arduino has a much larger ecosystem with more libraries.

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

                              Update:
                              I received some nRF52840 dongles. I confirmed with Nordic that the recommended way to program them over USB is to use nRF Connect v2.5.0 which contains the nRF Programmer v1.0.0-experimental.5 application. I tried that, but I may have somehow bricked my first dongle by not pressing reset first before the upload. Either that, or because my simple program didn't initialize the USB, maybe it can't be found for that reason (I suspect so).

                              Luckily, I live not too far from Mouser. I should be receiving the nRF52840-DK today, so I figure that way I can unbrick the dongle.

                              Yesterday I played around with mbed on an nucleo board. Seems to work well (no bricking). Unfortunately, the dongle isn't an mbed device, so the methods above are required unless you program it with a DK or similar. The good news, though, is that the DK is an mbed board, so hopefully that will be smooth sailing. It turns out that USB is built into the nRF52840 chip, so it doesn't require a separate chip like a CP2102 to communicate over USB. I guess that can be good or bad depending on how your write your code.

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

                                By the way, the nRF52840-DK is even easier to program thant the nRF52832-DK. When you attach it to your PC, it shows as an additional drive in your directory. Any hex file that you copy to that drive gets uploaded and programmed onto the nRF52840. Easy. :)

                                mfalkviddM Nca78N 2 Replies Last reply
                                0
                                • NeverDieN NeverDie

                                  By the way, the nRF52840-DK is even easier to program thant the nRF52832-DK. When you attach it to your PC, it shows as an additional drive in your directory. Any hex file that you copy to that drive gets uploaded and programmed onto the nRF52840. Easy. :)

                                  mfalkviddM Offline
                                  mfalkviddM Offline
                                  mfalkvidd
                                  Mod
                                  wrote on last edited by
                                  #1682

                                  @neverdie that’s how we programmed the device in the workshop as well. Very neat.

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

                                    Luckily, it looks as though I can manually set any GPIO pin I want as the UART TX pin for debugging output from an nRF52840 by setting PSEL.TXD. That means I can probably re-use my PCB's from nRF52832 for the nRF52840 with just a few software adjustments even if I use mbed without the convenient pin mapping afforded by the mysensors code. So, this is starting to look more and more feasible. :)

                                    1 Reply Last reply
                                    1
                                    • S Offline
                                      S Offline
                                      smilvert
                                      wrote on last edited by
                                      #1684

                                      @NeverDie How do I know which nRF52832 board I should use?

                                      Does the CFsunbird-nRF52832 has the DC/DC inductors?
                                      Or can I use nRF51822?

                                      Want a cheap chip, easy to solder (Have a couple of Ebyte e-73 but they take some time to solder :( and if I understand correctly, the DC / DC inductors are missing?)

                                      NeverDieN 1 Reply Last reply
                                      0
                                      • S smilvert

                                        @NeverDie How do I know which nRF52832 board I should use?

                                        Does the CFsunbird-nRF52832 has the DC/DC inductors?
                                        Or can I use nRF51822?

                                        Want a cheap chip, easy to solder (Have a couple of Ebyte e-73 but they take some time to solder :( and if I understand correctly, the DC / DC inductors are missing?)

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

                                        @smilvert It really depends on what you want to do, but if you want a blanket recommendation, I would recommend the Fanstel modules. For one thing, they're FCC approved, and most of what you'll find on aliexpress isn't and probably wouldn't pass if it tried.

                                        Also, the Fanstel F series has superior range compared to anything I've ever found on Aliexpress.

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

                                          Even better, it turns out mbed solves the problem of handling multiple different interrupts, which no one here could figure out with the sandeep build. With mbed, it looks pretty simple in fact:

                                          InterruptIn button1(P0_11);//(USER_BUTTON nRF52840 DK);
                                          InterruptIn button2(P0_12);
                                          InterruptIn button3(P0_24);
                                          InterruptIn button4(P0_25);
                                          
                                          void button1_pressed()
                                          {
                                            led1 = led2 =led3 =led4 = 1;
                                            led1 = 0;
                                            
                                          }
                                          
                                          void button1_released()
                                          {
                                            led1 = led2 =led3 =led4 = 1;
                                            //led1 = 0;
                                          }
                                          
                                          void button2_pressed()
                                          {
                                            led1 = led2 =led3 =led4 = 1;
                                            led2 = 0;
                                            
                                          }
                                          
                                          void button2_released()
                                          {
                                            led1 = led2 =led3 =led4 = 1;
                                            //led1 = 0;
                                          }
                                          
                                          void button3_pressed()
                                          {
                                            led1 = led2 =led3 =led4 = 1;
                                            led3 = 0;
                                           // wait(0.1);
                                          }
                                          
                                          void button3_released()
                                          {
                                            led1 = led2 =led3 =led4 = 1;
                                            //led1 = 0;
                                          }
                                          
                                          void button4_pressed()
                                          {
                                            led1 = led2 =led3 =led4 = 1;
                                            led4 = 0;
                                            
                                          }
                                          
                                          void button4_released()
                                          {
                                            led1 = led2 =led3 =led4 = 1;
                                            //led1 = 0;
                                          }
                                          
                                          int main() {
                                              led1 = led2 =led3 =led4 = 0;
                                              
                                              button1.fall(&button1_pressed);
                                              button1.rise(&button1_released);
                                              
                                              button2.fall(&button2_pressed);
                                              button2.rise(&button2_released);
                                          
                                              button3.fall(&button3_pressed);
                                              button3.rise(&button3_released);
                                          
                                              button4.fall(&button4_pressed);
                                              button4.rise(&button4_released);
                                          
                                             while (true) {}
                                          }
                                          
                                          1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          18

                                          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