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. RFM95W MODEM_CONFIGRUATION

RFM95W MODEM_CONFIGRUATION

Scheduled Pinned Locked Moved Development
11 Posts 3 Posters 3.0k Views 3 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.
  • M Offline
    M Offline
    mihai.aldea
    wrote on last edited by
    #2

    I know it's a bit late but I just set up my RFM95 nodes and started playing. I did noticed something interesting when using RFM95_BW31_25CR48SF512 and RFM95_BW125CR48SF4096. The TX times are very long, about 6000ms long. Yet I think it's got something to do with packet retries.
    The node reports an NACK status for each packet, however the gateway receives them just fine.

    1 Reply Last reply
    0
    • Al85A Offline
      Al85A Offline
      Al85
      wrote on last edited by
      #3

      Thanks i found a temporaly solution.
      Change in RFM95.h this ligne

      #define RFM95_RETRY_TIMEOUT_MS			(500ul)			//!< Timeout for ACK, adjustments needed if modem configuration changed (air time different)
      

      by

      #define RFM95_RETRY_TIMEOUT_MS			(5000ul)			//!< Timeout for ACK, adjustments needed if modem configuration changed (air time different)
      

      and change in Mytransport.h

      #define MY_TRANSPORT_STATE_TIMEOUT_MS			(2*1000ul)		//!< general state timeout (in ms)
      

      by

      #define MY_TRANSPORT_STATE_TIMEOUT_MS			(30*1000ul)		//!< 2 changed to RFM95W Ultra long Range enable general state timeout (in ms)
      

      and it work fine.

      1 Reply Last reply
      2
      • M Offline
        M Offline
        mihai.aldea
        wrote on last edited by
        #4

        I just found this out yesterday but I can't recall exactly what value I changed. The only thing I do remember is that I change only one value, not two and then everything was fine.

        1 Reply Last reply
        0
        • M Offline
          M Offline
          mihai.aldea
          wrote on last edited by
          #5

          @Al85 For me it worked only by changing:

          #define RFM95_RETRY_TIMEOUT_MS	(500ul)
          

          to

          #define RFM95_RETRY_TIMEOUT_MS	(2000ul)
          

          in drivers/RFM95/RFM95.h. And then both RFM95_BW31_25CR48SF512 and RFM95_BW125CR48SF4096 worked just fine, although RFM95_BW125CR48SF4096 has a whooping ~3000ms TX time per packet so not very feasible for battery powered sensors, unless the poll cycle is set to a an absolute minimum or even better is based on interrupts, like a door sensor.

          mfalkviddM 1 Reply Last reply
          0
          • M mihai.aldea

            @Al85 For me it worked only by changing:

            #define RFM95_RETRY_TIMEOUT_MS	(500ul)
            

            to

            #define RFM95_RETRY_TIMEOUT_MS	(2000ul)
            

            in drivers/RFM95/RFM95.h. And then both RFM95_BW31_25CR48SF512 and RFM95_BW125CR48SF4096 worked just fine, although RFM95_BW125CR48SF4096 has a whooping ~3000ms TX time per packet so not very feasible for battery powered sensors, unless the poll cycle is set to a an absolute minimum or even better is based on interrupts, like a door sensor.

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

            Does anyone know if the library enforces the 1% duty cycle limit, or is each sketch developer required to handle that themselves to stay within legal limits?

            1 Reply Last reply
            0
            • M Offline
              M Offline
              mihai.aldea
              wrote on last edited by
              #7

              I don't think the library is FCC compliant :smile:
              Now seriously, there's no reason for MySensors to enforce such limit as the user has full control over the duty cycles of his sensors and RFM network, it's up to the user to abide to these regulations. In fact, for the battery sensors nodes it's actually recommended to stick to that rule. With ** RFM95_BW31_25CR48SF512** taking about 1000ms for a TX and ** RFM95_BW125CR48SF4096** taking about 3000ms, you'll kill the battery pretty fast if you'll use short duty cycles. All my sensors nodes at home send their readings minutely, but the RFM95 node sends a beacon every 300s and whenever an interrupt fires it.

              mfalkviddM 1 Reply Last reply
              0
              • M mihai.aldea

                I don't think the library is FCC compliant :smile:
                Now seriously, there's no reason for MySensors to enforce such limit as the user has full control over the duty cycles of his sensors and RFM network, it's up to the user to abide to these regulations. In fact, for the battery sensors nodes it's actually recommended to stick to that rule. With ** RFM95_BW31_25CR48SF512** taking about 1000ms for a TX and ** RFM95_BW125CR48SF4096** taking about 3000ms, you'll kill the battery pretty fast if you'll use short duty cycles. All my sensors nodes at home send their readings minutely, but the RFM95 node sends a beacon every 300s and whenever an interrupt fires it.

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

                @mihai.aldea I am not sure if MySensors should enforce the legal limit, but I think it is really important that the library makes it easy to stay within legal limits. If the library does nothing, I think it is likely that people will abuse the frequency band without even knowing. That's ugly.

                With BW125CR48SF4096, 300s between each beacon you are already right at the limit of the duty cycle. Every message triggered with interrupt will make device non-compliant/illegal.

                Almost all MySensors example sketches send data more often than will be ok, which I think will lead to most users inadvertently abusing the band.

                1 Reply Last reply
                0
                • M Offline
                  M Offline
                  mihai.aldea
                  wrote on last edited by mihai.aldea
                  #9

                  I am ham radio licensed operator so I'm very much aware of the regulations. However we should not forget that this is an open band and as such no mission critical devices will run on these frequencies. FCC drafted these regulations to prevent some donkey to keep the channel closed by using 80-90% duty cycle and prevent all others from using it. However juding strictly from the MyS perspective, this is used by hobbyists and while many would put a dumb grim on their faces when using RFM95_BW125CR48SF4096 we should not forget that most of them work indoors, behind rebared walls and use poor antennas, so in real life there's really no impact on the band as their signal will not take off pretty far. And we can all agree that a when a Yagi is involved, those are most likely responsible experienced engineers who will know better than to block the band with their temperature sensors :laughing:
                  I'm not condoning in any way the abuse on these bands, but all I'm saying that I see no reason for MyS to enforce these limits.

                  mfalkviddM 1 Reply Last reply
                  0
                  • M mihai.aldea

                    I am ham radio licensed operator so I'm very much aware of the regulations. However we should not forget that this is an open band and as such no mission critical devices will run on these frequencies. FCC drafted these regulations to prevent some donkey to keep the channel closed by using 80-90% duty cycle and prevent all others from using it. However juding strictly from the MyS perspective, this is used by hobbyists and while many would put a dumb grim on their faces when using RFM95_BW125CR48SF4096 we should not forget that most of them work indoors, behind rebared walls and use poor antennas, so in real life there's really no impact on the band as their signal will not take off pretty far. And we can all agree that a when a Yagi is involved, those are most likely responsible experienced engineers who will know better than to block the band with their temperature sensors :laughing:
                    I'm not condoning in any way the abuse on these bands, but all I'm saying that I see no reason for MyS to enforce these limits.

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

                    @mihai.aldea good point that the signals probably won't disturb the band that much.

                    I am not at all worried for people like you who know what they are doing and have the knowledge to be responsible. What I am worried about is the"noobs", which very much is the target user group for MySensors. They will use the example sketches with no or very small modifications, and they won't know that they might be messing up the band.

                    I would prefer that MySensors is user friendy to noobs, which imo includes making it easier to do the right thing than to do the wrong thing.

                    1 Reply Last reply
                    0
                    • M Offline
                      M Offline
                      mihai.aldea
                      wrote on last edited by
                      #11

                      Well, this makes sense. And after all, if you're smart enough to tweak the lib and bypass the restrictions, chances are you know what you're doing both with the coding and with the radio spectrum.

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


                      7

                      Online

                      11.7k

                      Users

                      11.2k

                      Topics

                      113.1k

                      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