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. Development
  3. Help needed to setup a RFM69 & ESP8266 Gateaway on Adafruit Feather Huzzah

Help needed to setup a RFM69 & ESP8266 Gateaway on Adafruit Feather Huzzah

Scheduled Pinned Locked Moved Development
35 Posts 6 Posters 238 Views 4 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.
  • scalzS scalz

    @hlehoux
    unfortunately, lot of devboards have non-optimized gnd plane for RF, especially for subghz (small or splitted gnd plane by routes..).
    Moreover, devboard+dupont cable+external rf module is not ideal.
    With rfm69, you should get a nice range.
    Though, why on one of your picture, antenna seems shorted to gnd??
    Imho I would have chosen something else than esp8266 (esp32??) in your case, but your choice :)

    To check if this is related to your gnd plane and your build is ok, you could also try to hook two straight wires as a dipole antenna to your radio (one to ANA, the other to GND in opposite direction will replace a ground plane). Google for examples, it's simple to try

    electrikE Offline
    electrikE Offline
    electrik
    wrote on last edited by
    #22

    @scalz
    Could you explain how to read these rssi reports, and how to adjust the configuration of the nodes so the reliability goes up?
    I know there is a setting RFM69_TARGET_RSSI_DBM but it is not clear for me how to use this exactly.

    scalzS 1 Reply Last reply
    0
    • electrikE electrik

      The modules correspond to what it should be.
      It looks like your ground is connected to the ANT pin on the picture, on the bottom side of the PCB?

      H Offline
      H Offline
      hlehoux
      wrote on last edited by
      #23

      @electrik Thank you! What you see is the "head" of the pliers i used to hold the RFM69. I will check again my soldering but definitly ANT and ground should not be connected

      1 Reply Last reply
      0
      • scalzS scalz

        @hlehoux
        unfortunately, lot of devboards have non-optimized gnd plane for RF, especially for subghz (small or splitted gnd plane by routes..).
        Moreover, devboard+dupont cable+external rf module is not ideal.
        With rfm69, you should get a nice range.
        Though, why on one of your picture, antenna seems shorted to gnd??
        Imho I would have chosen something else than esp8266 (esp32??) in your case, but your choice :)

        To check if this is related to your gnd plane and your build is ok, you could also try to hook two straight wires as a dipole antenna to your radio (one to ANA, the other to GND in opposite direction will replace a ground plane). Google for examples, it's simple to try

        H Offline
        H Offline
        hlehoux
        wrote on last edited by
        #24

        @scalz Thank you very much!
        Unfortunatly, the antenna seems shorted to ground only because this is the "head" of the pliers i used to take the photo.

        i use esp8266 because i received for free a lot of many adafruit huzzah feathers :-)

        i will try your suggestion to hook two straight wires as a dipole antenna and report if this is better.

        For sure my "development" setup is devboard+dupont cable+external rf and this should not be the final version ; anyway loosing 50% of messages with distance of 1 meter is disappointing.

        hakha4H 1 Reply Last reply
        0
        • H hlehoux

          @scalz Thank you very much!
          Unfortunatly, the antenna seems shorted to ground only because this is the "head" of the pliers i used to take the photo.

          i use esp8266 because i received for free a lot of many adafruit huzzah feathers :-)

          i will try your suggestion to hook two straight wires as a dipole antenna and report if this is better.

          For sure my "development" setup is devboard+dupont cable+external rf and this should not be the final version ; anyway loosing 50% of messages with distance of 1 meter is disappointing.

          hakha4H Offline
          hakha4H Offline
          hakha4
          wrote on last edited by
          #25

          @hlehoux Here is a useful link how to do that: https://learn.sparkfun.com/tutorials/rfm69hcw-hookup-guide/the-antenna

          1 Reply Last reply
          0
          • S Offline
            S Offline
            Sasquatch
            wrote on last edited by
            #26

            try adding :

            #define MY_RFM69_FREQUENCY   RFM69_868MHZ
            

            just in case....

            My first prototype using dupont cables and piece of wire as antenna gave me 500m range with 3 or 4 houses between me and gateway.
            Try old driver, no RSSI reporting, but my whole network runs on old driver.

            @hlehoux 1m range is usually caused by radio type misconfiguration, like running HW radio as low power or other way round. Another possibility is faulty radio.

            1 Reply Last reply
            0
            • H Offline
              H Offline
              hlehoux
              wrote on last edited by
              #27

              Strangely, i also have another bunch of RFM69s that are marked as H but not W. What does it mean ?

              S 1 Reply Last reply
              0
              • H hlehoux

                Strangely, i also have another bunch of RFM69s that are marked as H but not W. What does it mean ?

                S Offline
                S Offline
                Sasquatch
                wrote on last edited by
                #28

                @hlehoux no idea, i have mix of HW, W and H marked, all play together nicely.

                1 Reply Last reply
                0
                • electrikE electrik

                  @scalz
                  Could you explain how to read these rssi reports, and how to adjust the configuration of the nodes so the reliability goes up?
                  I know there is a setting RFM69_TARGET_RSSI_DBM but it is not clear for me how to use this exactly.

                  scalzS Offline
                  scalzS Offline
                  scalz
                  Hardware Contributor
                  wrote on last edited by scalz
                  #29

                  @electrik
                  in logs, RFM69:CSMA:RSSI=-104 is the noise floor
                  and RFM69_TARGET_RSSI_DBM define the rssi you want to have for your node.

                  so if you have a noise floor of -100, you could adjust your target to -85 or less. But maybe you could get a few retries with -90 target.

                  rfm69 power level can be adjusted from -18 to +13db. 13db=100% power= 45mA power consumption.

                  for example, let's say your target is -70, and your power level has been autoadjusted to +5.
                  then if you set, the target to -80 or less, power level will decrease to maybe -8 or even less, it depends on your environment and your build.
                  And vice versa, if you set target to -50, ATC will set a higher power level.

                  ATC is used to auto-adjust radio power level consumption for battery nodes, so they use only energy they need. This also make your rf environment "greener". No nodes sending loud messages if not needed.

                  Another example, I recently designed a new node. Noise floor here is around -98db.
                  With a target of -70 if I remember, power level was autoadjusted to +5db.
                  After adjusting target to -87db, power level has decreased to -11db, which equals to 20% power.
                  And there are no NACK nor retries.
                  So this node now requires less energy for sending messages and that will save battery.
                  This is for an indoor node, 10m distance with 2 brick walls obstacles.

                  old driver doesn't have ATC management. I've no problem so far with new driver.

                  I guess H would mean High power version. But to be sure, yuo just have to google for rfm69 pics and you'll see which version you have. Existing versions are : RFM69HW, RFM69W, RFM69HCW, RFM69CW

                  S 1 Reply Last reply
                  2
                  • scalzS scalz

                    @electrik
                    in logs, RFM69:CSMA:RSSI=-104 is the noise floor
                    and RFM69_TARGET_RSSI_DBM define the rssi you want to have for your node.

                    so if you have a noise floor of -100, you could adjust your target to -85 or less. But maybe you could get a few retries with -90 target.

                    rfm69 power level can be adjusted from -18 to +13db. 13db=100% power= 45mA power consumption.

                    for example, let's say your target is -70, and your power level has been autoadjusted to +5.
                    then if you set, the target to -80 or less, power level will decrease to maybe -8 or even less, it depends on your environment and your build.
                    And vice versa, if you set target to -50, ATC will set a higher power level.

                    ATC is used to auto-adjust radio power level consumption for battery nodes, so they use only energy they need. This also make your rf environment "greener". No nodes sending loud messages if not needed.

                    Another example, I recently designed a new node. Noise floor here is around -98db.
                    With a target of -70 if I remember, power level was autoadjusted to +5db.
                    After adjusting target to -87db, power level has decreased to -11db, which equals to 20% power.
                    And there are no NACK nor retries.
                    So this node now requires less energy for sending messages and that will save battery.
                    This is for an indoor node, 10m distance with 2 brick walls obstacles.

                    old driver doesn't have ATC management. I've no problem so far with new driver.

                    I guess H would mean High power version. But to be sure, yuo just have to google for rfm69 pics and you'll see which version you have. Existing versions are : RFM69HW, RFM69W, RFM69HCW, RFM69CW

                    S Offline
                    S Offline
                    Sasquatch
                    wrote on last edited by
                    #30

                    @scalz great explanation of new driver functionality.
                    Some cheapest Aliexpress boards are not marked at all or marked with Frequency only. H versions have additional sot23-6 chip near antenna pin.

                    Wonder why the new driver wasn't stable enough to do 12kB OTA firmware update even once, regardless of settings :thinking_face: . Same GW and node works flawlessly on old driver over 10-100 meters.

                    scalzS 1 Reply Last reply
                    0
                    • S Sasquatch

                      @scalz great explanation of new driver functionality.
                      Some cheapest Aliexpress boards are not marked at all or marked with Frequency only. H versions have additional sot23-6 chip near antenna pin.

                      Wonder why the new driver wasn't stable enough to do 12kB OTA firmware update even once, regardless of settings :thinking_face: . Same GW and node works flawlessly on old driver over 10-100 meters.

                      scalzS Offline
                      scalzS Offline
                      scalz
                      Hardware Contributor
                      wrote on last edited by scalz
                      #31

                      @Sasquatch
                      yes rfm modules are nice for long range.
                      ok. we will re-test OTA+new driver on my new board soon, and will keep you updated

                      I agree seems OP has setup problem, could be

                      • H vs non-H define
                      • IRQ is not triggering for receiving msg
                      • weak GND counterpoise for antenna,
                      • power supply. For power I usually use 100uf+0.1uf close to the module. 100uf when it's batt powered (for coincell, I like to have two big capa+0.1uf), else it's possible to use a smaller value like 33-47uf
                      1 Reply Last reply
                      1
                      • S Offline
                        S Offline
                        Sasquatch
                        wrote on last edited by
                        #32

                        @scalz I do agree,
                        I found that even USB powered NodeMCU gateway needed at least 10uf ceramic or 47uF electrolytic capacitor on radio supply, without it heavy traffic was causing gateway freezes and reboots. There is 100nF capacotor on rfm69 and 220nf on RFM69H modules(at least my Aliexpress cheap clones have them) right next to the VCC pin, so i skip the external one.

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

                          @Sasquatch
                          I admit I never checked that, but thought the capa would probably be there.
                          well, I usually am careful so I add more footprints than needed for flexibilty, just in case :)

                          @hlehoux perhaps do you have some arduino mini pro (8mhz 3v) that you could use as a test node and check if you still have same problem (in case this is an IRQ issue..) ?

                          H 1 Reply Last reply
                          0
                          • scalzS scalz

                            @Sasquatch
                            I admit I never checked that, but thought the capa would probably be there.
                            well, I usually am careful so I add more footprints than needed for flexibilty, just in case :)

                            @hlehoux perhaps do you have some arduino mini pro (8mhz 3v) that you could use as a test node and check if you still have same problem (in case this is an IRQ issue..) ?

                            H Offline
                            H Offline
                            hlehoux
                            wrote on last edited by
                            #34

                            @scalz @Sasquatch Thank you for suggestions, i will test next week-end
                            My gateaway is an esp8266 adafruit huzzah feather and my node arduino mini pro (8mhz 3v) using the psb of @sundberg84 ([here])(https://www.openhardware.io/view/389/EasyNewbie-PCB-RFM69-HWW-edition-for-MySensors)

                            I did not place any capacitor on the gateway, which is usb powered in my tests.
                            I will try to connect a decoupling capacitor like explained here like 47uF

                            1 Reply Last reply
                            1
                            • H Offline
                              H Offline
                              hlehoux
                              wrote on last edited by
                              #35

                              Hello, i don't see progress when connecting a 10uF decoupling capacitor.

                              On my node i get

                              4452 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=OK:1
                              4673 RFM69:SAC:SEND ACK,TO=0,RSSI=-19
                              4677 RFM69:CSMA:RSSI=-110
                              4683 TSF:MSG:READ,0-0-1,s=255,c=3,t=25,pt=1,l=1,sg=0:1
                              4689 TSF:MSG:PONG RECV,HP=1
                              4691 TSM:UPL:OK
                              4694 TSM:READY:ID=1,PAR=0,DIS=1
                              4698 RFM69:SWR:SEND,TO=0,SEQ=5,RETRY=0
                              4704 RFM69:CSMA:RSSI=-107
                              4911 !RFM69:SWR:NACK
                              4913 RFM69:SWR:SEND,TO=0,SEQ=6,RETRY=1
                              4917 RFM69:CSMA:RSSI=-105
                              5124 !RFM69:SWR:NACK
                              5126 RFM69:SWR:SEND,TO=0,SEQ=6,RETRY=2
                              5130 RFM69:CSMA:RSSI=-107
                              5337 !RFM69:SWR:NACK
                              5339 RFM69:SWR:SEND,TO=0,SEQ=6,RETRY=3
                              5343 RFM69:CSMA:RSSI=-109
                              5550 !RFM69:SWR:NACK
                              5552 RFM69:SWR:SEND,TO=0,SEQ=6,RETRY=4
                              5556 RFM69:CSMA:RSSI=-108
                              5763 !RFM69:SWR:NACK
                              5765 !TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=NACK:0100
                              

                              and on the gateaway

                              5919 TSM:READY:NWD REQ
                              5921 RFM69:SWR:SEND,TO=255,SEQ=0,RETRY=0
                              5926 RFM69:CSMA:RSSI=-108
                              
                              63949 TSF:MSG:READ,1-1-255,s=255,c=3,t=7,pt=0,l=0,sg=0:
                              63954 TSF:MSG:BC
                              63956 TSF:MSG:FPAR REQ,ID=1
                              63958 TSF:PNG:SEND,TO=0
                              63960 TSF:CKU:OK
                              63962 TSF:MSG:GWL OK
                              64440 RFM69:SWR:SEND,TO=1,SEQ=1,RETRY=0
                              64445 RFM69:CSMA:RSSI=-95
                              64447 RFM69:CSMA:RSSI=-96
                              64463 RFM69:SWR:ACK,FROM=1,SEQ=2,RSSI=-34
                              64467 TSF:MSG:SEND,0-0-1-1,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0
                              Loop 0
                              66524 RFM69:SAC:SEND ACK,TO=1,RSSI=-70
                              66528 RFM69:CSMA:RSSI=-105
                              66533 TSF:MSG:READ,1-1-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1
                              66538 TSF:MSG:PINGED,ID=1,HP=1
                              66546 RFM69:SWR:SEND,TO=1,SEQ=3,RETRY=0
                              66551 RFM69:CSMA:RSSI=-106
                              66754 !RFM69:SWR:NACK
                              66756 RFM69:SWR:SEND,TO=1,SEQ=4,RETRY=1
                              66760 RFM69:CSMA:RSSI=-97
                              66777 RFM69:SWR:ACK,FROM=1,SEQ=4,RSSI=-35
                              66781 TSF:MSG:SEND,0-0-1-1,s=255,c=3,t=25,pt=1,l=1,sg=0,ft=0,st=OK:1
                              Loop 0
                              68837 RFM69:SAC:SEND ACK,TO=1,RSSI=-69
                              68842 RFM69:CSMA:RSSI=-95
                              68844 RFM69:CSMA:RSSI=-96
                              68849 TSF:MSG:READ,1-1-0,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
                              68855 RFM69:SWR:SEND,TO=1,SEQ=5,RETRY=0
                              68859 RFM69:CSMA:RSSI=-109
                              69062 !RFM69:SWR:NACK
                              69064 RFM69:SWR:SEND,TO=1,SEQ=6,RETRY=1
                              69069 RFM69:CSMA:RSSI=-101
                              69085 RFM69:SWR:ACK,FROM=1,SEQ=6,RSSI=-35
                              69089 TSF:MSG:SEND,0-0-1-1,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
                              Loop 0
                              71146 RFM69:SAC:SEND ACK,TO=1,RSSI=-70
                              71151 RFM69:CSMA:RSSI=-106
                              71156 TSF:MSG:READ,1-1-0,s=255,c=0,t=17,pt=0,l=5,sg=0:2.3.2
                              Loop 0
                              Loop 0
                              75212 RFM69:SAC:SEND ACK,TO=1,RSSI=-88
                              75217 RFM69:CSMA:RSSI=-108
                              75222 TSF:MSG:READ,1-1-0,s=255,c=3,t=11,pt=0,l=13,sg=0:RFM69 Sensor 
                              Loop 0
                              77279 RFM69:SAC:SEND ACK,TO=1,RSSI=-85
                              77283 RFM69:CSMA:RSSI=-107
                              
                              

                              Could you explain the difference between
                              RFM69:SAC:SEND ACK,TO=0,RSSI=-19
                              RFM69:CSMA:RSSI=-110

                              When RSSI=-19 then RSSI=-110 ; which one is bad and is it on the node or on the gateaway ?

                              Thank you again :-)

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


                              19

                              Online

                              11.7k

                              Users

                              11.2k

                              Topics

                              113.0k

                              Posts


                              Copyright 2025 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