Sensor doesn't assisiate with gateway
-
I've recently built my Raspberry Pi based gateway and a simple temperature sensor based on an arduino uno. Both use nrf24l01 (provided by lcsc) with caps and an am1117-3.3 regulator as far as I can read the logs indicate that the modules are connected and working. I use myscontroller (v1.0.0beta build3316) for testing and when I press discover the sensor says that it received the message.
Here is the sensor log: https://paste.thestaticturtle.fr/ezasulirol.rb
Here is the gateway log: https://paste.thestaticturtle.fr/qimazocuho.rbIs there an assosiation process that I've missed ?
-
@TheStaticTurtle You are using an older version of mysensors. 2.3.2 is current so first of all upgrade to that.
Second, looking at the node log it never finds the gateway. FPAR is "find parent" and it never does, so nowhere to send the data. The "!TSM:FPAR:FAIL" is also a clue as to no comms with the gateway.
Why this is I don't know as you haven't posted your code.
-
Ok i've updated my node to 2.3.2 here's the new log: https://paste.thestaticturtle.fr/tizukamafo.rb
And sorry here's my node code: https://paste.thestaticturtle.fr/ziluwogide.cpp
However, you said that the gateway dosn't communicate with the sensor that isn't true with myscontroller I can send a Discover message and the node receives it, it seems that only the path from the sensor to the node isn't working
-
Ok, I've just moved to a esp8266 based gateway with the following code: https://paste.thestaticturtle.fr/furekuhege.cpp and I've added an inclusion button and can now connect the two by spaming the inclusion button an resetting the node. the sensors also showed up in homeassistant. Now the problem is that if I don't keep spaming the button after 60sec I no longer receive values from the nodes
-
@TheStaticTurtle What are you measuring the temperature of? Your node sketch only sends new data if the temperature changes from the last reading. It may be that the sensor(s) are in a place with a fairly constant temperature and therefore there is no change to send?
To test this comment out the below code and see if you then get data every 30 seconds....
// Only send data if temperature has changed and no error //#if COMPARE_TEMP == 1 // if (lastTemperature[i] != temperature && temperature != -127.00 && //temperature != 85.00) { //#else //if (temperature != -127.00 && temperature != 85.00) { //#endif
-
@skywatch or just change
#define COMPARE_TEMP 1 // Send temperature only if changed? 1 = Yes 0 = No
to
#define COMPARE_TEMP 0 // Send temperature only if changed? 1 = Yes 0 = No
-
@mfalkvidd I always seem to do things the hard way!
-
@skywatch that's often the path to fastest learning
-
@mfalkvidd Also the fastest path to insomnia and alcoholism!