Unable to get MySensors sensors to Work with MyController running on RPi
-
Here is the sole entry from my Resources log:
It appears the gateway is automatically assigning Node ID 0 to the sensor.
-
Bumping.
-
@jkandasa Sorry to bug you, but do you have any ideas?
-
@iamtheghost Do you see any issue on
logs/mycontroller.log
? Seems you are using 0.0.3-Alpha2 version. Can you try with SNAPSHOT version? -
@jkandasa Here is the full text from my log file after switching to the SNAPSHOT version you provided:
2017-08-14 19:02:47,471 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/bin/tmp] 2017-08-14 19:02:47,503 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/resources/scripts] 2017-08-14 19:02:47,506 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/resources/scripts/conditions] 2017-08-14 19:02:47,509 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/resources/scripts/operations] 2017-08-14 19:02:47,517 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/www/_configurations] 2017-08-14 19:02:47,519 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/persistent_stores] 2017-08-14 19:02:47,719 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:116] Checking migration... 2017-08-14 19:02:53,337 INFO [main] [org.mycontroller.standalone.db.migration.V1_01__Initial_Configuration:398] Migration completed successfully. 2017-08-14 19:02:53,751 INFO [main] [org.mycontroller.standalone.db.migration.V1_01_01__SNAPSHOT:63] Migration completed successfully. 2017-08-14 19:02:53,968 INFO [main] [org.mycontroller.standalone.db.migration.V1_01_02__SNAPSHOT:127] Migration completed successfully. 2017-08-14 19:02:54,148 INFO [main] [org.mycontroller.standalone.db.migration.V1_01_03__SNAPSHOT:48] Migration completed successfully. 2017-08-14 19:02:54,359 INFO [main] [org.mycontroller.standalone.db.migration.V1_01_04__SNAPSHOT:107] Migration completed successfully. 2017-08-14 19:02:54,498 INFO [main] [org.mycontroller.standalone.db.migration.V1_01_05__0_0_3_alpha1:49] Migration completed successfully. 2017-08-14 19:02:54,951 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_04__2016_Apr_25:58] Migration completed successfully. 2017-08-14 19:02:54,972 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_01__2016_Mar_24:340] Migration completed successfully. 2017-08-14 19:02:55,234 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_02__2016_Apr_11:66] Migration completed successfully. 2017-08-14 19:03:01,934 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_03__2016_Apr_14:85] Migration completed successfully. 2017-08-14 19:03:02,234 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_04__2016_Apr_25:58] Migration completed successfully. 2017-08-14 19:03:02,340 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_05__2016_Apr_27:68] Migration completed successfully. 2017-08-14 19:03:02,442 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_06__2016_May_10:49] Migration completed successfully. 2017-08-14 19:03:02,525 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_07__2016_May_19:57] Migration completed successfully. 2017-08-14 19:03:02,638 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_08__2016_Jul_01:108] Migration completed successfully. 2017-08-14 19:03:02,722 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_09__2016_Jul_16:93] Migration completed successfully. 2017-08-14 19:03:02,807 INFO [main] [org.mycontroller.standalone.db.migration.V1_02_10__2016_Jul_29:53] Migration completed successfully. 2017-08-14 19:03:02,894 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_01__2016_Aug_03:66] Migration completed successfully. 2017-08-14 19:03:02,986 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_02__2016_Aug_06:63] Migration completed successfully. 2017-08-14 19:03:03,065 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_03__2016_Sep_20:95] Migration completed successfully. 2017-08-14 19:03:03,138 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_04__2016_Oct_19:61] Migration completed successfully. 2017-08-14 19:03:03,228 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_05__2016_Nov_18:77] Migration completed successfully. 2017-08-14 19:03:03,468 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_06__2017_Mar_03:66] Migration completed successfully. 2017-08-14 19:03:04,211 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:161] Number of migrations done:22 2017-08-14 19:03:04,215 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:167] Application information: [Version:0.0.3.Final-SNAPSHOT, Database(type:H2 database embedded, version:1.4.194 (2017-03-10), schema version:1.03.06 - 2017 Mar 03), Built on:2017-08-03T01:01:02+0530, Git commit:204e8a96c57767fd7650ce041cfa2fef0dac2bf1:development] 2017-08-14 19:03:04,728 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/persistent_stores/mc] 2017-08-14 19:03:05,842 INFO [Thread-8] [org.mycontroller.standalone.message.RawMessageQueue:54] Cleared offline messages[0] from the queue. 2017-08-14 19:03:07,457 INFO [main] [org.mycontroller.standalone.mqttbroker.MoquetteMqttBroker:52] MQTT Broker started successfully. MqttBrokerSettings(enabled=true, bindAddress=0.0.0.0, httpPort=1883, websocketPort=7080, allowAnonymous=false) 2017-08-14 19:03:11,999 INFO [main] [org.mycontroller.standalone.StartApp:214] TJWS server started successfully, HTTPS Enabled?:true, HTTP(S) Port: [8443] 2017-08-14 19:03:12,009 INFO [main] [org.mycontroller.standalone.StartApp:112] MyController.org server started in [24605] ms [Mon Aug 14 19:03:12 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:03:12 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:03:14 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:03:14 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:03:17 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:03:19 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:03:23 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:03:24 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:04:07 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:04:10 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:04:11 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:04:11 EST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? in processing a request from /192.168.0.59:8443 / sun.security.ssl.SSLSocketImpl [Mon Aug 14 19:07:18 EST 2017] Accept: java.net.SocketException: Socket closed 2017-08-14 19:07:18,447 INFO [MyController.org Shutdown-Hook] [org.mycontroller.standalone.mqttbroker.MoquetteMqttBroker:70] MQTT Broker has been stopped successfully 2017-08-14 19:07:18,461 INFO [MyController.org Shutdown-Hook] [org.mycontroller.standalone.AppShutdownHook:36] Bye, Have a nice day! See you soon 2017-08-14 19:07:23,428 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:116] Checking migration... 2017-08-14 19:07:28,940 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:167] Application information: [Version:0.0.3.Final-SNAPSHOT, Database(type:H2 database embedded, version:1.4.194 (2017-03-10), schema version:1.03.06 - 2017 Mar 03), Built on:2017-08-03T01:01:02+0530, Git commit:204e8a96c57767fd7650ce041cfa2fef0dac2bf1:development] 2017-08-14 19:07:30,491 INFO [Thread-6] [org.mycontroller.standalone.message.RawMessageQueue:54] Cleared offline messages[0] from the queue. 2017-08-14 19:07:31,773 INFO [main] [org.mycontroller.standalone.mqttbroker.MoquetteMqttBroker:52] MQTT Broker started successfully. MqttBrokerSettings(enabled=true, bindAddress=0.0.0.0, httpPort=1883, websocketPort=7080, allowAnonymous=false) 2017-08-14 19:07:35,529 INFO [main] [org.mycontroller.standalone.StartApp:214] TJWS server started successfully, HTTPS Enabled?:false, HTTP(S) Port: [8443] 2017-08-14 19:07:35,531 INFO [main] [org.mycontroller.standalone.StartApp:112] MyController.org server started in [12367] ms 2017-08-14 19:09:14,691 INFO [Acme.Utils.ThreadPool(0)-PooledThread: Acme.Serve.Serve$ServeConnection@e8953c] [org.mycontroller.standalone.api.BackupApi:219] Restore triggered. 2017-08-14 19:09:17,694 INFO [Thread-10] [org.mycontroller.standalone.backup.Restore:69] About to restore a backup, BackupFile(name=on-demand_mc_backup-2017_08_14-18_52_05.zip, canonicalPath=/home/pi/mycontroller/backup/on-demand_mc_backup-2017_08_14-18_52_05.zip, timestamp=1502754725000, size=14004) [Mon Aug 14 19:09:17 EST 2017] Accept: java.net.SocketException: Socket closed 2017-08-14 19:09:17,968 INFO [Thread-10] [org.mycontroller.standalone.mqttbroker.MoquetteMqttBroker:70] MQTT Broker has been stopped successfully 2017-08-14 19:09:18,920 INFO [Thread-10] [org.mycontroller.standalone.db.DataBaseUtils:288] Database restore completed. Database url:jdbc:h2:file:../conf/mycontroller;MVCC=TRUE, Restored file name:/home/pi/mycontroller/bin/tmp/on-demand_mc_backup-2017_08_14-18_52_05/database_backup.zip 2017-08-14 19:09:18,947 INFO [Thread-10] [org.mycontroller.standalone.backup.Restore:153] Restore completed successfully. Start 'MyController.org' server manually 2017-08-14 19:09:18,961 WARN [MyController.org Shutdown-Hook] [org.knowm.sundial.SundialJobScheduler:140] Scheduler has not yet been created!!! Call "createScheduler" first. 2017-08-14 19:09:18,965 INFO [MyController.org Shutdown-Hook] [org.mycontroller.standalone.AppShutdownHook:36] Bye, Have a nice day! See you soon 2017-08-14 19:10:10,667 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/resources/scripts] 2017-08-14 19:10:10,707 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/resources/scripts/conditions] 2017-08-14 19:10:10,710 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/resources/scripts/operations] 2017-08-14 19:10:10,925 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:116] Checking migration... 2017-08-14 19:10:17,195 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_01__2016_Aug_03:66] Migration completed successfully. 2017-08-14 19:10:17,455 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_02__2016_Aug_06:63] Migration completed successfully. 2017-08-14 19:10:18,637 INFO [main] [org.mycontroller.standalone.MapDbFactory:89] Cleared McPersistent location[../conf/persistent_stores/mc/] 2017-08-14 19:10:18,639 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_03__2016_Sep_20:95] Migration completed successfully. 2017-08-14 19:10:19,165 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_04__2016_Oct_19:61] Migration completed successfully. 2017-08-14 19:10:19,602 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_05__2016_Nov_18:77] Migration completed successfully. 2017-08-14 19:10:20,011 INFO [main] [org.mycontroller.standalone.db.migration.V1_03_06__2017_Mar_03:66] Migration completed successfully. 2017-08-14 19:10:20,992 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:161] Number of migrations done:6 2017-08-14 19:10:21,001 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:167] Application information: [Version:0.0.3.Final-SNAPSHOT, Database(type:H2 database embedded, version:1.4.194 (2017-03-10), schema version:1.03.06 - 2017 Mar 03), Built on:2017-08-03T01:01:02+0530, Git commit:204e8a96c57767fd7650ce041cfa2fef0dac2bf1:development] 2017-08-14 19:10:21,614 INFO [main] [org.mycontroller.standalone.AppProperties:497] Created directory location: [/home/pi/mycontroller/conf/persistent_stores/mc] 2017-08-14 19:10:22,728 INFO [Thread-11] [org.mycontroller.standalone.message.RawMessageQueue:54] Cleared offline messages[0] from the queue. 2017-08-14 19:10:24,143 INFO [main] [org.mycontroller.standalone.mqttbroker.MoquetteMqttBroker:52] MQTT Broker started successfully. MqttBrokerSettings(enabled=true, bindAddress=0.0.0.0, httpPort=1883, websocketPort=7080, allowAnonymous=false) 2017-08-14 19:10:28,637 INFO [main] [org.mycontroller.standalone.StartApp:214] TJWS server started successfully, HTTPS Enabled?:false, HTTP(S) Port: [8443] 2017-08-14 19:10:28,640 INFO [main] [org.mycontroller.standalone.StartApp:112] MyController.org server started in [18045] ms 2017-08-14 19:24:29,979 ERROR [Thread-11] [org.mycontroller.standalone.message.MessageMonitorThread:119] Throws exception while processing!, [RawMessage(gatewayId=2, data=0;0;3;1;28;0\n, subData=null, isTxMessage=true, networkType=MY_SENSORS, timestamp=1502756669895)] java.lang.NullPointerException: null at org.mycontroller.standalone.message.McMessageEngine.internalSubMessageTypeSelector(McMessageEngine.java:384) at org.mycontroller.standalone.message.McMessageEngine.execute(McMessageEngine.java:121) at org.mycontroller.standalone.message.McMessageEngine.run(McMessageEngine.java:1090) at org.mycontroller.standalone.message.McMessageUtils.sendToMcMessageEngine(McMessageUtils.java:662) at org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge.executeRawMessage(MySensorsProviderBridge.java:59) at org.mycontroller.standalone.message.McMessageUtils.sendToProviderBridge(McMessageUtils.java:571) at org.mycontroller.standalone.message.MessageMonitorThread.processRawMessage(MessageMonitorThread.java:107) at org.mycontroller.standalone.message.MessageMonitorThread.run(MessageMonitorThread.java:182) at java.lang.Thread.run(Thread.java:745)
-
@jkandasa Here is the info from a simple temperature node (MySensors 2.0.0):
0 MCO:BGN:INIT NODE,CP=RNNNA--,VER=2.1.1 3 TSM:INIT 4 TSF:WUR:MS=0 11 TSM:INIT:TSP OK 13 TSM:INIT:STATID=1 14 TSF:SID:OK,ID=1 16 TSM:FPAR 53 TSF:MSG:SEND,1-1-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 355 TSF:MSG:READ,0-0-1,s=255,c=3,t=8,pt=1,l=1,sg=0:0 359 TSF:MSG:FPAR OK,ID=0,D=1 2060 TSM:FPAR:OK 2061 TSM:ID 2062 TSM:ID:OK 2064 TSM:UPL 2067 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=OK:1 2076 TSF:MSG:READ,0-0-1,s=255,c=3,t=25,pt=1,l=1,sg=0:1 2081 TSF:MSG:PONG RECV,HP=1 2083 TSM:UPL:OK 2085 TSM:READY:ID=1,PAR=0,DIS=1 2091 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100 2097 TSF:MSG:READ,0-0-1,s=255,c=3,t=15,pt=6,l=2,sg=0:0100 2104 TSF:MSG:SEND,1-1-0-0,s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=OK:2.1.1 2112 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=OK:0 2123 TSF:MSG:READ,0-0-1,s=255,c=3,t=6,pt=0,l=1,sg=0:M 2131 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=11,pt=0,l=22,sg=0,ft=0,st=OK:TemperatureAndHumidity 2141 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=12,pt=0,l=3,sg=0,ft=0,st=OK:1.1 2149 TSF:MSG:SEND,1-1-0-0,s=0,c=0,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 2157 TSF:MSG:SEND,1-1-0-0,s=1,c=0,t=6,pt=0,l=0,sg=0,ft=0,st=OK: 2162 MCO:REG:REQ 2166 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=OK:2 2172 TSF:MSG:READ,0-0-1,s=255,c=3,t=27,pt=1,l=1,sg=0:1 2178 MCO:PIM:NODE REG=1 2180 MCO:BGN:STP 2182 MCO:SLP:MS=1000,SMS=0,I1=255,M1=255,I2=255,M2=255 2187 MCO:SLP:TPD 2189 MCO:SLP:WUP=-1 2191 MCO:BGN:INIT OK,TSP=1 2217 TSF:MSG:SEND,1-1-0-0,s=1,c=1,t=0,pt=7,l=5,sg=0,ft=0,st=OK:22.0 T: 22.00 2226 TSF:MSG:SEND,1-1-0-0,s=0,c=1,t=1,pt=7,l=5,sg=0,ft=0,st=OK:44.0 H: 44.00 2233 MCO:SLP:MS=10000,SMS=0,I1=255,M1=255,I2=255,M2=255 2238 MCO:SLP:TPD
-
Now the node/sensor is doing this:
187971 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 189978 !TSM:FPAR:NO REPLY 189980 TSM:FPAR 190017 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 192024 !TSM:FPAR:FAIL 192026 TSM:FAIL:CNT=7 192028 TSM:FAIL:PDT 252032 TSM:FAIL:RE-INIT 252034 TSM:INIT 252041 TSM:INIT:TSP OK 252043 TSM:INIT:STATID=11 252045 TSF:SID:OK,ID=11 252048 TSM:FPAR 252085 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 254092 !TSM:FPAR:NO REPLY 254094 TSM:FPAR 254131 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 256138 !TSM:FPAR:NO REPLY 256140 TSM:FPAR 256177 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 258184 !TSM:FPAR:NO REPLY 258186 TSM:FPAR 258223 TSF:MSG:SEND,11-11-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 260230 !TSM:FPAR:FAIL 260232 TSM:FAIL:CNT=7 260234 TSM:FAIL:PDT
I am able to get the node to show up under "Nodes", but it still adds a second node alongside my MySensors node. If I declare an ID using
#define MY_NODE_ID 11
, it will create that node but always with a second node with EUI 0. The EUI 0 Node says "Up" in the topology map and it is "connected" to the Gateway by a line. The MySensors node with EUI defined with#define MY_NODE_ID 11
shows up in the topology map, but it is not connected to the gateway by a line.#define NODE_ID AUTO
does nothing.Here is my sketch:
// Enable debug prints #define MY_DEBUG #define MY_NODE_ID 11 // Enable and select radio type attached #define MY_RADIO_NRF24 //#define MY_RADIO_RFM69 //#define MY_RS485 #include <MyConfig.h> #include <MySensors.h> #include <SPI.h> #include <DHT.h> // Set this to the pin you connected the DHT's data pin to #define DHT_DATA_PIN 3 // Set this offset if the sensor has a permanent small offset to the real temperatures #define SENSOR_TEMP_OFFSET 0 // Sleep time between sensor updates (in milliseconds) // Must be >1000ms for DHT22 and >2000ms for DHT11 static const uint64_t UPDATE_INTERVAL = 10000; // Force sending an update of the temperature after n sensor reads, so a controller showing the // timestamp of the last update doesn't show something like 3 hours in the unlikely case, that // the value didn't change since; // i.e. the sensor would force sending an update every UPDATE_INTERVAL*FORCE_UPDATE_N_READS [ms] static const uint8_t FORCE_UPDATE_N_READS = 10; #define CHILD_ID_HUM 0 #define CHILD_ID_TEMP 1 float lastTemp; float lastHum; uint8_t nNoUpdatesTemp; uint8_t nNoUpdatesHum; bool metric = true; MyMessage msgHum(CHILD_ID_HUM, V_HUM); MyMessage msgTemp(CHILD_ID_TEMP, V_TEMP); DHT dht; void presentation() { // Send the sketch version information to the gateway sendSketchInfo("TemperatureAndHumidity", "1.1"); // Register all sensors to gw (they will be created as child devices) present(CHILD_ID_HUM, S_HUM); present(CHILD_ID_TEMP, S_TEMP); metric = getControllerConfig().isMetric; } void setup() { dht.setup(DHT_DATA_PIN); // set data pin of DHT sensor if (UPDATE_INTERVAL <= dht.getMinimumSamplingPeriod()) { Serial.println("Warning: UPDATE_INTERVAL is smaller than supported by the sensor!"); } // Sleep for the time of the minimum sampling period to give the sensor time to power up // (otherwise, timeout errors might occure for the first reading) sleep(dht.getMinimumSamplingPeriod()); } void loop() { // Force reading sensor, so it works also after sleep() dht.readSensor(true); // Get temperature from DHT library float temperature = dht.getTemperature(); if (isnan(temperature)) { Serial.println("Failed reading temperature from DHT!"); } else if (temperature != lastTemp || nNoUpdatesTemp == FORCE_UPDATE_N_READS) { // Only send temperature if it changed since the last measurement or if we didn't send an update for n times lastTemp = temperature; if (!metric) { temperature = dht.toFahrenheit(temperature); } // Reset no updates counter nNoUpdatesTemp = 0; temperature += SENSOR_TEMP_OFFSET; send(msgTemp.set(temperature, 1)); #ifdef MY_DEBUG Serial.print("T: "); Serial.println(temperature); #endif } else { // Increase no update counter if the temperature stayed the same nNoUpdatesTemp++; } // Get humidity from DHT library float humidity = dht.getHumidity(); if (isnan(humidity)) { Serial.println("Failed reading humidity from DHT"); } else if (humidity != lastHum || nNoUpdatesHum == FORCE_UPDATE_N_READS) { // Only send humidity if it changed since the last measurement or if we didn't send an update for n times lastHum = humidity; // Reset no updates counter nNoUpdatesHum = 0; send(msgHum.set(humidity, 1)); #ifdef MY_DEBUG Serial.print("H: "); Serial.println(humidity); #endif } else { // Increase no update counter if the humidity stayed the same nNoUpdatesHum++; } // Sleep for a while to save energy sleep(UPDATE_INTERVAL); }
-
@iamtheghost When you define
#define NODE_ID AUTO
can you triggerDiscover
on MyController?Resources
>>Gateways
>>Select your gateway
>>Actions
>>Discover
.Regards the following issue,
2017-08-14 19:24:29,979 ERROR [Thread-11] [org.mycontroller.standalone.message.MessageMonitorThread:119] Throws exception while processing!, [RawMessage(gatewayId=2, data=0;0;3;1;28;0\n, subData=null, isTxMessage=true, networkType=MY_SENSORS, timestamp=1502756669895)] java.lang.NullPointerException: null
When we send internal message
0;0;3;1;28;0
, AFAIK, we should use SENSOR ID as255
. Here it is0
. -
Here is my latest log messages:
2017-08-17 18:55:06,186 INFO [main] [org.mycontroller.standalone.db.DataBaseUtils:167] Application information: [Version:0.0.3.Final-SNAPSHOT, Database(type:H2 database embedded, version:1.4.194 (2017-03-10), schema version:1.03.06 - 2017 Mar 03), Built on:2017-08-03T01:01:02+0530, Git commit:204e8a96c57767fd7650ce041cfa2fef0dac2bf1:development] 2017-08-17 18:55:07,873 INFO [Thread-6] [org.mycontroller.standalone.message.RawMessageQueue:54] Cleared offline messages[0] from the queue. 2017-08-17 18:55:09,404 INFO [main] [org.mycontroller.standalone.mqttbroker.MoquetteMqttBroker:52] MQTT Broker started successfully. MqttBrokerSettings(enabled=true, bindAddress=0.0.0.0, httpPort=1883, websocketPort=7080, allowAnonymous=false) 2017-08-17 18:55:14,362 INFO [main] [org.mycontroller.standalone.StartApp:214] TJWS server started successfully, HTTPS Enabled?:false, HTTP(S) Port: [8443] 2017-08-17 18:55:14,371 INFO [main] [org.mycontroller.standalone.StartApp:112] MyController.org server started in [14732] ms 2017-08-17 18:55:14,814 ERROR [Thread-6] [org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge:64] Unable to process this rawMessage:RawMessage(gatewayId=4, data=55,s=255,c=3,t=7,pt=0,l=0,sg=0:, subData=null, isTxMessage=false, networkType=MY_SENSORS, timestamp=1503014114706) org.mycontroller.standalone.message.RawMessageException: Unknown message format:[55,s=255,c=3,t=7,pt=0,l=0,sg=0:] at org.mycontroller.standalone.provider.mysensors.MySensorsRawMessage.updateSerialMessage(MySensorsRawMessage.java:183) at org.mycontroller.standalone.provider.mysensors.MySensorsRawMessage.<init>(MySensorsRawMessage.java:68) at org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge.executeRawMessage(MySensorsProviderBridge.java:58) at org.mycontroller.standalone.message.McMessageUtils.sendToProviderBridge(McMessageUtils.java:571) at org.mycontroller.standalone.message.MessageMonitorThread.processRawMessage(MessageMonitorThread.java:107) at org.mycontroller.standalone.message.MessageMonitorThread.run(MessageMonitorThread.java:182) at java.lang.Thread.run(Thread.java:745) 2017-08-17 19:03:54,879 ERROR [Thread-6] [org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge:64] Unable to process this rawMessage:RawMessage(gatewayId=4, data=,s=0,c=1,t=1,pt=7,l=5,sg=0:45.0, subData=null, isTxMessage=false, networkType=MY_SENSORS, timestamp=1503014634864) org.mycontroller.standalone.message.RawMessageException: Unknown message format:[,s=0,c=1,t=1,pt=7,l=5,sg=0:45.0] at org.mycontroller.standalone.provider.mysensors.MySensorsRawMessage.updateSerialMessage(MySensorsRawMessage.java:183) at org.mycontroller.standalone.provider.mysensors.MySensorsRawMessage.<init>(MySensorsRawMessage.java:68) at org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge.executeRawMessage(MySensorsProviderBridge.java:58) at org.mycontroller.standalone.message.McMessageUtils.sendToProviderBridge(McMessageUtils.java:571) at org.mycontroller.standalone.message.MessageMonitorThread.processRawMessage(MessageMonitorThread.java:107) at org.mycontroller.standalone.message.MessageMonitorThread.run(MessageMonitorThread.java:182) at java.lang.Thread.run(Thread.java:745)
Looks like something in there isn't working, I'm just not sure what!
-
Here is some more information:
It is still creating the node with EUI 0. I don't know why but it creates it every time I try to add the temperature and humidity node:
It seems like it wants to work, but I don't think I'm getting it right:
No matter what, a node with EUI 0 shows up. I manually set my temperature and humidity node to ID 11 and it still creates the "phantom" node 0:
Is there a way to make the nodes and the gateway refresh very fast to help with trouble-shooting?
-
@iamtheghost Thanks for the detailed information. Node
0
must be created on MySensors network, it is a gateway node. Without gateway, we cannot communicate with other nodes on the network.Is there a way to make the nodes and the gateway refresh very fast to help with trouble-shooting?
select your gateway and execute discover on the gateway page.
how frequent are you seeing this error? Which serial driver are you using on gateway. If not in auto, put it on auto.
2017-08-17 19:03:54,879 ERROR [Thread-6] [org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge:64] Unable to process this rawMessage:RawMessage(gatewayId=4, data=,s=0,c=1,t=1,pt=7,l=5,sg=0:45.0, subData=null, isTxMessage=false, networkType=MY_SENSORS, timestamp=1503014634864) org.mycontroller.standalone.message.RawMessageException: Unknown message format:[,s=0,c=1,t=1,pt=7,l=5,sg=0:45.0] at org.mycontroller.standalone.provider.mysensors.MySensorsRawMessage.updateSerialMessage(MySensorsRawMessage.j
Can you post sensors page?
-
Thanks for your help. I am getting this error very frequently. The serial gateway is in auto mode for the driver.
2017-08-19 06:48:22,661 ERROR [Thread-6] [org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge:64] Unable to process this rawMessage:RawMessage(gatewayId=4, data=;0;9;MCO:BGN:STP, subData=null, isTxMessage=false, networkType=MY_SENSORS, timestamp=1503143302653) org.mycontroller.standalone.message.RawMessageException: Unknown message format:[;0;9;MCO:BGN:STP] at org.mycontroller.standalone.provider.mysensors.MySensorsRawMessage.updateSerialMessage(MySensorsRawMessage.java:183) at org.mycontroller.standalone.provider.mysensors.MySensorsRawMessage.<init>(MySensorsRawMessage.java:68) at org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge.executeRawMessage(MySensorsProviderBridge.java:58) at org.mycontroller.standalone.message.McMessageUtils.sendToProviderBridge(McMessageUtils.java:571) at org.mycontroller.standalone.message.MessageMonitorThread.processRawMessage(MessageMonitorThread.java:107) at org.mycontroller.standalone.message.MessageMonitorThread.run(MessageMonitorThread.java:182) at java.lang.Thread.run(Thread.java:745)
That's as of 6:45A.M. EST time (U.S.). It is giving me this error in the log approximately every 120 seconds.
Here is my sensors page. When I used Discover on the Gateway, it found the Humidity Sensor and set it with a value. It did not find the Temperature portion of the sensor and I had to add it manually. The temperature portion of the sensor has not updated with a value (I'm using a DHT-11). It appears that the sensors values will initially get a value from the message sent, but future messages do not update the sensor value. I left it on overnight and the sensor values did not change. The "Last Seen" value changed when I used Discover mode on the Gateway. Hopefully this is helpful. I really want to get MyController and MySensors working together. Thank you so much for your help.
-
@iamtheghost Are you using inbuilt serial IO pins from raspberry PI? If yes, you may need to disable console login. Have you configured this serial port for any other service?
looks like you have some issues with your gateway serial port.