UI5 Mysensors library 2.0 gateway issues
-
You should probably look at the nodes log.
-
@hek ok, I plugged in the Motion Sensor to check the Serial log and nothing came up. I opened the sketch on wordpad and noticed that there is no entry on Baud rate whatsoever (I no nothing about code so I don't know if that means anything).
in regards to my other Sensor which is a Temp/Humidity Sensor, the sketch is not on my Library it was not included on the downloaded Zip file, so I downloaded it from here:
https://www.mysensors.org/build/humidity
but the downloaded copy does not have any entry for the radio and the baud rate is set 9600 so that's why the Gateway cant communicate with them,,I think.
-
The baud rate has nothing to do with the radio communication. It's only used for the serial communication. That is debug prints or communication with controller.
I don't understand what you mean by "the downloaded copy does not have any entry for the radio".
-
include "DHT.h"
DHT dht;
void setup()
{
Serial.begin(9600);
Serial.println();
Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)");dht.setup(2); // data pin 2
}void loop()
{
delay(dht.getMinimumSamplingPeriod());float humidity = dht.getHumidity();
float temperature = dht.getTemperature();Serial.print(dht.getStatusString());
Serial.print("\t");
Serial.print(humidity, 1);
Serial.print("\t\t");
Serial.print(temperature, 1);
Serial.print("\t\t");
Serial.println(dht.toFahrenheit(temperature), 1);
}
-
wot? That isn't the example you linked above.
-
Example
"This example uses the external DTH library found here. Please install it and restart the Arduino IDE before trying to compile."if you click the "here", that's what downloads
-
"This example" refers to the example found on the mysensors page.
"uses the external DHT library" means you have to install the library in your ide by downloading it and install in your IDEs library path.If you want to fetch all the examples and support libraries in one schwong, use this link:
https://github.com/mysensors/MySensorsArduinoExamples/archive/master.zip
-
got it thanks
-
@hek hi, this is what the Motion Sensor Log displays:
-
@hek I got my sensors working now. The radio unit on the GW was defective, so I swapped it out and things are working fine, just need to change the readings on my DHT from C to F, how would I do that?
-
The unit format is normally updated from the controller. When the sensor starts it asks for the configuration.
But you can always hard code none-metric by setting it to false here:
https://github.com/mysensors/MySensorsArduinoExamples/blob/master/examples/DhtTemperatureAndHumiditySensor/DhtTemperatureAndHumiditySensor.ino#L69.. and removing this line:
-
@hek got it
Thanks
-
@hek hi, how can I activate repeater mode on a particular sensor?, I've had to build 2 repeating nodes so far to be able to reach a couple of my sensors. I am adding more sensors as we speak and and they are getting farther and farther, I know I will need a ton of repeaters, but I hate to waste a radio and an Arduino board just for repeaters.
Thanks
-
-
thanks so much, I am becoming a pro at this, one day YOU will come to me for questions lol.
-
Hope so, I might soon get senile
-
@hek said:
senile
are the the sensors/nodes awake at all times by default?
-
I had started a different thread that relates to this one and wasn't getting much for response, In my digging on the issue, I found this thread.
I have owned my new Vera Plus for over a week now and I cannot get my sensors communicating with Vera. I am running UI7 I believe, and I have my gateway built with a pro mini and an Easy Newbie board from OpenHardware.IO. I appear to be getting communication from nodes over the gateway according to what I am seeing in the log, but I am not able to include my sensors. CLearly, when I press start and stop, inclusion mode is starting and stopping as I see it in the logs. My issue though goes back to a post in this thread from 5 months ago where he addresses an issue with incomming commands being discarded. Here is a snippet from my log that shows the process:
I posted as an image so you can better see the highlighting. For my TemperatureAndHumidity node, I have manually set the node ID to 84 as can be seen in the logs. The 3 lines in yellow look to me to be the sensor attempting to present itself, but the presentation messages are being discarded. I have seen this both with my humidity sensor node and my garage door sensor node. In the post I referred to from 5 months ago from BartE, he linked to the development version of the plugin, so I even tried that. The log snippet shown above is from the development branch plugin. I was originally using the UI7 branch linked in the Vera how-to setup guide on the website. This had a bit of a different look, but the logs looked the same when I would attempt inclusion.It is getting a bit discouraging since I have owned the controller for over a week now and I can't get the MySensors part working, which is mainly why I got it. If it means anything, I had my gateway and sensors working in Domoticz.
You guys have been GREAT so far, so any help is appreciated.
-
This message appears when a none included node receives data.
https://github.com/mysensors/Vera/blob/development/L_Arduino.lua#L466I can't see any presentation message from your node (84).. It should say "c=0" something.
-
@hek, thanks for the quick reply.
You say "This message appears when a none included node receives data." but the only time I see those yellow lines is when I present the node.I see under the last discarded command:
50 12/27/16 9:12:38.441 luup_log:10: Arduino: Log: TSP:MSG:READ 84-84-0 s=0,c=0,t=7,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 9:12:38.443 luup_log:10: Arduino: Presentation: 84;0;0;0;7; <0x73e23520> 50 12/27/16 9:12:38.446 luup_log:10: Arduino: Log: TSP:MSG:READ 84-84-0 s=1,c=0,t=6,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 9:12:38.448 luup_log:10: Arduino: Presentation: 84;1;0;0;6; <0x73e23520>
The two TSP:MSG:READ lines contain c=0. Is this what you were referring to?
-
Yes, very strange. Presentation comes in. How could I miss that.
I still run UI5 on my Vera. Wondering if they changed any behaviour in recent firmware updates?
-
I find it hard to believe that no one here has used UI7 and not seen this. It is a bit frustrating.
-
What happens if you let vera hand out id?
Clear eeprom and re-upload sketch. And try to include again.
-
That was one of my questions in the other thread. I was thinking that Vera wasn't handing out IDs, which is why I manually assigned it. I will try clearing eeprom and try again. I'll post the log results.
-
Yes, the Vera plugin hands out ids.
I can't really explain the weird behaviour you're seeing. Communication seems to work...
-
Thanks @hek for chipping in an looking at the problem @dbemowsk is experiencing. This is really beyond my knowledge an I cannot understan why it is not working. I am running the latest UI7 firmware on my Veralite test device, am I cannot reproduce this issue. Including MySensor devices is no problem even if I use static node adress.
-
So I cleared the eeprom and re-uploaded the humidity sensor sketch. Had to rebuild it from the example because the arduino IDE crashed and erased it. That has happened to me a couple times now since starting with the IDE. This is with debug turned on and viewing the serial monitor. To me it looks like it fails to get an ID from Vera. This is what I was seeing before which was why I manually assigned the ID.
Starting sensor (RNNNA-, 2.0.0) TSM:INIT TSM:RADIO:OK TSM:FPAR TSP:MSG:SEND 255-255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc: TSM:FPAR TSP:MSG:SEND 255-255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc: TSP:MSG:READ 0-0-255 s=255,c=3,t=8,pt=1,l=1,sg=0:0 TSP:MSG:FPAR RES (ID=0, dist=0) TSP:MSG:PAR OK (ID=0, dist=1) TSM:FPAR:OK TSM:ID TSP:MSG:SEND 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=ok: TSM:ID TSP:MSG:SEND 255-255-0-0 s=255,c=3,t=3,pt=0 l=0,sg=0,ft=0,st=ok: TSM:ID TSP:MSG:SEND 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=ok: TSM:ID TSP:MSG:SEND 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=ok: !TSM:CHKID:FAIL (ID=255) !TSM:FAILURE TSM:PDT
This is the Vera log from start to stop inclusion with the node trying to get an ID. Here I see no c=0 or presentation entries.
,l=0,sg=0: <0x73e23520> 50 12/27/16 12:24:41.287 luup_log:10: Arduino: Sending: 255;255;3;0;4;255 <0x73e23520> 08 12/27/16 12:24:42.769 JobHandler_LuaUPnP::HandleActionRequest device: 10 service: urn:upnp-arduino-cc:serviceId:arduino1 action: StartInclusion <0x73c23520> 08 12/27/16 12:24:42.770 JobHandler_LuaUPnP::HandleActionRequest argument DeviceNum=10 <0x73c23520> 08 12/27/16 12:24:42.770 JobHandler_LuaUPnP::HandleActionRequest argument serviceId=urn:upnp-arduino-cc:serviceId:arduino1 <0x73c23520> 08 12/27/16 12:24:42.770 JobHandler_LuaUPnP::HandleActionRequest argument action=StartInclusion <0x73c23520> 50 12/27/16 12:24:42.772 luup_log:10: Arduino: Sending: 0;0;3;0;5;1 <0x779ea320> 04 12/27/16 12:24:42.774 <0x779ea320> 50 12/27/16 12:24:43.305 luup_log:10: Arduino: Log: TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 12:24:43.307 luup_log:10: Arduino: Sending: 255;255;3;0;4;255 <0x73e23520> 50 12/27/16 12:24:45.325 luup_log:10: Arduino: Log: TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 12:24:45.327 luup_log:10: Arduino: Sending: 255;255;3;0;4;255 <0x73e23520> 50 12/27/16 12:24:51.308 luup_log:10: Arduino: Log: TSP:MSG:READ 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 12:24:51.310 luup_log:10: Arduino: Log: TSP:MSG:BC <0x73e23520> 50 12/27/16 12:24:51.314 luup_log:10: Arduino: Log: TSP:MSG:FPAR REQ (sender=255) <0x73e23520> 50 12/27/16 12:24:51.316 luup_log:10: Arduino: Log: TSP:CHKUPL:OK <0x73e23520> 50 12/27/16 12:24:51.319 luup_log:10: Arduino: Log: TSP:MSG:GWL OK <0x73e23520> 50 12/27/16 12:24:52.259 luup_log:10: Arduino: Log: TSP:MSG:SEND 0-0-255-255 s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=bc:0 <0x73e23520> 50 12/27/16 12:24:53.331 luup_log:10: Arduino: Log: TSP:MSG:READ 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 12:24:53.332 luup_log:10: Arduino: Log: TSP:MSG:BC <0x73e23520> 50 12/27/16 12:24:53.334 luup_log:10: Arduino: Log: TSP:MSG:FPAR REQ (sender=255) <0x73e23520> 50 12/27/16 12:24:53.339 luup_log:10: Arduino: Log: TSP:CHKUPL:OK (FLDCTRL) <0x73e23520> 50 12/27/16 12:24:53.340 luup_log:10: Arduino: Log: TSP:MSG:GWL OK <0x73e23520> 50 12/27/16 12:24:54.252 luup_log:10: Arduino: Log: TSP:MSG:SEND 0-0-255-255 s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=bc:0 <0x73e23520> 50 12/27/16 12:24:57.369 luup_log:10: Arduino: Log: TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 12:24:57.370 luup_log:10: Arduino: Sending: 255;255;3;0;4;255 <0x73e23520> 50 12/27/16 12:24:59.388 luup_log:10: Arduino: Log: TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 12:24:59.390 luup_log:10: Arduino: Sending: 255;255;3;0;4;255 <0x73e23520> 50 12/27/16 12:25:01.408 luup_log:10: Arduino: Log: TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 12:25:01.410 luup_log:10: Arduino: Sending: 255;255;3;0;4;255 <0x73e23520> 50 12/27/16 12:25:13.497 luup_log:10: Arduino: Log: TSP:MSG:READ 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0: <0x73e23520> 50 12/27/16 12:25:13.499 luup_log:10: Arduino: Log: TSP:MSG:BC <0x73e23520> 50 12/27/16 12:25:13.503 luup_log:10: Arduino: Log: TSP:MSG:FPAR REQ (sender=255) <0x73e23520> 50 12/27/16 12:25:13.505 luup_log:10: Arduino: Log: TSP:CHKUPL:OK <0x73e23520> 50 12/27/16 12:25:13.507 luup_log:10: Arduino: Log: TSP:MSG:GWL OK <0x73e23520> 08 12/27/16 12:25:13.563 JobHandler_LuaUPnP::HandleActionRequest device: 10 service: urn:upnp-arduino-cc:serviceId:arduino1 action: StopInclusion <0x74423520> 08 12/27/16 12:25:13.564 JobHandler_LuaUPnP::HandleActionRequest argument DeviceNum=10 <0x74423520> 08 12/27/16 12:25:13.564 JobHandler_LuaUPnP::HandleActionRequest argument serviceId=urn:upnp-arduino-cc:serviceId:arduino1 <0x74423520> 08 12/27/16 12:25:13.564 JobHandler_LuaUPnP::HandleActionRequest argument action=StopInclusion <0x74423520> 50 12/27/16 12:25:13.565 luup_log:10: Arduino: Sending: 0;0;3;0;5;0 <0x779ea320> 04 12/27/16 12:25:13.567 <0x779ea320>
I am not sure what to do next.
-
Hmm.. it looks like your Vera is sending out id 255.. (
255;255;3;0;4;255
) which usually means that all ids has been used up.https://github.com/mysensors/Vera/blob/development/L_Arduino.lua#L299
The table of used ids is build during plugin startup.. here:
https://github.com/mysensors/Vera/blob/development/L_Arduino.lua#L686I have no idea why this get filled up (or why the plugin thinks so..) when you don't have any child devices to your gateway.
-
@hek Is there any way for me to debug what is happening with the availableIds[i] array? or at least finding where it is stored and clearing it? If not, maybe I'll try restoring my unit to default and try again. I am assuming that would clear the availableIds array. The only thing I currently have set up on the unit is my 1-Wire temp sensors, and there is only 7 of them. I can rebuild those easy enough.
-
Well, it iterates over all vera devices (
luup.devices
) and checks if anyone is has the current device as parent... which means it is a child device.For each child device it adds it to the array. The problem here is that it shouldn't find any child devices.. thus the availableIds should all be filled with false.
Maybe you could add some debug logging in the section I pointed out to see what kind of devices it picks up?
-
I am more than interested in trying, I just need a little guidance on how to do that.
In the nextAvailiableRadioId() function I could do the following before it searches for an ID, I am just not sure what code to use to find out what device is defined for that ID.
for i=1,255 do if (availableIds[i] == false) then --add code to log what device is holding this spot end end
-
It might be more interesting if you'd add some logging in this area, which should appear in the log when you reload the luup engine:
https://github.com/mysensors/Vera/blob/development/L_Arduino.lua#L682-L687v contains the device. See what it contains under "variable: devices" here:
http://wiki.micasaverde.com/index.php/Luup_Lua_extensions
-
OK, so here is what I did:
-- build an lookup table for child device ids (altid -> id) local lastDev = 0 for k, v in pairs(luup.devices) do -- for debugging only remove for production run for k2, v2 in pairs(v) do if (k ~= lastDev) then luup.log("Device #" .. k .. ":" .. k2 .. "=" .. tostring(v2)) else luup.log(" " .. k2 .. "=" .. tostring(v2)) end lastDev = k end -- end debugging -- if I am the parent device if v.device_num_parent == ARDUINO_DEVICE then childIdLookupTable[v.id] = k local split = v.id:split(";") local radioId = tonumber(split[1]) availableIds[radioId] = false; end end
I did this to show me every attribute of every device that the system sees. After the luup engine restarts, I get this in the logs:
50 12/27/16 15:58:48.117 luup_log:19: Initialising One Wire Server <0x76be5520> 50 12/27/16 15:58:48.221 luup_log:27: Arduino plugin: loading library L_Arduino ... <0x76be5520> 50 12/27/16 15:58:48.239 luup_log:27: Arduino plugin: library L_Arduino loaded <0x76be5520> 50 12/27/16 15:58:48.239 luup_log:27: Arduino: urn:upnp-arduino-cc:serviceId:arduino1,PluginVersion, 1.5, 27 <0x76be5520> 50 12/27/16 15:58:48.239 luup_log:27: Arduino: Trying for a serial connection <0x76be5520> 50 12/27/16 15:58:48.240 luup_log:27: Arduino: Serial port is connected <0x76be5520> 50 12/27/16 15:58:48.240 luup_log:27: Arduino: Baud is 115200 <0x76be5520> 50 12/27/16 15:58:48.240 luup_log:27: Device #1:mac= <0x76be5520> 50 12/27/16 15:58:48.241 luup_log:27: category_num=19 <0x76be5520> 50 12/27/16 15:58:48.241 luup_log:27: description=ZWave <0x76be5520> 50 12/27/16 15:58:48.241 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.242 luup_log:27: id= <0x76be5520> 50 12/27/16 15:58:48.242 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.242 luup_log:27: ip= <0x76be5520> 50 12/27/16 15:58:48.242 luup_log:27: room_num=0 <0x76be5520> 50 12/27/16 15:58:48.242 luup_log:27: udn=uuid:4d494342-5342-5645-0001-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.243 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.243 luup_log:27: invisible=true <0x76be5520> 50 12/27/16 15:58:48.243 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.243 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.243 luup_log:27: device_num_parent=0 <0x76be5520> 50 12/27/16 15:58:48.243 luup_log:27: device_type=urn:schemas-micasaverde-com:device:ZWaveNetwork:1 <0x76be5520> 50 12/27/16 15:58:48.244 luup_log:27: Device #2:mac=000D6F000C5BC6E6 <0x76be5520> 50 12/27/16 15:58:48.244 luup_log:27: category_num=0 <0x76be5520> 50 12/27/16 15:58:48.244 luup_log:27: description=Zigbee Network <0x76be5520> 50 12/27/16 15:58:48.244 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.245 luup_log:27: id= <0x76be5520> 50 12/27/16 15:58:48.245 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.245 luup_log:27: ip= <0x76be5520> 50 12/27/16 15:58:48.245 luup_log:27: room_num=0 <0x76be5520> 50 12/27/16 15:58:48.245 luup_log:27: udn=uuid:4d494342-5342-5645-0002-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.246 luup_log:27: subcategory_num=-1 <0x76be5520> 50 12/27/16 15:58:48.246 luup_log:27: invisible=true <0x76be5520> 50 12/27/16 15:58:48.246 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.246 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.246 luup_log:27: device_num_parent=0 <0x76be5520> 50 12/27/16 15:58:48.247 luup_log:27: device_type=urn:schemas-micasaverde-com:device:ZigbeeNetwork:1 <0x76be5520> 50 12/27/16 15:58:48.247 luup_log:27: Device #3:mac=B4:A5:EF:ED:58:1D <0x76be5520> 50 12/27/16 15:58:48.247 luup_log:27: category_num=0 <0x76be5520> 50 12/27/16 15:58:48.247 luup_log:27: description=Bluetooth Network <0x76be5520> 50 12/27/16 15:58:48.247 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.247 luup_log:27: id= <0x76be5520> 50 12/27/16 15:58:48.248 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.248 luup_log:27: ip= <0x76be5520> 50 12/27/16 15:58:48.248 luup_log:27: room_num=0 <0x76be5520> 50 12/27/16 15:58:48.248 luup_log:27: udn=uuid:4d494342-5342-5645-0003-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.249 luup_log:27: subcategory_num=-1 <0x76be5520> 50 12/27/16 15:58:48.249 luup_log:27: invisible=true <0x76be5520> 50 12/27/16 15:58:48.249 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.249 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.249 luup_log:27: device_num_parent=0 <0x76be5520> 50 12/27/16 15:58:48.249 luup_log:27: device_type=urn:schemas-micasaverde-com:device:BluetoothNetwork:1 <0x76be5520> 50 12/27/16 15:58:48.250 luup_log:27: Device #20:mac= <0x76be5520> 50 12/27/16 15:58:48.250 luup_log:27: category_num=17 <0x76be5520> 50 12/27/16 15:58:48.250 luup_log:27: description=Bar South Temp <0x76be5520> 50 12/27/16 15:58:48.250 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.250 luup_log:27: id=FE0000047CE7AE28:Temperature <0x76be5520> 50 12/27/16 15:58:48.251 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.251 luup_log:27: ip=192.168.1.11 <0x76be5520> 50 12/27/16 15:58:48.251 luup_log:27: room_num=10 <0x76be5520> 50 12/27/16 15:58:48.251 luup_log:27: udn=uuid:4d494342-5342-5645-0014-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.251 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.252 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.252 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.252 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.252 luup_log:27: device_num_parent=19 <0x76be5520> 50 12/27/16 15:58:48.252 luup_log:27: device_type=urn:schemas-micasaverde-com:device:TemperatureSensor:1 <0x76be5520> 50 12/27/16 15:58:48.253 luup_log:27: Device #21:mac= <0x76be5520> 50 12/27/16 15:58:48.253 luup_log:27: category_num=17 <0x76be5520> 50 12/27/16 15:58:48.253 luup_log:27: description=Guest Bedroom Temp <0x76be5520> 50 12/27/16 15:58:48.253 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.253 luup_log:27: id=9A02146426ECFF28:Temperature <0x76be5520> 50 12/27/16 15:58:48.254 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.254 luup_log:27: ip=192.168.1.11 <0x76be5520> 50 12/27/16 15:58:48.254 luup_log:27: room_num=9 <0x76be5520> 50 12/27/16 15:58:48.254 luup_log:27: udn=uuid:4d494342-5342-5645-0015-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.254 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.255 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.255 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.255 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.255 luup_log:27: device_num_parent=19 <0x76be5520> 50 12/27/16 15:58:48.255 luup_log:27: device_type=urn:schemas-micasaverde-com:device:TemperatureSensor:1 <0x76be5520> 50 12/27/16 15:58:48.256 luup_log:27: Device #22:mac= <0x76be5520> 50 12/27/16 15:58:48.256 luup_log:27: category_num=17 <0x76be5520> 50 12/27/16 15:58:48.256 luup_log:27: description=Office Temp <0x76be5520> 50 12/27/16 15:58:48.256 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.257 luup_log:27: id=C80000047D69C028:Temperature <0x76be5520> 50 12/27/16 15:58:48.257 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.257 luup_log:27: ip=192.168.1.11 <0x76be5520> 50 12/27/16 15:58:48.257 luup_log:27: room_num=7 <0x76be5520> 50 12/27/16 15:58:48.257 luup_log:27: udn=uuid:4d494342-5342-5645-0016-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.258 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.258 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.258 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.258 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.258 luup_log:27: device_num_parent=19 <0x76be5520> 50 12/27/16 15:58:48.258 luup_log:27: device_type=urn:schemas-micasaverde-com:device:TemperatureSensor:1 <0x76be5520> 50 12/27/16 15:58:48.259 luup_log:27: Device #23:mac= <0x76be5520> 50 12/27/16 15:58:48.259 luup_log:27: category_num=17 <0x76be5520> 50 12/27/16 15:58:48.259 luup_log:27: description=Master Bedroom Temp <0x76be5520> 50 12/27/16 15:58:48.259 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.259 luup_log:27: id=5602146472A5FF28:Temperature <0x76be5520> 50 12/27/16 15:58:48.260 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.260 luup_log:27: ip=192.168.1.11 <0x76be5520> 50 12/27/16 15:58:48.260 luup_log:27: room_num=8 <0x76be5520> 50 12/27/16 15:58:48.260 luup_log:27: udn=uuid:4d494342-5342-5645-0017-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.260 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.261 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.261 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.261 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.261 luup_log:27: device_num_parent=19 <0x76be5520> 50 12/27/16 15:58:48.261 luup_log:27: device_type=urn:schemas-micasaverde-com:device:TemperatureSensor:1 <0x76be5520> 50 12/27/16 15:58:48.262 luup_log:27: Device #24:mac= <0x76be5520> 50 12/27/16 15:58:48.262 luup_log:27: category_num=17 <0x76be5520> 50 12/27/16 15:58:48.262 luup_log:27: description=Kitchen Hall Temp <0x76be5520> 50 12/27/16 15:58:48.262 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.262 luup_log:27: id=9E000003A827AF28:Temperature <0x76be5520> 50 12/27/16 15:58:48.263 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.263 luup_log:27: ip=192.168.1.11 <0x76be5520> 50 12/27/16 15:58:48.263 luup_log:27: room_num=3 <0x76be5520> 50 12/27/16 15:58:48.263 luup_log:27: udn=uuid:4d494342-5342-5645-0018-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.263 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.264 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.264 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.264 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.264 luup_log:27: device_num_parent=19 <0x76be5520> 50 12/27/16 15:58:48.264 luup_log:27: device_type=urn:schemas-micasaverde-com:device:TemperatureSensor:1 <0x76be5520> 50 12/27/16 15:58:48.265 luup_log:27: Device #25:mac= <0x76be5520> 50 12/27/16 15:58:48.265 luup_log:27: category_num=17 <0x76be5520> 50 12/27/16 15:58:48.265 luup_log:27: description=Bar North Temp <0x76be5520> 50 12/27/16 15:58:48.265 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.265 luup_log:27: id=7A000003A7472828:Temperature <0x76be5520> 50 12/27/16 15:58:48.266 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.266 luup_log:27: ip=192.168.1.11 <0x76be5520> 50 12/27/16 15:58:48.266 luup_log:27: room_num=10 <0x76be5520> 50 12/27/16 15:58:48.266 luup_log:27: udn=uuid:4d494342-5342-5645-0019-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.266 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.267 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.267 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.267 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.267 luup_log:27: device_num_parent=19 <0x76be5520> 50 12/27/16 15:58:48.267 luup_log:27: device_type=urn:schemas-micasaverde-com:device:TemperatureSensor:1 <0x76be5520> 50 12/27/16 15:58:48.268 luup_log:27: Device #26:mac= <0x76be5520> 50 12/27/16 15:58:48.268 luup_log:27: category_num=17 <0x76be5520> 50 12/27/16 15:58:48.268 luup_log:27: description=Outside Temp <0x76be5520> 50 12/27/16 15:58:48.268 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.268 luup_log:27: id=F60000047DA93228:Temperature <0x76be5520> 50 12/27/16 15:58:48.269 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.269 luup_log:27: ip=192.168.1.11 <0x76be5520> 50 12/27/16 15:58:48.269 luup_log:27: room_num=13 <0x76be5520> 50 12/27/16 15:58:48.269 luup_log:27: udn=uuid:4d494342-5342-5645-001a-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.269 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.269 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.270 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.270 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.270 luup_log:27: device_num_parent=19 <0x76be5520> 50 12/27/16 15:58:48.270 luup_log:27: device_type=urn:schemas-micasaverde-com:device:TemperatureSensor:1 <0x76be5520> 50 12/27/16 15:58:48.270 luup_log:27: Device #27:mac= <0x76be5520> 50 12/27/16 15:58:48.271 luup_log:27: category_num=0 <0x76be5520> 50 12/27/16 15:58:48.271 luup_log:27: description=MySensors Plugin <0x76be5520> 50 12/27/16 15:58:48.271 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.271 luup_log:27: id= <0x76be5520> 50 12/27/16 15:58:48.271 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.272 luup_log:27: ip= <0x76be5520> 50 12/27/16 15:58:48.272 luup_log:27: room_num=0 <0x76be5520> 50 12/27/16 15:58:48.272 luup_log:27: udn=uuid:4d494342-5342-5645-001b-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.272 luup_log:27: subcategory_num=-1 <0x76be5520> 50 12/27/16 15:58:48.272 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.273 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.273 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.273 luup_log:27: device_num_parent=0 <0x76be5520> 50 12/27/16 15:58:48.273 luup_log:27: device_type=urn:schemas-arduino-cc:device:arduino:1 <0x76be5520> 50 12/27/16 15:58:48.273 luup_log:27: Device #5:mac= <0x76be5520> 50 12/27/16 15:58:48.274 luup_log:27: category_num=0 <0x76be5520> 50 12/27/16 15:58:48.274 luup_log:27: description=Serial_Portlist_2144272085 <0x76be5520> 50 12/27/16 15:58:48.274 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.274 luup_log:27: id=50009936 <0x76be5520> 50 12/27/16 15:58:48.274 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.275 luup_log:27: ip=127.0.0.1 <0x76be5520> 50 12/27/16 15:58:48.275 luup_log:27: room_num=0 <0x76be5520> 50 12/27/16 15:58:48.275 luup_log:27: udn=uuid:4d494342-5342-5645-0005-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.275 luup_log:27: subcategory_num=-1 <0x76be5520> 50 12/27/16 15:58:48.275 luup_log:27: invisible=true <0x76be5520> 50 12/27/16 15:58:48.276 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.276 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.276 luup_log:27: device_num_parent=0 <0x76be5520> 50 12/27/16 15:58:48.276 luup_log:27: device_type=urn:micasaverde-org:device:SerialPortRoot:1 <0x76be5520> 50 12/27/16 15:58:48.276 luup_log:27: Device #4:mac= <0x76be5520> 50 12/27/16 15:58:48.277 luup_log:27: category_num=14 <0x76be5520> 50 12/27/16 15:58:48.277 luup_log:27: description=_Scene Controller <0x76be5520> 50 12/27/16 15:58:48.277 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.277 luup_log:27: id=1 <0x76be5520> 50 12/27/16 15:58:48.277 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.278 luup_log:27: ip= <0x76be5520> 50 12/27/16 15:58:48.278 luup_log:27: room_num=0 <0x76be5520> 50 12/27/16 15:58:48.278 luup_log:27: udn=uuid:4d494342-5342-5645-0004-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.278 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.278 luup_log:27: invisible=true <0x76be5520> 50 12/27/16 15:58:48.278 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.279 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.279 luup_log:27: device_num_parent=1 <0x76be5520> 50 12/27/16 15:58:48.279 luup_log:27: device_type=urn:schemas-micasaverde-com:device:SceneController:1 <0x76be5520> 50 12/27/16 15:58:48.279 luup_log:27: Device #6:mac= <0x76be5520> 50 12/27/16 15:58:48.279 luup_log:27: category_num=13 <0x76be5520> 50 12/27/16 15:58:48.280 luup_log:27: description=pl2303 <0x76be5520> 50 12/27/16 15:58:48.280 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.280 luup_log:27: id=usb-xhci-hcd-1.1 <0x76be5520> 50 12/27/16 15:58:48.280 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.280 luup_log:27: ip=127.0.0.1 <0x76be5520> 50 12/27/16 15:58:48.281 luup_log:27: room_num=0 <0x76be5520> 50 12/27/16 15:58:48.281 luup_log:27: udn=uuid:4d494342-5342-5645-0006-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.281 luup_log:27: subcategory_num=0 <0x76be5520> 50 12/27/16 15:58:48.281 luup_log:27: invisible=true <0x76be5520> 50 12/27/16 15:58:48.281 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.282 luup_log:27: embedded=true <0x76be5520> 50 12/27/16 15:58:48.282 luup_log:27: device_num_parent=5 <0x76be5520> 50 12/27/16 15:58:48.282 luup_log:27: device_type=urn:micasaverde-org:device:SerialPort:1 <0x76be5520> 50 12/27/16 15:58:48.282 luup_log:27: Device #19:mac= <0x76be5520> 50 12/27/16 15:58:48.282 luup_log:27: category_num=0 <0x76be5520> 50 12/27/16 15:58:48.283 luup_log:27: description=OWServer <0x76be5520> 50 12/27/16 15:58:48.283 luup_log:27: user= <0x76be5520> 50 12/27/16 15:58:48.283 luup_log:27: id= <0x76be5520> 50 12/27/16 15:58:48.283 luup_log:27: pass= <0x76be5520> 50 12/27/16 15:58:48.283 luup_log:27: ip=192.168.1.11 <0x76be5520> 50 12/27/16 15:58:48.284 luup_log:27: room_num=0 <0x76be5520> 50 12/27/16 15:58:48.284 luup_log:27: udn=uuid:4d494342-5342-5645-0013-000002fb1750 <0x76be5520> 50 12/27/16 15:58:48.284 luup_log:27: subcategory_num=-1 <0x76be5520> 50 12/27/16 15:58:48.284 luup_log:27: invisible=false <0x76be5520> 50 12/27/16 15:58:48.284 luup_log:27: hidden=false <0x76be5520> 50 12/27/16 15:58:48.285 luup_log:27: embedded=false <0x76be5520> 50 12/27/16 15:58:48.285 luup_log:27: device_num_parent=0 <0x76be5520> 50 12/27/16 15:58:48.285 luup_log:27: device_type=urn:cd-jackson-com:device:OWServer:1 <0x76be5520> 50 12/27/16 15:58:48.286 luup_log:27: Arduino: Sending: 0;0;3;0;2;Get Version <0x76be5520> 50 12/27/16 15:58:49.066 luup_log:27: Arduino: Log: TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0: <0x739e5520> 50 12/27/16 15:58:49.067 luup_log:27: Arduino: Sending: 255;255;3;0;4;1 <0x739e5520> 50 12/27/16 15:58:50.547 luup_log:27: Arduino: Log: TSP:SANCHK:OK <0x739e5520> 50 12/27/16 15:58:51.085 luup_log:27: Arduino: Log: TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0: <0x739e5520> 50 12/27/16 15:58:51.086 luup_log:27: Arduino: Sending: 255;255;3;0;4;2 <0x739e5520>
The highest device # it shows is 27 which doesn't even come close to hitting the 254 mark. I am baffled.
-
Out of curiosity, what is the difference between log() and luup.log()?
-
log is a local function defined a bit higher up in the file.
Ok, what does the
availableIds
contain after the device loop?for i=1,MAX_RADIO_ID do
log(availableIds[i]);
end
-
So here is the code now:
-- build an lookup table for child device ids (altid -> id) local lastDev = 0 for k, v in pairs(luup.devices) do -- for debugging only remove for production run for k2, v2 in pairs(v) do if (k ~= lastDev) then luup.log("Device #" .. k .. ":" .. k2 .. "=" .. tostring(v2)) else luup.log(" " .. k2 .. "=" .. tostring(v2)) end lastDev = k end -- end debugging -- if I am the parent device if v.device_num_parent == ARDUINO_DEVICE then childIdLookupTable[v.id] = k local split = v.id:split(";") local radioId = tonumber(split[1]) availableIds[radioId] = false; end end for i=1, MAX_RADIO_ID do log("id #" .. i .. ": " .. (availableIds[i] and "TRUE" or "FALSE")); end
Just doing:
log(availableIds[i]);
crashed the script because the log method apparently couldn't handle boolean values. So I had it print the ID number and used a ternary operator to display true or false. I think that use of a ternary is correct for lua. Anyways, here is the log:
50 12/27/16 19:45:33.285 luup_log:27: Device #19:mac= <0x77383520> 50 12/27/16 19:45:33.285 luup_log:27: category_num=0 <0x77383520> 50 12/27/16 19:45:33.285 luup_log:27: description=OWServer <0x77383520> 50 12/27/16 19:45:33.285 luup_log:27: user= <0x77383520> 50 12/27/16 19:45:33.286 luup_log:27: id= <0x77383520> 50 12/27/16 19:45:33.286 luup_log:27: pass= <0x77383520> 50 12/27/16 19:45:33.286 luup_log:27: ip=192.168.1.11 <0x77383520> 50 12/27/16 19:45:33.286 luup_log:27: room_num=0 <0x77383520> 50 12/27/16 19:45:33.286 luup_log:27: udn=uuid:4d494342-5342-5645-0013-000002fb1750 <0x77383520> 50 12/27/16 19:45:33.286 luup_log:27: subcategory_num=-1 <0x77383520> 50 12/27/16 19:45:33.287 luup_log:27: invisible=false <0x77383520> 50 12/27/16 19:45:33.287 luup_log:27: hidden=false <0x77383520> 50 12/27/16 19:45:33.287 luup_log:27: embedded=false <0x77383520> 50 12/27/16 19:45:33.287 luup_log:27: device_num_parent=0 <0x77383520> 50 12/27/16 19:45:33.287 luup_log:27: device_type=urn:cd-jackson-com:device:OWServer:1 <0x77383520> 50 12/27/16 19:45:33.288 luup_log:27: Arduino: id #1: TRUE <0x77383520> 50 12/27/16 19:45:33.288 luup_log:27: Arduino: id #2: TRUE <0x77383520> 50 12/27/16 19:45:33.288 luup_log:27: Arduino: id #3: TRUE <0x77383520> 50 12/27/16 19:45:33.288 luup_log:27: Arduino: id #4: TRUE <0x77383520> 50 12/27/16 19:45:33.289 luup_log:27: Arduino: id #5: TRUE <0x77383520> 50 12/27/16 19:45:33.289 luup_log:27: Arduino: id #6: TRUE <0x77383520> 50 12/27/16 19:45:33.289 luup_log:27: Arduino: id #7: TRUE <0x77383520> 50 12/27/16 19:45:33.289 luup_log:27: Arduino: id #8: TRUE <0x77383520> 50 12/27/16 19:45:33.289 luup_log:27: Arduino: id #9: TRUE <0x77383520> 50 12/27/16 19:45:33.290 luup_log:27: Arduino: id #10: TRUE <0x77383520> 50 12/27/16 19:45:33.290 luup_log:27: Arduino: id #11: TRUE <0x77383520> 50 12/27/16 19:45:33.290 luup_log:27: Arduino: id #12: TRUE <0x77383520> 50 12/27/16 19:45:33.290 luup_log:27: Arduino: id #13: TRUE <0x77383520> 50 12/27/16 19:45:33.291 luup_log:27: Arduino: id #14: TRUE <0x77383520> 50 12/27/16 19:45:33.291 luup_log:27: Arduino: id #15: TRUE <0x77383520> 50 12/27/16 19:45:33.291 luup_log:27: Arduino: id #16: TRUE <0x77383520> 50 12/27/16 19:45:33.291 luup_log:27: Arduino: id #17: TRUE <0x77383520> 50 12/27/16 19:45:33.292 luup_log:27: Arduino: id #18: TRUE <0x77383520> 50 12/27/16 19:45:33.292 luup_log:27: Arduino: id #19: TRUE <0x77383520> 50 12/27/16 19:45:33.292 luup_log:27: Arduino: id #20: TRUE <0x77383520> 50 12/27/16 19:45:33.292 luup_log:27: Arduino: id #21: TRUE <0x77383520> 50 12/27/16 19:45:33.292 luup_log:27: Arduino: id #22: TRUE <0x77383520> 50 12/27/16 19:45:33.293 luup_log:27: Arduino: id #23: TRUE <0x77383520> 50 12/27/16 19:45:33.293 luup_log:27: Arduino: id #24: TRUE <0x77383520> 50 12/27/16 19:45:33.293 luup_log:27: Arduino: id #25: TRUE <0x77383520> 50 12/27/16 19:45:33.293 luup_log:27: Arduino: id #26: TRUE <0x77383520> 50 12/27/16 19:45:33.294 luup_log:27: Arduino: id #27: TRUE <0x77383520> 50 12/27/16 19:45:33.294 luup_log:27: Arduino: id #28: TRUE <0x77383520> 50 12/27/16 19:45:33.294 luup_log:27: Arduino: id #29: TRUE <0x77383520> 50 12/27/16 19:45:33.294 luup_log:27: Arduino: id #30: TRUE <0x77383520> 50 12/27/16 19:45:33.294 luup_log:27: Arduino: id #31: TRUE <0x77383520> 50 12/27/16 19:45:33.295 luup_log:27: Arduino: id #32: TRUE <0x77383520> 50 12/27/16 19:45:33.295 luup_log:27: Arduino: id #33: TRUE <0x77383520> 50 12/27/16 19:45:33.295 luup_log:27: Arduino: id #34: TRUE <0x77383520> 50 12/27/16 19:45:33.295 luup_log:27: Arduino: id #35: TRUE <0x77383520> 50 12/27/16 19:45:33.295 luup_log:27: Arduino: id #36: TRUE <0x77383520> 50 12/27/16 19:45:33.296 luup_log:27: Arduino: id #37: TRUE <0x77383520> 50 12/27/16 19:45:33.296 luup_log:27: Arduino: id #38: TRUE <0x77383520> 50 12/27/16 19:45:33.296 luup_log:27: Arduino: id #39: TRUE <0x77383520> 50 12/27/16 19:45:33.296 luup_log:27: Arduino: id #40: TRUE <0x77383520> 50 12/27/16 19:45:33.296 luup_log:27: Arduino: id #41: TRUE <0x77383520> 50 12/27/16 19:45:33.297 luup_log:27: Arduino: id #42: TRUE <0x77383520> 50 12/27/16 19:45:33.297 luup_log:27: Arduino: id #43: TRUE <0x77383520> 50 12/27/16 19:45:33.297 luup_log:27: Arduino: id #44: TRUE <0x77383520> 50 12/27/16 19:45:33.297 luup_log:27: Arduino: id #45: TRUE <0x77383520> 50 12/27/16 19:45:33.297 luup_log:27: Arduino: id #46: TRUE <0x77383520> 50 12/27/16 19:45:33.298 luup_log:27: Arduino: id #47: TRUE <0x77383520> 50 12/27/16 19:45:33.298 luup_log:27: Arduino: id #48: TRUE <0x77383520> 50 12/27/16 19:45:33.298 luup_log:27: Arduino: id #49: TRUE <0x77383520> 50 12/27/16 19:45:33.298 luup_log:27: Arduino: id #50: TRUE <0x77383520> 50 12/27/16 19:45:33.298 luup_log:27: Arduino: id #51: TRUE <0x77383520> 50 12/27/16 19:45:33.299 luup_log:27: Arduino: id #52: TRUE <0x77383520> 50 12/27/16 19:45:33.299 luup_log:27: Arduino: id #53: TRUE <0x77383520> 50 12/27/16 19:45:33.299 luup_log:27: Arduino: id #54: TRUE <0x77383520> 50 12/27/16 19:45:33.299 luup_log:27: Arduino: id #55: TRUE <0x77383520> 50 12/27/16 19:45:33.299 luup_log:27: Arduino: id #56: TRUE <0x77383520> 50 12/27/16 19:45:33.300 luup_log:27: Arduino: id #57: TRUE <0x77383520> 50 12/27/16 19:45:33.300 luup_log:27: Arduino: id #58: TRUE <0x77383520> 50 12/27/16 19:45:33.300 luup_log:27: Arduino: id #59: TRUE <0x77383520> 50 12/27/16 19:45:33.300 luup_log:27: Arduino: id #60: TRUE <0x77383520> 50 12/27/16 19:45:33.301 luup_log:27: Arduino: id #61: TRUE <0x77383520> 50 12/27/16 19:45:33.301 luup_log:27: Arduino: id #62: TRUE <0x77383520> 50 12/27/16 19:45:33.301 luup_log:27: Arduino: id #63: TRUE <0x77383520> 50 12/27/16 19:45:33.301 luup_log:27: Arduino: id #64: TRUE <0x77383520> 50 12/27/16 19:45:33.302 luup_log:27: Arduino: id #65: TRUE <0x77383520> 50 12/27/16 19:45:33.302 luup_log:27: Arduino: id #66: TRUE <0x77383520> 50 12/27/16 19:45:33.302 luup_log:27: Arduino: id #67: TRUE <0x77383520> 50 12/27/16 19:45:33.302 luup_log:27: Arduino: id #68: TRUE <0x77383520> 50 12/27/16 19:45:33.302 luup_log:27: Arduino: id #69: TRUE <0x77383520> 50 12/27/16 19:45:33.303 luup_log:27: Arduino: id #70: TRUE <0x77383520> 50 12/27/16 19:45:33.303 luup_log:27: Arduino: id #71: TRUE <0x77383520> 50 12/27/16 19:45:33.303 luup_log:27: Arduino: id #72: TRUE <0x77383520> 50 12/27/16 19:45:33.303 luup_log:27: Arduino: id #73: TRUE <0x77383520> 50 12/27/16 19:45:33.303 luup_log:27: Arduino: id #74: TRUE <0x77383520> 50 12/27/16 19:45:33.304 luup_log:27: Arduino: id #75: TRUE <0x77383520> 50 12/27/16 19:45:33.304 luup_log:27: Arduino: id #76: TRUE <0x77383520> 50 12/27/16 19:45:33.304 luup_log:27: Arduino: id #77: TRUE <0x77383520> 50 12/27/16 19:45:33.304 luup_log:27: Arduino: id #78: TRUE <0x77383520> 50 12/27/16 19:45:33.304 luup_log:27: Arduino: id #79: TRUE <0x77383520> 50 12/27/16 19:45:33.304 luup_log:27: Arduino: id #80: TRUE <0x77383520> 50 12/27/16 19:45:33.305 luup_log:27: Arduino: id #81: TRUE <0x77383520> 50 12/27/16 19:45:33.305 luup_log:27: Arduino: id #82: TRUE <0x77383520> 50 12/27/16 19:45:33.305 luup_log:27: Arduino: id #83: TRUE <0x77383520> 50 12/27/16 19:45:33.305 luup_log:27: Arduino: id #84: TRUE <0x77383520> 50 12/27/16 19:45:33.306 luup_log:27: Arduino: id #85: TRUE <0x77383520> 50 12/27/16 19:45:33.306 luup_log:27: Arduino: id #86: TRUE <0x77383520> 50 12/27/16 19:45:33.306 luup_log:27: Arduino: id #87: TRUE <0x77383520> 50 12/27/16 19:45:33.306 luup_log:27: Arduino: id #88: TRUE <0x77383520> 50 12/27/16 19:45:33.306 luup_log:27: Arduino: id #89: TRUE <0x77383520> 50 12/27/16 19:45:33.307 luup_log:27: Arduino: id #90: TRUE <0x77383520> 50 12/27/16 19:45:33.307 luup_log:27: Arduino: id #91: TRUE <0x77383520> 50 12/27/16 19:45:33.307 luup_log:27: Arduino: id #92: TRUE <0x77383520> 50 12/27/16 19:45:33.307 luup_log:27: Arduino: id #93: TRUE <0x77383520> 50 12/27/16 19:45:33.307 luup_log:27: Arduino: id #94: TRUE <0x77383520> 50 12/27/16 19:45:33.308 luup_log:27: Arduino: id #95: TRUE <0x77383520> 50 12/27/16 19:45:33.308 luup_log:27: Arduino: id #96: TRUE <0x77383520> 50 12/27/16 19:45:33.308 luup_log:27: Arduino: id #97: TRUE <0x77383520> 50 12/27/16 19:45:33.308 luup_log:27: Arduino: id #98: TRUE <0x77383520> 50 12/27/16 19:45:33.308 luup_log:27: Arduino: id #99: TRUE <0x77383520> 50 12/27/16 19:45:33.309 luup_log:27: Arduino: id #100: TRUE <0x77383520> 50 12/27/16 19:45:33.309 luup_log:27: Arduino: id #101: TRUE <0x77383520> 50 12/27/16 19:45:33.309 luup_log:27: Arduino: id #102: TRUE <0x77383520> 50 12/27/16 19:45:33.309 luup_log:27: Arduino: id #103: TRUE <0x77383520> 50 12/27/16 19:45:33.309 luup_log:27: Arduino: id #104: TRUE <0x77383520> 50 12/27/16 19:45:33.310 luup_log:27: Arduino: id #105: TRUE <0x77383520> 50 12/27/16 19:45:33.310 luup_log:27: Arduino: id #106: TRUE <0x77383520> 50 12/27/16 19:45:33.310 luup_log:27: Arduino: id #107: TRUE <0x77383520> 50 12/27/16 19:45:33.310 luup_log:27: Arduino: id #108: TRUE <0x77383520> 50 12/27/16 19:45:33.310 luup_log:27: Arduino: id #109: TRUE <0x77383520> 50 12/27/16 19:45:33.311 luup_log:27: Arduino: id #110: TRUE <0x77383520> 50 12/27/16 19:45:33.311 luup_log:27: Arduino: id #111: TRUE <0x77383520> 50 12/27/16 19:45:33.311 luup_log:27: Arduino: id #112: TRUE <0x77383520> 50 12/27/16 19:45:33.311 luup_log:27: Arduino: id #113: TRUE <0x77383520> 50 12/27/16 19:45:33.312 luup_log:27: Arduino: id #114: TRUE <0x77383520> 50 12/27/16 19:45:33.312 luup_log:27: Arduino: id #115: TRUE <0x77383520> 50 12/27/16 19:45:33.312 luup_log:27: Arduino: id #116: TRUE <0x77383520> 50 12/27/16 19:45:33.312 luup_log:27: Arduino: id #117: TRUE <0x77383520> 50 12/27/16 19:45:33.313 luup_log:27: Arduino: id #118: TRUE <0x77383520> 50 12/27/16 19:45:33.313 luup_log:27: Arduino: id #119: TRUE <0x77383520> 50 12/27/16 19:45:33.313 luup_log:27: Arduino: id #120: TRUE <0x77383520> 50 12/27/16 19:45:33.313 luup_log:27: Arduino: id #121: TRUE <0x77383520> 50 12/27/16 19:45:33.313 luup_log:27: Arduino: id #122: TRUE <0x77383520> 50 12/27/16 19:45:33.314 luup_log:27: Arduino: id #123: TRUE <0x77383520> 50 12/27/16 19:45:33.314 luup_log:27: Arduino: id #124: TRUE <0x77383520> 50 12/27/16 19:45:33.314 luup_log:27: Arduino: id #125: TRUE <0x77383520> 50 12/27/16 19:45:33.314 luup_log:27: Arduino: id #126: TRUE <0x77383520> 50 12/27/16 19:45:33.314 luup_log:27: Arduino: id #127: TRUE <0x77383520> 50 12/27/16 19:45:33.315 luup_log:27: Arduino: id #128: TRUE <0x77383520> 50 12/27/16 19:45:33.315 luup_log:27: Arduino: id #129: TRUE <0x77383520> 50 12/27/16 19:45:33.315 luup_log:27: Arduino: id #130: TRUE <0x77383520> 50 12/27/16 19:45:33.315 luup_log:27: Arduino: id #131: TRUE <0x77383520> 50 12/27/16 19:45:33.315 luup_log:27: Arduino: id #132: TRUE <0x77383520> 50 12/27/16 19:45:33.316 luup_log:27: Arduino: id #133: TRUE <0x77383520> 50 12/27/16 19:45:33.316 luup_log:27: Arduino: id #134: TRUE <0x77383520> 50 12/27/16 19:45:33.316 luup_log:27: Arduino: id #135: TRUE <0x77383520> 50 12/27/16 19:45:33.316 luup_log:27: Arduino: id #136: TRUE <0x77383520> 50 12/27/16 19:45:33.316 luup_log:27: Arduino: id #137: TRUE <0x77383520> 50 12/27/16 19:45:33.317 luup_log:27: Arduino: id #138: TRUE <0x77383520> 50 12/27/16 19:45:33.317 luup_log:27: Arduino: id #139: TRUE <0x77383520> 50 12/27/16 19:45:33.317 luup_log:27: Arduino: id #140: TRUE <0x77383520> 50 12/27/16 19:45:33.317 luup_log:27: Arduino: id #141: TRUE <0x77383520> 50 12/27/16 19:45:33.318 luup_log:27: Arduino: id #142: TRUE <0x77383520> 50 12/27/16 19:45:33.318 luup_log:27: Arduino: id #143: TRUE <0x77383520> 50 12/27/16 19:45:33.318 luup_log:27: Arduino: id #144: TRUE <0x77383520> 50 12/27/16 19:45:33.318 luup_log:27: Arduino: id #145: TRUE <0x77383520> 50 12/27/16 19:45:33.318 luup_log:27: Arduino: id #146: TRUE <0x77383520> 50 12/27/16 19:45:33.318 luup_log:27: Arduino: id #147: TRUE <0x77383520> 50 12/27/16 19:45:33.319 luup_log:27: Arduino: id #148: TRUE <0x77383520> 50 12/27/16 19:45:33.319 luup_log:27: Arduino: id #149: TRUE <0x77383520> 50 12/27/16 19:45:33.319 luup_log:27: Arduino: id #150: TRUE <0x77383520> 50 12/27/16 19:45:33.319 luup_log:27: Arduino: id #151: TRUE <0x77383520> 50 12/27/16 19:45:33.319 luup_log:27: Arduino: id #152: TRUE <0x77383520> 50 12/27/16 19:45:33.320 luup_log:27: Arduino: id #153: TRUE <0x77383520> 50 12/27/16 19:45:33.320 luup_log:27: Arduino: id #154: TRUE <0x77383520> 50 12/27/16 19:45:33.320 luup_log:27: Arduino: id #155: TRUE <0x77383520> 50 12/27/16 19:45:33.320 luup_log:27: Arduino: id #156: TRUE <0x77383520> 50 12/27/16 19:45:33.320 luup_log:27: Arduino: id #157: TRUE <0x77383520> 50 12/27/16 19:45:33.321 luup_log:27: Arduino: id #158: TRUE <0x77383520> 50 12/27/16 19:45:33.321 luup_log:27: Arduino: id #159: TRUE <0x77383520> 50 12/27/16 19:45:33.321 luup_log:27: Arduino: id #160: TRUE <0x77383520> 50 12/27/16 19:45:33.321 luup_log:27: Arduino: id #161: TRUE <0x77383520> 50 12/27/16 19:45:33.322 luup_log:27: Arduino: id #162: TRUE <0x77383520> 50 12/27/16 19:45:33.322 luup_log:27: Arduino: id #163: TRUE <0x77383520> 50 12/27/16 19:45:33.322 luup_log:27: Arduino: id #164: TRUE <0x77383520> 50 12/27/16 19:45:33.322 luup_log:27: Arduino: id #165: TRUE <0x77383520> 50 12/27/16 19:45:33.323 luup_log:27: Arduino: id #166: TRUE <0x77383520> 50 12/27/16 19:45:33.323 luup_log:27: Arduino: id #167: TRUE <0x77383520> 50 12/27/16 19:45:33.323 luup_log:27: Arduino: id #168: TRUE <0x77383520> 50 12/27/16 19:45:33.323 luup_log:27: Arduino: id #169: TRUE <0x77383520> 50 12/27/16 19:45:33.323 luup_log:27: Arduino: id #170: TRUE <0x77383520> 50 12/27/16 19:45:33.324 luup_log:27: Arduino: id #171: TRUE <0x77383520> 50 12/27/16 19:45:33.324 luup_log:27: Arduino: id #172: TRUE <0x77383520> 50 12/27/16 19:45:33.324 luup_log:27: Arduino: id #173: TRUE <0x77383520> 50 12/27/16 19:45:33.324 luup_log:27: Arduino: id #174: TRUE <0x77383520> 50 12/27/16 19:45:33.324 luup_log:27: Arduino: id #175: TRUE <0x77383520> 50 12/27/16 19:45:33.325 luup_log:27: Arduino: id #176: TRUE <0x77383520> 50 12/27/16 19:45:33.325 luup_log:27: Arduino: id #177: TRUE <0x77383520> 50 12/27/16 19:45:33.325 luup_log:27: Arduino: id #178: TRUE <0x77383520> 50 12/27/16 19:45:33.325 luup_log:27: Arduino: id #179: TRUE <0x77383520> 50 12/27/16 19:45:33.326 luup_log:27: Arduino: id #180: TRUE <0x77383520> 50 12/27/16 19:45:33.326 luup_log:27: Arduino: id #181: TRUE <0x77383520> 50 12/27/16 19:45:33.326 luup_log:27: Arduino: id #182: TRUE <0x77383520> 50 12/27/16 19:45:33.326 luup_log:27: Arduino: id #183: TRUE <0x77383520> 50 12/27/16 19:45:33.326 luup_log:27: Arduino: id #184: TRUE <0x77383520> 50 12/27/16 19:45:33.327 luup_log:27: Arduino: id #185: TRUE <0x77383520> 50 12/27/16 19:45:33.327 luup_log:27: Arduino: id #186: TRUE <0x77383520> 50 12/27/16 19:45:33.327 luup_log:27: Arduino: id #187: TRUE <0x77383520> 50 12/27/16 19:45:33.327 luup_log:27: Arduino: id #188: TRUE <0x77383520> 50 12/27/16 19:45:33.327 luup_log:27: Arduino: id #189: TRUE <0x77383520> 50 12/27/16 19:45:33.328 luup_log:27: Arduino: id #190: TRUE <0x77383520> 50 12/27/16 19:45:33.328 luup_log:27: Arduino: id #191: TRUE <0x77383520> 50 12/27/16 19:45:33.328 luup_log:27: Arduino: id #192: TRUE <0x77383520> 50 12/27/16 19:45:33.328 luup_log:27: Arduino: id #193: TRUE <0x77383520> 50 12/27/16 19:45:33.328 luup_log:27: Arduino: id #194: TRUE <0x77383520> 50 12/27/16 19:45:33.329 luup_log:27: Arduino: id #195: TRUE <0x77383520> 50 12/27/16 19:45:33.329 luup_log:27: Arduino: id #196: TRUE <0x77383520> 50 12/27/16 19:45:33.329 luup_log:27: Arduino: id #197: TRUE <0x77383520> 50 12/27/16 19:45:33.329 luup_log:27: Arduino: id #198: TRUE <0x77383520> 50 12/27/16 19:45:33.329 luup_log:27: Arduino: id #199: TRUE <0x77383520> 50 12/27/16 19:45:33.330 luup_log:27: Arduino: id #200: TRUE <0x77383520> 50 12/27/16 19:45:33.330 luup_log:27: Arduino: id #201: TRUE <0x77383520> 50 12/27/16 19:45:33.330 luup_log:27: Arduino: id #202: TRUE <0x77383520> 50 12/27/16 19:45:33.330 luup_log:27: Arduino: id #203: TRUE <0x77383520> 50 12/27/16 19:45:33.330 luup_log:27: Arduino: id #204: TRUE <0x77383520> 50 12/27/16 19:45:33.331 luup_log:27: Arduino: id #205: TRUE <0x77383520> 50 12/27/16 19:45:33.331 luup_log:27: Arduino: id #206: TRUE <0x77383520> 50 12/27/16 19:45:33.331 luup_log:27: Arduino: id #207: TRUE <0x77383520> 50 12/27/16 19:45:33.331 luup_log:27: Arduino: id #208: TRUE <0x77383520> 50 12/27/16 19:45:33.331 luup_log:27: Arduino: id #209: TRUE <0x77383520> 50 12/27/16 19:45:33.332 luup_log:27: Arduino: id #210: TRUE <0x77383520> 50 12/27/16 19:45:33.332 luup_log:27: Arduino: id #211: TRUE <0x77383520> 50 12/27/16 19:45:33.332 luup_log:27: Arduino: id #212: TRUE <0x77383520> 50 12/27/16 19:45:33.332 luup_log:27: Arduino: id #213: TRUE <0x77383520> 50 12/27/16 19:45:33.333 luup_log:27: Arduino: id #214: TRUE <0x77383520> 50 12/27/16 19:45:33.333 luup_log:27: Arduino: id #215: TRUE <0x77383520> 50 12/27/16 19:45:33.333 luup_log:27: Arduino: id #216: TRUE <0x77383520> 50 12/27/16 19:45:33.333 luup_log:27: Arduino: id #217: TRUE <0x77383520> 50 12/27/16 19:45:33.333 luup_log:27: Arduino: id #218: TRUE <0x77383520> 50 12/27/16 19:45:33.334 luup_log:27: Arduino: id #219: TRUE <0x77383520> 50 12/27/16 19:45:33.334 luup_log:27: Arduino: id #220: TRUE <0x77383520> 50 12/27/16 19:45:33.334 luup_log:27: Arduino: id #221: TRUE <0x77383520> 50 12/27/16 19:45:33.334 luup_log:27: Arduino: id #222: TRUE <0x77383520> 50 12/27/16 19:45:33.334 luup_log:27: Arduino: id #223: TRUE <0x77383520> 50 12/27/16 19:45:33.335 luup_log:27: Arduino: id #224: TRUE <0x77383520> 50 12/27/16 19:45:33.335 luup_log:27: Arduino: id #225: TRUE <0x77383520> 50 12/27/16 19:45:33.335 luup_log:27: Arduino: id #226: TRUE <0x77383520> 50 12/27/16 19:45:33.335 luup_log:27: Arduino: id #227: TRUE <0x77383520> 50 12/27/16 19:45:33.335 luup_log:27: Arduino: id #228: TRUE <0x77383520> 50 12/27/16 19:45:33.336 luup_log:27: Arduino: id #229: TRUE <0x77383520> 50 12/27/16 19:45:33.336 luup_log:27: Arduino: id #230: TRUE <0x77383520> 50 12/27/16 19:45:33.336 luup_log:27: Arduino: id #231: TRUE <0x77383520> 50 12/27/16 19:45:33.336 luup_log:27: Arduino: id #232: TRUE <0x77383520> 50 12/27/16 19:45:33.336 luup_log:27: Arduino: id #233: TRUE <0x77383520> 50 12/27/16 19:45:33.337 luup_log:27: Arduino: id #234: TRUE <0x77383520> 50 12/27/16 19:45:33.337 luup_log:27: Arduino: id #235: TRUE <0x77383520> 50 12/27/16 19:45:33.337 luup_log:27: Arduino: id #236: TRUE <0x77383520> 50 12/27/16 19:45:33.337 luup_log:27: Arduino: id #237: TRUE <0x77383520> 50 12/27/16 19:45:33.338 luup_log:27: Arduino: id #238: TRUE <0x77383520> 50 12/27/16 19:45:33.338 luup_log:27: Arduino: id #239: TRUE <0x77383520> 50 12/27/16 19:45:33.338 luup_log:27: Arduino: id #240: TRUE <0x77383520> 50 12/27/16 19:45:33.338 luup_log:27: Arduino: id #241: TRUE <0x77383520> 50 12/27/16 19:45:33.338 luup_log:27: Arduino: id #242: TRUE <0x77383520> 50 12/27/16 19:45:33.338 luup_log:27: Arduino: id #243: TRUE <0x77383520> 50 12/27/16 19:45:33.339 luup_log:27: Arduino: id #244: TRUE <0x77383520> 50 12/27/16 19:45:33.339 luup_log:27: Arduino: id #245: TRUE <0x77383520> 50 12/27/16 19:45:33.339 luup_log:27: Arduino: id #246: TRUE <0x77383520> 50 12/27/16 19:45:33.339 luup_log:27: Arduino: id #247: TRUE <0x77383520> 50 12/27/16 19:45:33.339 luup_log:27: Arduino: id #248: TRUE <0x77383520> 50 12/27/16 19:45:33.340 luup_log:27: Arduino: id #249: TRUE <0x77383520> 50 12/27/16 19:45:33.340 luup_log:27: Arduino: id #250: TRUE <0x77383520> 50 12/27/16 19:45:33.340 luup_log:27: Arduino: id #251: TRUE <0x77383520> 50 12/27/16 19:45:33.340 luup_log:27: Arduino: id #252: TRUE <0x77383520> 50 12/27/16 19:45:33.340 luup_log:27: Arduino: id #253: TRUE <0x77383520> 50 12/27/16 19:45:33.341 luup_log:27: Arduino: id #254: TRUE <0x77383520> 50 12/27/16 19:45:33.341 luup_log:27: Arduino: id #255: TRUE <0x77383520> 50 12/27/16 19:45:33.342 luup_log:27: Arduino: Sending: 0;0;3;0;2;Get Version <0x77383520> 50 12/27/16 19:45:36.719 luup_log:27: Arduino: Log: TSP:MSG:READ 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0: <0x74183520> 50 12/27/16 19:45:36.721 luup_log:27: Arduino: Log: TSP:MSG:BC <0x74183520> 50 12/27/16 19:45:36.724 luup_log:27: Arduino: Log: TSP:MSG:FPAR REQ (sender=255) <0x74183520> 50 12/27/16 19:45:36.727 luup_log:27: Arduino: Log: TSP:CHKUPL:OK <0x74183520> 50 12/27/16 19:45:36.729 luup_log:27: Arduino: Log: TSP:MSG:GWL OK <0x74183520> 50 12/27/16 19:45:37.738 luup_log:27: Arduino: Log: TSP:MSG:SEND 0-0-255-255 s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=bc:0 <0x74183520>
-
OK, here is another code change I did for testing. I added some logging to the nextAvailableRadioId() method which when I ran it brought up some questions in my head. Here is the code:
local function nextAvailiableRadioId() for i=1,255 do if (availableIds[i] == true) then availableIds[i] = false log("Setting next available radio ID to " .. i) return i end end log("No available IDs") return 255 end
I started the luup engine with the node powered off (battery disconnected). I waited a bit for the engine to initialize and then plugged in the battery. Below is the log as I see it with some annotations:
If any of the annotations in the screen shot are incorrect, please correct me. Now for my questions:- Shouldn't the nextAvailiableRadioId() method only be called when in inclusion mode? Clearly there were a few requests which tried to assign out IDs prior to my starting inclusion.
- It appears that the node is not responding to the node ID response. What should I see in the serial monitor from the debug information in the node debug log to tell if it receives the response and if it responds back?
- If a node doesn't respond back that it accepted that node ID, should the plugin mark that ID as unavailable? Clearly that is what is happening. Is there even a way to tell if the node responds back saying that it got the ID?
- Is the availableIds[] array of 255 items only for the MySensors plugin, or is it global to all the plugins?
I think the main part in this test is that the node is not accepting the ID given to it by Vera. When I ran Domoticz, I had no trouble with ID assignments. The next part though is to see what happens once the node parent ID is accepted and presentation starts. I am wondering if I am going to run into the same issues I ran into when I statically set the node ID.
-
nextAvailiableRadioId will be called if an id request comes in (even if inclusion mode is off). The array is not global. It's one array per gatewateway.
I wonder why https://github.com/mysensors/Vera/blob/development/L_Arduino.lua#L299-L307 does not return the first available id in your setup.
-
@hek said:
I wonder why https://github.com/mysensors/Vera/blob/development/L_Arduino.lua#L299-L307 does not return the first available id in your setup.
My point was that it DOES in fact return ID 1, which is the first available ID. If you look at my notations on the screen shot next to "Plugged battery in here" you will see it. But when the node doesn't accept that ID it makes another ID request, which then the Vera plugin tries to hand out another ID. Since it already tried to hand out ID 1, it moves on to attempting to hand out ID 2. This also gets no response from the node to accept it. If I leave the node plugged in searching for an ID, the plugin will run through all 255 IDs in the availableIds[] array at which point the nextAvailiableRadioId() method will log "No available IDs" because it had gone through all of the IDs and filled the array with false values. This is what brought up this question:
- If a node doesn't respond back that it accepted that node ID, should the plugin mark that ID as unavailable? Clearly that is what is happening. Is there even a way to tell if the node responds back saying that it got the ID?
The way I see it, if the node does an ID request and the plugin tries to hand one out but the node does not respond that it accepted it (for whatever reason), the plugin should notify the user that there was a request that wasn't accepted. And that is why I asked this question:
- It appears that the node is not responding to the node ID response. What should I see in the serial monitor from the debug information in the node debug log to tell if it receives the response and if it responds back?
Knowing the answer to that will help with what I think should be the next logical step, and that is to figure out if the node receives the ID handed to it by the Vera plugin and if so, is the node processing it correctly.
-
There is no special command for accepting an id. The node normally stops asking after receiving one.
Yes, somehow the gateway have problem transmitting the node id. Do you have capacitor mounted on the gw-radio?
-
When I first set up the gateway for Domoticz I had a standard nRF24L01+ radio. for that I had a 4.7uf cap mounted on the newbie PCB. I later switched it with a NRF24L01+PA+LNA that I had from another node project and that had a 10uf cap mounted across the power rails right on the radio. This whole setup worked perfectly in Donoticz. Domoticz handed out the IDs fine. The node I am testing was added to my Domoticz setup after switching to the PA+LNA radio. Here is an image of my Vera setup.
If you look at the gateway board, you can see the caps. One is purple and mounted to the PCB next to the radio connector. The other one is black and mounted on top of the radio. Since parallel capacitance adds, that should be about 14.7uf of capacitance at the radio.What should I see in the serial monitor on the node when the gateway responds?
-
You should see 255;255;3;0;4;<new node id>
-
I will check that in a few minutes.
-
I meant what should I see in the serial monitor? This is what is being reported:
TSM:INIT TSM:RADIO:OK TSM:FPAR TSP:MSG:SEND 255-255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc: TSP:MSG:READ 0-0-255 s=255,c=3,t=8,pt=1,l=1,sg=0:0 TSP:MSG:FPAR RES (ID=0, dist=0) TSP:MSG:PAR OK (ID=0, dist=1) TSM:FPAR:OK TSM:ID TSP:MSG:SEND 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=ok: TSM:ID TSP:MSG:SEND 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=ok: TSM:ID TSP:MSG:SEND 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=ok: TSM:ID TSP:MSG:SEND 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=ok: !TSM:CHKID:FAIL (ID=255) !TSM:FAILURE TSM:PDT
I am guessing I should see something like "TSP:MSG:READ..."
-
Yes, it is a "read" for incoming data.
-
@dbemowsk said:
TSP:MSG:READ 0-0-255 s=255,c=3,t=8,pt=1,l=1,sg=0:0
I know there is somewhere that explains this format seen in the serial monitor, but I can't remember where. The serial API message structure page explains the format that you referred to (255;255;3;0;4;<new node id>), but I need to understand what the s, c, pt, l , sg, ft and st all mean, as well as other information seen in the serial monitor.
-
-
Perfect, thanks. Exactly what I was looking for. Just couldn't remember where it was.
-
Just a note. The debug page explains s, c, p, pt, l and sg, but it doesn't explain ft and st. I would assume that an st=ok means that the transmission was successful, but unsure on what ft is. maybe that could be added to the troubleshooting page.
EDIT: my appologies, I see it on the transport messages page.
-
I still do not have this working. Here is a list of things I have tried
- having the sensor right next to the gateway
- changed radios on the gateway
- changed capacitor on the gateway from a 4.7uf to a 47uf
- changed radios on the sensor
- cleared eeprom several times and tried pairing
- tried pairing 2 different sensors (both which worked with Domoticz)
- tried both the development and standard UI7 versions of the plugin
One of the things that I have not tried as of yet is changing the USB FTDI adapter. I am pretty sure I have a spare in the parts box. IF not, I will try the one that I use for programming my sensors. I will also test the FTDI I have connected to Vera for programming my sensors to see if it can do that.
-
So it appears that the saga has been solved. The problem in fact WAS with the FTDI adapter. In all of the testing that I did I am guessing that the FTDI's receive data was working, but the transmit data was the issue. I put my spare FTDI on and Vera was detecting devices left and right. I think I am going to have to redo the inclusion because it said that there were 5 devices found, but nothing was added to Vera, but like I say, the devices did not appear to be presenting at the time.
I want to say though that I appreciate all the time that people spent trying to help me get this going. This forum is a GREAT crowd of people.