Navigation

    • Register
    • Login
    • OpenHardware.io
    • Categories
    • Recent
    • Tags
    • Popular
    1. Home
    2. dmonty
    3. Best
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    Best posts made by dmonty

    • RE: 💬 Connecting the Radio

      After running NRF24L01+ for a few years I recently decided to upgrade to several NRF24L01+PA+LNA (Antenna version) using the link from this page. Initially the performance was worse. Fail to find gateway, fail to send data and lots of NACKs. However eventually I was able to get them working. Below is a summary of tweaks and suggestions from various Mysensor Forum posts that helped stabilize my sensor network.

      1. Add 47uf capacitor between 3v and ground pin on the transceiver.

      2. Add plastic-wrap then a tinfoil shield as per other threads. Tinfoil needs to to touch the base of the antenna (ground).

      3. My 5V switching power supply to the Arduino Nano was causing problems. Some sort of noise on the wire? When I disconnected the transformer and powered the arduino by laptop usb, the signal was much more reliable. So I added a 1000uf capacitor between ground and 5V coming from the transformer which filtered out the noise coming from the power supply. This is probably not applicable to battery powered devices.

      4. Use static node addressing for each node - automatic addressing sometimes randomly make bad routing decisions bypassing repeater nodes and choosing far away nodes.
        // Far-from-gateway sensor node
        #define MY_NODE_ID 2
        // Parent is a repeater node
        #define MY_PARENT_NODE_ID 1
        #define MY_PARENT_NODE_IS_STATIC

      5. Lower the power on the transceiver. Try each power level reboot the node and pay attention to: Setup speed, how many NACKs.
        // RF24_PA_MIN = -18dBm;
        // RF24_PA_LOW = -12dBm;
        // RF24_PA_HIGH = -6dBm;
        // RF24_PA_MAX = 0dBm
        #define MY_RF24_PA_LEVEL (RF24_PA_LOW)

      6. Run the RF24 scanner example for a long time to find a channel that is free from noise. I ran it for a day to pick up neighbourhood noise and loaded the results into a spreadsheet to graph. Set the clearest channel on all my nodes. e.g.
        #define MY_RF24_CHANNEL (105)

      7. In domoticz I lowered the ACK time from 1200 to 400 to avoid broadcast storms/collisions. On the nodes after each send or receive add a "wait(LONG_WAIT);" to allow ACKs to settle between transmissions ( e.g. 500ms).

      8. Run a ping-pong test between two battery powered mobile nodes to find optimal locations for your gateway, repeaters and sensors. Find the outer limits and keep the nodes well within those limits. Try not to place a node at the outer range limit, add repeaters. Sometimes moving a few feet in one direction can have a big difference.

      posted in Announcements
      dmonty
      dmonty
    • RE: RGB LED strip

      Just finished a similar project using WS2812B.

      • MySensors/Domoticz support.
      • Infrared Remote support (common 44 key color picker)
      • Color change & fade animations ++.

      https://github.com/dmonty2/ir_remote_leds/tree/mysensors

      posted in My Project
      dmonty
      dmonty
    • RE: 💬 Connecting the Radio

      A journal update on NRF24L01+PA+LNA (Antenna version). After 4-5 months two of them stopped transmitting. I had also purchase and installed the 3.3v regulator base socket to help improve overall transmission reliability.

      Loaded the RF24 library GettingStarted example onto two arduinos connected to laptop and a desktop. Changed the code to match MySensors pinout and data-rate, along with a free channel found by the RF24 scanner example.

      RF24 radio(9,10);
      

      ...snip...

        radio.begin();
        radio.setDataRate(RF24_250KBPS); 
        radio.setChannel(120);
        //radio.setPALevel(RF24_PA_MIN);
        radio.setPALevel(RF24_PA_LOW);
        //radio.setPALevel(RF24_PA_HIGH);
        //radio.setPALevel(RF24_PA_MAX);
      

      I Moved laptop to far edges of the range and tried various power levels for NRF2L01 as well as the PA+LNA. Sketch default is RF24_PA_LOW which turns out to have the farthest range with the least packet loss and fastest turn around time packet time. I also cycled through the various radios to weed out the ones that were week. Even with the 3.3v base socket, a capacitor helps as well as cellophane+tinfoil on the PA LNA modules.

      I then put one of the arduinos onto a battery pack and placed it next to each of my sensors. Then used the laptop to see packet loss next to repeater nodes and gateway. When near the edge of the range moving the antenna a few feet in different directions will cause packet loss. When a sensor is at the edge it is better to move radios closer to each other or a add a repeater. I thought PA LNA would be better in all locations but it turns out that the cheaper base radios sometimes perform better.

      posted in Announcements
      dmonty
      dmonty