Navigation

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

    Posts made by ftw64

    • RE: [solved] Sensor freezes - Low memory available, stability problems may occur.

      @mfalkvidd Oh, cool. I missed that (and I didn't know that, and I learned something today :-)). Yep, in that case it wouldn't help much.

      posted in Troubleshooting
      ftw64
      ftw64
    • RE: [solved] Sensor freezes - Low memory available, stability problems may occur.

      A lot of debug code in this sketch has not been enclosed between #ifdef MYDEBUG/#endif blocks. Even if you disable MYDEBUG, most of the Serial.print() lines remain 'active'.

      Try to comment most of the Serial.print() code or add the #ifdef statements to have the compiler ignore these Serial.print() lines.
      Most memory in this sketch is eaten up by the strings ("xxx").

      posted in Troubleshooting
      ftw64
      ftw64
    • RE: 💬 Building a Raspberry Pi Gateway

      @marceloaqno Thanks! That indeed does the trick! And no worries, it is my own decision to play with beta(!) code (and it was a fun weekend troubleshooting it - I learned a lot about the structure of the MySensors code)!

      Only 'bad' thing is that 2.2.0 is not compatible with my existing nodes :-).

      I appreciate all the work that has been put into MySensors.

      posted in Announcements
      ftw64
      ftw64
    • RE: 💬 Building a Raspberry Pi Gateway

      @gohan There are no stupid questions, right :-)? But perhaps a stupid answer: no, I did not use any logic convertors. The RFM69 is 3.3V and as far as I know, so are the GPIO pins on the RPI. But I might be mistaken, of course... Should I use logic convertors?

      At the moment I have no idea where it fails. Perhaps I need to give it a rest for a couple of days to think it over...

      I followed the steps as given on the web site (git branch development). Connected the RFM radio (7 wires: Vcc, GND, MOSI, MISO, SCK, NSS, DI00). Only modified MyConfig.h with regard to the NETWORKID (100 --> 101; my 'production' MySensors runs at 100) and enabling "MY_DEBUG_VERBOSE_RFM69". I configured with:

      % ./configure --my-debug=enable --my-config-file=/usr/local/etc/mysensors.dat --my-gateway=ethernet --my-transport=rfm69 --my-rfm69-frequency=868 --my-is-rfm69hw
      % make -j 4
      % sudo bin/mysgw -d
      
      posted in Announcements
      ftw64
      ftw64
    • RE: 💬 Building a Raspberry Pi Gateway

      Can't get the RFM69HW to work on RPI. I tried the following:

      1. I installed on an old RPI1 (clean Rasbian install). Same results as on my Domoticz RPI-3.
      2. Setup the original RPI3 as a node, using the 2.2.0-beta code. I verified that in this case the RFM69HW actually transmits (I can hear it burst on 868.000 MHz). However, it is unable to connect to an existing Arduino 2.1.1 gateway.
      3. I built an Arduino 2.2.0-beta serial gateway. Even then, the RPI as a node fails to connect to the 2.2.0-beta serial gateway.
      4. I built an Arduino 2.2.0-beta node. This node is able to connect to the above gateway.

      There seems to be something different in the radio network between the RFM69HW on the RPI and the RFM69HW on the Arduino. But I'm unable to find out what the difference is :-(.

      The RPI RFM69HW will not communicate with the Arduino RFM69HW. When the RPI is a gateway, the RFM69HW will not physically interrupt when another node is trying to connect. When the RPI is a node, the RFM69HW on the ARduino does not interrupt either.

      Did anyone get the RFM69HW working on the RPI? I'd really like to get this beautiful piece of code working!

      posted in Announcements
      ftw64
      ftw64
    • RE: 💬 Building a Raspberry Pi Gateway

      @gohan said in 💬 Building a Raspberry Pi Gateway:

      myscontroller

      I just did. When I also have a Domoticz controller connected to the gateway:

      2017-04-23 11:18:33	INFO	Connected to 192.168.10.24:5003
      2017-04-23 11:18:33	CHILD	New child discovered, node id=0, child id=internal
      2017-04-23 11:18:33	RX	0;255;3;0;14;Gateway startup complete.
      2017-04-23 11:18:33	DEBUG	Update child id=255, type=ARDUINO_RELAY
      2017-04-23 11:18:33	RX	0;255;0;0;18;2.2.0-beta
      2017-04-23 11:18:33	RX	0;255;3;0;22;208103
      2017-04-23 11:18:33	RX	0;255;3;0;2;2.2.0-beta
      2017-04-23 11:18:43	RX	0;255;3;0;22;218106
      2017-04-23 11:18:53	RX	0;255;3;0;22;228110
      2017-04-23 11:19:03	RX	0;255;3;0;22;238101
      2017-04-23 11:19:13	RX	0;255;3;0;22;248104
      2017-04-23 11:19:23	RX	0;255;3;0;22;258110
      2017-04-23 11:19:33	RX	0;255;3;0;22;268107
      2017-04-23 11:19:43	RX	0;255;3;0;22;278106
      2017-04-23 11:19:53	RX	0;255;3;0;22;288110
      2017-04-23 11:20:03	RX	0;255;3;0;22;298116
      

      However, I found out that the DI00 (=IRQ) on the RFM69 never gives a rising edge...
      I'm suspecting that the RFM69 is not being initialised properly... I added some debugging in the RFM69 code to see what registers are being written and read:

      mysgw: Starting gateway...
      mysgw: Protocol version - 2.2.0-beta
      mysgw: MCO:BGN:INIT GW,CP=RPNG----,VER=2.2.0-beta
      mysgw: TSF:LRT:OK
      mysgw: TSM:INIT
      mysgw: TSF:WUR:MS=0
      mysgw: RFM69:INIT
      mysgw: RFM69:INIT:PIN,CS=24,IQP=22,IQN=22
      mysgw: FtW:RFM69:write register, reg=0x01, value=4
      mysgw: FtW:RFM69:write register, reg=0x02, value=0
      mysgw: FtW:RFM69:write register, reg=0x03, value=2
      mysgw: FtW:RFM69:write register, reg=0x04, value=64
      mysgw: FtW:RFM69:write register, reg=0x05, value=3
      mysgw: FtW:RFM69:write register, reg=0x06, value=51
      mysgw: FtW:RFM69:write register, reg=0x18, value=136
      mysgw: FtW:RFM69:write register, reg=0x19, value=66
      mysgw: FtW:RFM69:write register, reg=0x26, value=7
      mysgw: FtW:RFM69:write register, reg=0x28, value=16
      mysgw: FtW:RFM69:write register, reg=0x29, value=220
      mysgw: FtW:RFM69:write register, reg=0x2c, value=0
      mysgw: FtW:RFM69:write register, reg=0x2d, value=3
      mysgw: FtW:RFM69:write register, reg=0x2e, value=136
      mysgw: FtW:RFM69:write register, reg=0x2f, value=45
      mysgw: FtW:RFM69:write register, reg=0x30, value=101
      mysgw: FtW:RFM69:write register, reg=0x37, value=212
      mysgw: FtW:RFM69:write register, reg=0x38, value=66
      mysgw: FtW:RFM69:write register, reg=0x39, value=255
      mysgw: FtW:RFM69:write register, reg=0x3a, value=255
      mysgw: FtW:RFM69:write register, reg=0x3c, value=5
      mysgw: FtW:RFM69:write register, reg=0x3d, value=16
      mysgw: FtW:RFM69:write register, reg=0x6f, value=48
      mysgw: FtW:RFM69:write register, reg=0x07, value=217
      mysgw: FtW:RFM69:write register, reg=0x08, value=0
      mysgw: FtW:RFM69:write register, reg=0x09, value=0
      mysgw: FtW:RFM69:write register, reg=0x01, value=4
      mysgw: FtW:RFM69:read register, reg=0x27, value=128
      mysgw: FtW:RFM69:read register, reg=0x3d, value=16
      mysgw: FtW:RFM69:write register, reg=0x3d, value=16
      mysgw: FtW:RFM69:write register, reg=0x11, value=87
      mysgw: RFM69:PTX:LEVEL=5 dBm
      mysgw: FtW:RFM69:read register, reg=0x02, value=0
      mysgw: FtW:RFM69:read register, reg=0x03, value=2
      mysgw: FtW:RFM69:read register, reg=0x04, value=64
      mysgw: FtW:RFM69:read register, reg=0x05, value=3
      mysgw: FtW:RFM69:read register, reg=0x06, value=51
      mysgw: FtW:RFM69:read register, reg=0x30, value=101
      mysgw: FTW attachInterrupt: gpioPin=25 mode=3
      mysgw: TSM:INIT:TSP OK
      mysgw: TSM:INIT:GW MODE
      mysgw: FtW:RFM69:write register, reg=0x39, value=0
      mysgw: TSM:READY:ID=0,PAR=0,DIS=0
      mysgw: MCO:REG:NOT NEEDED
      mysgw: FtW:RFM69:write register, reg=0x25, value=64
      mysgw: FtW:RFM69:write register, reg=0x13, value=26
      mysgw: FtW:RFM69:write register, reg=0x5a, value=85
      mysgw: FtW:RFM69:write register, reg=0x5c, value=112
      mysgw: FtW:RFM69:read register, reg=0x3d, value=16
      mysgw: FtW:RFM69:write register, reg=0x3d, value=20
      mysgw: FtW:RFM69:write register, reg=0x01, value=16
      mysgw: Listening for connections on 0.0.0.0:5003
      mysgw: MCO:BGN:STP
      mysgw: MCO:BGN:INIT OK,TSP=1
      mysgw: New connection from 127.0.0.1
      mysgw: Client 0 connected
      mysgw: Client 0: 0;0;3;0;2;
      mysgw: gatewayTransportAvailable
      mysgw: Client 0: 0;0;3;0;2;Get Version
      mysgw: gatewayTransportAvailable
      mysgw: Client 0: 0;0;3;0;18;PING
      mysgw: gatewayTransportAvailable
      mysgw: Client 0: 0;0;3;0;18;PING
      mysgw: gatewayTransportAvailable
      mysgw: Client 0: 0;0;3;0;18;PING
      
      posted in Announcements
      ftw64
      ftw64
    • RE: 💬 Building a Raspberry Pi Gateway

      @ftw64 Ok, this has to do with connecting an Ethernet client. When a client connects, this code works...
      Any idea where to start debugging for incoming RFM69 messages?

      posted in Announcements
      ftw64
      ftw64
    • RE: 💬 Building a Raspberry Pi Gateway

      I'm pretty sure I wired up the RFM69 correctly.
      However, I'm debugging. It seems we are stuck in "core/MyGatewayTransport.cpp":

      inline void gatewayTransportProcess(void)
      {
      
        if (gatewayTransportAvailable()) {
          // NEVER REACHED
      

      I never seem to get pass gatewayTransportAvailable. I will continue debugging.
      Disclaimer: I'm relatively new to MySensors and not really 'up to speed' with the source code :-).

      posted in Announcements
      ftw64
      ftw64
    • RE: 💬 Building a Raspberry Pi Gateway

      I cannot get the RFM69(HW) working. When I start myswg in debug mode (-d), I see:

      mysgw: Starting gateway...
      mysgw: Protocol version - 2.2.0-beta
      mysgw: MCO:BGN:INIT GW,CP=RPNG----,VER=2.2.0-beta
      mysgw: TSF:LRT:OK
      mysgw: TSM:INIT
      mysgw: TSF:WUR:MS=0
      mysgw: RFM69:INIT
      mysgw: RFM69:INIT:PIN,CS=24,IQP=22,IQN=22
      mysgw: RFM69:PTX:LEVEL=5 dBm
      mysgw: TSM:INIT:TSP OK
      mysgw: TSM:INIT:GW MODE
      mysgw: TSM:READY:ID=0,PAR=0,DIS=0
      mysgw: MCO:REG:NOT NEEDED
      mysgw: Listening for connections on 0.0.0.0:5003
      mysgw: MCO:BGN:STP
      mysgw: MCO:BGN:INIT OK,TSP=1
      

      But I can see ('hear' with a radio on 868.000 MHz) no transmission of the RFM69. When I power up a node, the node does not connect to the gateway: "NO REPLY"👍

      0 MCO:BGN:INIT NODE,CP=RRNNA--,VER=2.1.1
      4 TSM:INIT
      4 TSF:WUR:MS=0
      8 TSM:INIT:TSP OK
      10 TSM:INIT:STATID=4
      12 TSF:SID:OK,ID=4
      14 TSM:FPAR
      274 TSF:MSG:SEND,4-4-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      2281 !TSM:FPAR:NO REPLY
      2283 TSM:FPAR
      2562 TSF:MSG:SEND,4-4-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      4569 !TSM:FPAR:NO REPLY
      4571 TSM:FPAR
      4831 TSF:MSG:SEND,4-4-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      6838 !TSM:FPAR:NO REPLY
      6840 TSM:FPAR
      7100 TSF:MSG:SEND,4-4-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      9107 !TSM:FPAR:FAIL
      9109 TSM:FAIL:CNT=1
      9111 TSM:FAIL:PDT
      

      Is there any 'check' I can do to perform basic RFM69HW testing on my RPI?

      posted in Announcements
      ftw64
      ftw64
    • RE: 💬 Building a Raspberry Pi Gateway

      When I configure "MY_RFM69_MAX_POWER_LEVEL_DBM" in MyConfig.h, compiling fails.
      Perhaps you should change the code in ./drivers/RFM69/new/RFM69_new.h from:

      #define RFM69_MAX_POWER_LEVEL_DBM MY_RFM69_MAX_POWER_LEVEL_DBM //!< MY_RFM69_MAX_POWER_LEVEL_DBM

      to:

      #define RFM69_MAX_POWER_LEVEL_DBM ((rfm69_powerlevel_t)MY_RFM69_MAX_POWER_LEVEL_DBM) //!< MY_RFM69_MAX_POWER_LEVEL_DBM

      posted in Announcements
      ftw64
      ftw64
    • Power consumption (battery) during (re-)init

      Hello,

      I'm building a (test) sensor on battery power. For now, the sketch
      will toggle a binary value, send that value and then goes to sleep
      for 60 seconds. I'm using an Arduino Mini Pro (3.3V) and an RFM69HW.

      During the 'sleep' my battery current drops to about 5 uA. Then it
      wakes up for about 40(?) ms to send the new value and then goes to
      sleep again. That's great! The transmissions during this time consumes
      about 150 mA, but only for a few milliseconds.

      However, when my gateway is unavailable, after some time my sensor
      enters the RE-INIT state and tries to connect to the (non-existent)
      gateway. During this time, the battery current remains about 5 mA
      (about 1000x higher) between the connection attempts. Also, when
      powering up the sensor for the first time, the behaviour is the same.

      That means that my battery will drain 1000x faster when my gateway
      is unavailable for what-ever reason.

      Is there a way to change the (RE-)INIT behaviour. For example: put
      the sensor in a 'real' sleep state between the (RE-)INIT attempts?

      posted in General Discussion
      ftw64
      ftw64