Navigation

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

    TSD

    @TSD

    6
    Reputation
    28
    Posts
    328
    Profile views
    0
    Followers
    0
    Following
    Joined Last Online

    TSD Follow

    Best posts made by TSD

    • RE: Timer2 does not work after including MySensors.h

      @mfalkvidd

      "The application" in this case is just a blinking LED. I intend to use the ISR to read out a sensor and send the data with MySensors. But because I couldn't get the ISR to work, I reduced "the application" to an LED to keep this discussion focused on the real issue.

      Yes, it always compiles, whether I include MySensors.h or not, and whether I use Arduino IDE or Atmel Studio.

      It's just that the LED doesn't always blink. In fact, the LED only blinks if I compile with Atmel Studio and don't include MySensors.h.

      I cannot use a serial monitor, because the custom node only has an ISP interface to program the MCU, there's no USB or anything like that.

      posted in Troubleshooting
      TSD
      TSD
    • RE: Timer2 does not work after including MySensors.h

      @mfalkvidd, @scalz
      Thanks, now we're getting somewhere. When I use wait(), the LED blinks. That makes sense if sleep() uses power down mode, which turns off almost everything, including timer 2.

      I'll read the sensor and send the data (with MySensors) from the counter in the main loop. Then I'll see if I can get the MCU to sleep while leaving timer2 on with extended standby mode.

      Thanks for your help!

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @mfalkvidd
      OK, tnx for now. I'll look at gateway rssi tomorrow evening

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      If I run "make install" while the code has not compiled yet, it will compile before installing. If you first run "make" seperately, "make install" will only install.

      I'm almost there. I configured an Ethernet gateway (couldn't get serial gateway to work) and can now see the temperature, receive RSSI and sending RSSI from the node in Domoticz.

      The gateway receive function shows up as "S_ARDUINO_REPEATER_NODE", but there's no data yet.

      What data should I pass on to your receive function? My gateway code is now as follows:

      #define MY_DEBUG_VERBOSE_GATEWAY
      #include <MySensors.h>
      
      
      MyMessage msgTemp(1,V_TEMP);
      MyMessage msgRSSI(2,V_LEVEL);
      
      #define ARDUINO 100
      // This space is intended to be used to include arduino libraries
      
      #undef ARDUINO
      
      void setup()
      {
              // Setup locally attached sensors
      }
      
      void presentation()
      {
              // Present locally attached sensors here
      present(2,S_SOUND);
      }
      
      void loop()
      {
              // Send locally attached sensors data here
      receive(msgTemp);
      }
      
      void receive(const MyMessage &message)
      {
        int16_t rssiReceive = RFM69_getReceivingRSSI();
        if (message.sender == 1 ) {
          send(msgRSSI.set(rssiReceive,0));
        }
      }
      
      
      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @gohan
      I couldn't get the RSSI measurement on the gateway to work, so I'm not doing that.

      I want to get ATC to work. As ATC uses RSSI to optimize power, a correct RSSI measurement (on the node) is needed. ATC (and so the RSSI measurement) works well on an Arduino gateway, but not on a RPi.

      As I don't have a software background and am still newish to MySensors, I'm hoping someone on the forum knows what to do. In the meantime, I'll keep digging myself 🙂

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @prelektr Because I wasn't making much progress, I gave up on this and added an Arduino Nano gateway that communicates with the RPi via UART. Then the ATC works. The Nano (clone) is just a $2 board, so it isn't a big deal to add it.

      posted in Troubleshooting
      TSD
      TSD

    Latest posts made by TSD

    • RE: RFM69 ATC not working?

      @prelektr Because I wasn't making much progress, I gave up on this and added an Arduino Nano gateway that communicates with the RPi via UART. Then the ATC works. The Nano (clone) is just a $2 board, so it isn't a big deal to add it.

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @gohan
      I couldn't get the RSSI measurement on the gateway to work, so I'm not doing that.

      I want to get ATC to work. As ATC uses RSSI to optimize power, a correct RSSI measurement (on the node) is needed. ATC (and so the RSSI measurement) works well on an Arduino gateway, but not on a RPi.

      As I don't have a software background and am still newish to MySensors, I'm hoping someone on the forum knows what to do. In the meantime, I'll keep digging myself 🙂

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @scalz
      I found your name in the Raspberry Pi MySensor driver files. Would you happen to know why the RSSI measurement for a RPi gateway doesn't work? I'm having trouble getting ATC to work with my RPi gateway. It works well with an Arduino gateway.

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @mfalkvidd
      And if you turn on ATC? Does that work? Are you on 2.3.0?

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @gohan
      I just tried with the node on MySensors 2.2.0, but I get the same result. I cannot get the gateway to compile with 2.2.0, I get the following errors:

      In file included from ./MySensors.h:49:0,
                       from examples_linux/mysgw.cpp:83:
      ./drivers/RFM69/new/RFM69_new.cpp: In function ‘bool RFM69_initialise(uint32_t)’:
      ./MyConfig.h:716:26: error: ‘DEFAULT_RFM69_IRQ_NUM’ was not declared in this scope
       #define MY_RFM69_IRQ_NUM DEFAULT_RFM69_IRQ_NUM
                                ^
      ./drivers/RFM69/new/RFM69_new.cpp:230:18: note: in expansion of macro ‘MY_RFM69_IRQ_NUM’
        attachInterrupt(MY_RFM69_IRQ_NUM, RFM69_interruptHandler, RISING);
                        ^~~~~~~~~~~~~~~~
      In file included from ./MySensors.h:347:0,
                       from examples_linux/mysgw.cpp:83:
      ./hal/transport/MyTransportRFM69.cpp: In function ‘uint8_t transportReceive(void*)’:
      ./hal/transport/MyTransportRFM69.cpp:80:54: error: ‘RFM69_recv’ was not declared in this scope
        return RFM69_recv((uint8_t*)data, MAX_MESSAGE_LENGTH);
                                                            ^
      In file included from ./MySensors.h:343:0,
                       from examples_linux/mysgw.cpp:83:
      ./drivers/RFM69/new/RFM69_new.cpp: At global scope:
      ./drivers/RFM69/new/RFM69_new.cpp:749:12: warning: ‘void RFM69_encrypt(const char*)’ defined but not used [-Wunused-function]
       LOCAL void RFM69_encrypt(const char *key)
                  ^~~~~~~~~~~~~
      ./drivers/RFM69/new/RFM69_new.cpp:599:12: warning: ‘void RFM69_ATCmode(bool, int16_t)’ defined but not used [-Wunused-function]
       LOCAL void RFM69_ATCmode(const bool onOff, const int16_t targetRSSI)
                  ^~~~~~~~~~~~~
      ./drivers/RFM69/new/RFM69_new.cpp:340:15: warning: ‘uint8_t RFM69_receive(uint8_t*, uint8_t)’ defined but not used [-Wunused-function]
       LOCAL uint8_t RFM69_receive(uint8_t *buf, const uint8_t maxBufSize)
      
      

      Do you have the gateway running with 2.2.0? And ATC works for the RFM69?

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @gohan @mfalkvidd
      I think it is related to the Raspberry Pi implementation of MySensors. If I use an Arduino/RFM69 gateway, the RSSI is as expected. At close range, the power drops to the minimum possible level and the RSSI is strong. I noticed that the interrupt pin is toggled during communication, see picture below (orange is node current, blue is gateway interrupt).
      0_1540320711757_arduino-gateway_node-current_gw-interrupt.bmp

      If I use the Raspberry gateway (with origin/development-3.0.0 MySensors), I get the following result (orange is node current, yellow is gateway interrupt). The same result is obtained with MySensors 2.3.0 (origin/master). I couldn't get the origin/development version to compile. It gives an error about MY_DEBUGDEVICE.
      0_1540320810723_raspberry-gateway_node-current_gw-interrupt.bmp
      Apart from the much higher node current (and worse RSSI), the interrupt pin is always high and not toggled.

      Are you guys using a Raspberry gateway, or an Arduino gateway?

      I haven't had time to dig into to the MySensors code further, but does any of you know if this could be the problem?

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @gohan
      I added your code to my node. It gives exactly the same results as my own code. What kind of node are you using? Are you using the HW or W version of the RFM69?

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @mfalkvidd
      My code now looks pretty much the same as yours, except for the OTA stuff. But I don't see gateway messages in Domoticz. The node shows up with all its measurements.

      #define MY_DEBUG_VERBOSE_GATEWAY
      #include <MySensors.h>
      
      MyMessage msgRSSI(1,V_LEVEL);
      
      #define ARDUINO 100
      // This space is intended to be used to include arduino libraries
      
      #undef ARDUINO
      
      void setup()
      {
              // Setup locally attached sensors
      }
      
      void presentation()
      {
              // Present locally attached sensors here
      present(1,S_SOUND);
      
      }
      
      void loop()
      {
              // Send locally attached sensors data here
      }
      
      void receive(const MyMessage &message)
      {
        int16_t rssiReceive = RFM69_getReceivingRSSI();
        if (message.sender == 1 ) {
          send(msgRSSI.set(rssiReceive,0));
        }
      }
      

      Is the gateway supposed to show up as a measurement? Any idea why that doesn't happen?

      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      If I run "make install" while the code has not compiled yet, it will compile before installing. If you first run "make" seperately, "make install" will only install.

      I'm almost there. I configured an Ethernet gateway (couldn't get serial gateway to work) and can now see the temperature, receive RSSI and sending RSSI from the node in Domoticz.

      The gateway receive function shows up as "S_ARDUINO_REPEATER_NODE", but there's no data yet.

      What data should I pass on to your receive function? My gateway code is now as follows:

      #define MY_DEBUG_VERBOSE_GATEWAY
      #include <MySensors.h>
      
      
      MyMessage msgTemp(1,V_TEMP);
      MyMessage msgRSSI(2,V_LEVEL);
      
      #define ARDUINO 100
      // This space is intended to be used to include arduino libraries
      
      #undef ARDUINO
      
      void setup()
      {
              // Setup locally attached sensors
      }
      
      void presentation()
      {
              // Present locally attached sensors here
      present(2,S_SOUND);
      }
      
      void loop()
      {
              // Send locally attached sensors data here
      receive(msgTemp);
      }
      
      void receive(const MyMessage &message)
      {
        int16_t rssiReceive = RFM69_getReceivingRSSI();
        if (message.sender == 1 ) {
          send(msgRSSI.set(rssiReceive,0));
        }
      }
      
      
      posted in Troubleshooting
      TSD
      TSD
    • RE: RFM69 ATC not working?

      @mfalkvidd
      Do you mean

      #define MY_DEBUG_VERBOSE_GATEWAY
      

      That uses the GATEWAY_DEBUG("text") macro that you are referring to. I tried that, but it doesn't give any additional output in the log.

      Yes, this is the complete code I run:

      sudo ./configure --my-transport=rfm69 --my-rfm69-frequency=868 --my-is-rfm69hw --my-gateway=serial --my-serial-is-pty --my-serial-pty=/dev/ttyUSB020
      sudo make install
      sudo systemctl start mysgw.service
      

      But ttyUSB020 doesn't appear in /dev afterwards, nor does Domoticz list it.

      posted in Troubleshooting
      TSD
      TSD