Skip to content
  • 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!
  • Getting Started
  • Controller
  • Build
  • Hardware
  • Download/API
  • Forum
  • Store

nRF5 action!

Scheduled Pinned Locked Moved My Project
1.9k Posts 49 Posters 630.8k 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.
  • rmtuckerR rmtucker

    @NeverDie
    My Mistake but his results were impressive don't you think?
    Anyway i was just going to use 4f because i can get one.
    How are you charging your Cap?

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

    @rmtucker said in nRF5 Bluetooth action!:

    How are you charging your Cap?

    6v mini solar panel run through diode and a 2.7v ldo. That works for me indoors even 15-20 feet away from a window.

    rmtuckerR 1 Reply Last reply
    0
    • NeverDieN NeverDie

      @rmtucker said in nRF5 Bluetooth action!:

      How are you charging your Cap?

      6v mini solar panel run through diode and a 2.7v ldo. That works for me indoors even 15-20 feet away from a window.

      rmtuckerR Offline
      rmtuckerR Offline
      rmtucker
      wrote on last edited by
      #678

      @NeverDie
      Hmm the only 2.7v ldo i can see are surface mount in the uk.
      Thats a no no for me.

      NeverDieN 1 Reply Last reply
      0
      • rmtuckerR rmtucker

        @NeverDie
        Hmm the only 2.7v ldo i can see are surface mount in the uk.
        Thats a no no for me.

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

        @rmtucker said in nRF5 Bluetooth action!:

        @NeverDie
        Hmm the only 2.7v ldo i can see are surface mount in the uk.
        Thats a no no for me.

        Yeah, I'm using surface mount, but I solder it on manually the old fashioned way. Not all surface mount are difficult just because they're SMD. Simply avoid the ones with too small a pitch.

        rmtuckerR 1 Reply Last reply
        0
        • NeverDieN NeverDie

          @rmtucker said in nRF5 Bluetooth action!:

          @NeverDie
          Hmm the only 2.7v ldo i can see are surface mount in the uk.
          Thats a no no for me.

          Yeah, I'm using surface mount, but I solder it on manually the old fashioned way. Not all surface mount are difficult just because they're SMD. Simply avoid the ones with too small a pitch.

          rmtuckerR Offline
          rmtuckerR Offline
          rmtucker
          wrote on last edited by
          #680

          @NeverDie
          Part number?

          NeverDieN 1 Reply Last reply
          0
          • rmtuckerR rmtucker

            @NeverDie
            Part number?

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

            @rmtucker said in nRF5 Bluetooth action!:

            @NeverDie
            Part number?

            http://datasheet.sii-ic.com/en/voltage_regulator/S1313_E.pdf

            https://www.digikey.com/product-detail/en/sii-semiconductor-corporation/S-1313D27-M5T1U3/1662-2523-1-ND/7228815

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

              Where is the sleep(...) function defined for the nrf5? I've looked, but I can't seem to find which library it is in. Anyone know?

              d00616D 1 Reply Last reply
              0
              • NeverDieN NeverDie

                Where is the sleep(...) function defined for the nrf5? I've looked, but I can't seem to find which library it is in. Anyone know?

                d00616D Offline
                d00616D Offline
                d00616
                Contest Winner
                wrote on last edited by
                #683

                @NeverDie said in nRF5 Bluetooth action!:

                Where is the sleep(...) function defined for the nrf5? I've looked, but I can't seem to find which library it is in. Anyone know?

                It's defined in "hal/architecture/MyHwNRF5.cpp"

                1 Reply Last reply
                1
                • T Offline
                  T Offline
                  Toyman
                  wrote on last edited by
                  #684

                  If anybody need cheap NRF52 DK, Arrow has them for ca. $30 with free courier shipping!

                  Nca78N 1 Reply Last reply
                  1
                  • T Toyman

                    If anybody need cheap NRF52 DK, Arrow has them for ca. $30 with free courier shipping!

                    Nca78N Offline
                    Nca78N Offline
                    Nca78
                    Hardware Contributor
                    wrote on last edited by
                    #685

                    @Toyman said in nRF5 Bluetooth action!:

                    If anybody need cheap NRF52 DK, Arrow has them for ca. $30 with free courier shipping!

                    10% discount at the moment so 29.48$. Given the price per unit of a nrf52 if you buy in small numbers, it's worth buying it just for the extra chips provided :D

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

                      Speaking as a noob myself, I think the DK's are great for noobs, especially when first getting started. I don't have as big a need for them now, but they definitely helped in the beginning. They pretty much "just work" without a lot of fuss.

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

                        I'm presently playing around with the radioHead library. I can:

                        1. Send and receive backets between two nRF5 modules.
                          or
                        2. Send and receive packets between two nRF24L01 modules.

                        However, at present, I can't send or receive packets successfully between an nRF24 and an nRF5 module, even though it appears they share the same network ID, the same datarate, and the same channel.

                        I'm guessing there exists some kind of compatability mode (?) that would bridge this gap, but I haven't found it. :(

                        1 Reply Last reply
                        0
                        • scalzS Offline
                          scalzS Offline
                          scalz
                          Hardware Contributor
                          wrote on last edited by scalz
                          #688

                          @NeverDie
                          d00616 added the support of NRF5 + ESB to MySensors.
                          Radiohead lib doesn't handle this mode (explained in the description of his NRF51class).

                          NeverDieN 1 Reply Last reply
                          0
                          • scalzS scalz

                            @NeverDie
                            d00616 added the support of NRF5 + ESB to MySensors.
                            Radiohead lib doesn't handle this mode (explained in the description of his NRF51class).

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

                            Yeah, MySensors can definitely do it. Nice work @d00616 !

                            It turns out that with RadioHead, I am almost able to send packets from an nRF24L01 to an nRF5 module: it's just that the packets arrive as garbage. So, the packet and/or frame formatting must be different, but indeed the network ID's are matching or else I wouldn't be receiving anything at all.

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

                              I found the smoking gun in the radiohead documentation. Turns out RadioHead does indeed use a different packet format for the nRF5 that is "NOT compatible with the one used by RH_NRF24 and the nRF24L01 product specification, mainly because the nRF24 only supports 6 bits of message length." :(

                              Well, that stinks.

                              TerrenceT 1 Reply Last reply
                              0
                              • NeverDieN NeverDie

                                I found the smoking gun in the radiohead documentation. Turns out RadioHead does indeed use a different packet format for the nRF5 that is "NOT compatible with the one used by RH_NRF24 and the nRF24L01 product specification, mainly because the nRF24 only supports 6 bits of message length." :(

                                Well, that stinks.

                                TerrenceT Offline
                                TerrenceT Offline
                                Terrence
                                wrote on last edited by
                                #691

                                @NeverDie Ya, that really sucks. It would have been great to mix and match.

                                1 Reply Last reply
                                0
                                • NeverDieN NeverDie

                                  Yeah, MySensors can definitely do it. Nice work @d00616 !

                                  It turns out that with RadioHead, I am almost able to send packets from an nRF24L01 to an nRF5 module: it's just that the packets arrive as garbage. So, the packet and/or frame formatting must be different, but indeed the network ID's are matching or else I wouldn't be receiving anything at all.

                                  d00616D Offline
                                  d00616D Offline
                                  d00616
                                  Contest Winner
                                  wrote on last edited by
                                  #692

                                  @NeverDie said in nRF5 Bluetooth action!:

                                  Yeah, MySensors can definitely do it. Nice work @d00616 !
                                  Thanks.

                                  It turns out that with RadioHead, I am almost able to send packets from an nRF24L01 to an nRF5 module: it's just that the packets arrive as garbage. So, the packet and/or frame formatting must be different, but indeed the network ID's are matching or else I wouldn't be receiving anything at all.

                                  The ID's are reversed between nRF5 and nRF24. Look into the code how to reverse the ID's.

                                  @NeverDie said in nRF5 Bluetooth action!:

                                  I found the smoking gun in the radiohead documentation. Turns out RadioHead does indeed use a different packet format for the nRF5 that is "NOT compatible with the one used by RH_NRF24 and the nRF24L01 product specification, mainly because the nRF24 only supports 6 bits of message length."

                                  You have to choose the correct number of bits for length, S0 and S1. I have played a while to find out the correct configuration. When ACK is enabled you have to do a lot of timing work.

                                  @Terrence said in nRF5 Bluetooth action!:

                                  @NeverDie Ya, that really sucks. It would have been great to mix and match.

                                  At the moment I have no opinion to the "GPL or commercial" license of Readiohead. So I have no plans to port my Code .

                                  The Nordic SDK has an ESB library supporting the nRF24 mode. IMHO Starting with SDK 13 the license is more Open Source friendly.

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

                                    I'm realizing I can live with it. It just means I need to add a separate nRF24 gateway if I want to use nRF24's. I'm already adding separate gateways to support RFM69's and LoRa's, so, actually, it's no big deal.

                                    Meanwhile, I've found that the RadioHead and the MySensors libraries are at least minimally compatible. So, presently I'm using RadioHead for my low power transmissions, but I'm using the sleep(...) function from MySensors to sleep the nRF52 and wake it up. :)

                                    The only weirdness I'm noticing is that immediately after sending the very first packet in this configuration, there's a mysterious several second delay that occurs before the code continues. However, after the initial hiccup, everything appears to run exactly as fast as it should. I have no clue as to what is causing that initial delay though. It doesn't happen if I don't #include the MySensors.h file.

                                    1 Reply Last reply
                                    0
                                    • rmtuckerR Offline
                                      rmtuckerR Offline
                                      rmtucker
                                      wrote on last edited by rmtucker
                                      #694

                                      I was playing with sleep tonight and found the following problem.
                                      when using sleep as below it always returns a figure 252 ms bigger than the sleep figure.
                                      ie sleep 10000 always returns 10251
                                      ie sleep 3000 always returns 3251.
                                      I know the nrf51822 has a 32khz rtc so why is this?

                                        oldmillis = hwMillis();
                                        hwSleep(10000);
                                        newmillis = hwMillis();
                                        Serial.println(newmillis - oldmillis);
                                      
                                      1 Reply Last reply
                                      0
                                      • rmtuckerR Offline
                                        rmtuckerR Offline
                                        rmtucker
                                        wrote on last edited by
                                        #695

                                        Seems it may have something to do with this in the code.

                                        // Calculate sleep time
                                        		// 8 Hz -> max 582.542 hours sleep.
                                        		MY_HW_RTC->PRESCALER = 4095;
                                        		// Set compare register to 1/125ms + 2 to garantee event triggering
                                        		MY_HW_RTC->CC[0] = (ms / 125) + 2;```
                                        1 Reply Last reply
                                        0
                                        • rmtuckerR Offline
                                          rmtuckerR Offline
                                          rmtucker
                                          wrote on last edited by
                                          #696

                                          MY_HW_RTC->CC[0] = (ms / 125) + 2;

                                          It seems the +2 above is adding 250ms.
                                          Why is it done like this???

                                          d00616D 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
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular