(FOTA) java.lang.IllegalArgumentException:null value
See original GitHub issueHi, not sure what is causing this error but it seems to prohibit FOTA from happening on my system…
Server log
2018-03-12 19:10:45,625 ERROR [Thread-5] [org.mycontroller.standalone.message.MessageMonitorThread:119] Throws exception while processing!, [RawMessage(gatewayId=1, data=010002003F03, subData=AD_gw_out/111/255/4/0/2, isTxMessage=false, networkType=MY_SENSORS, timestamp=1520896245570)]
java.lang.IllegalArgumentException: null value
at org.mapdb.HTreeMap.put(HTreeMap.java:481)
at org.mycontroller.standalone.firmware.FirmwareUtils.getFirmwareDataFromOfflineMap(FirmwareUtils.java:281)
at org.mycontroller.standalone.message.McMessageEngine.procressFirmwareRequestMySensors(McMessageEngine.java:550)
at org.mycontroller.standalone.message.McMessageEngine.streamSubMessageTypeSelector(McMessageEngine.java:504)
at org.mycontroller.standalone.message.McMessageEngine.execute(McMessageEngine.java:125)
at org.mycontroller.standalone.message.McMessageEngine.run(McMessageEngine.java:1117)
at org.mycontroller.standalone.message.McMessageUtils.sendToMcMessageEngine(McMessageUtils.java:677)
at org.mycontroller.standalone.provider.mysensors.MySensorsProviderBridge.executeRawMessage(MySensorsProviderBridge.java:59)
at org.mycontroller.standalone.message.McMessageUtils.sendToProviderBridge(McMessageUtils.java:579)
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:748)
Resources logs detail
Mar 12, 2018 19:34:33 | Notice | Node | AD_gateway 111:000 Battery, RSSI, FOTA | Sent | Stream | [Firmware config response] 010002004003A795
Mar 12, 2018 19:34:32 | Notice | Node | AD_gateway 111:000 Battery, RSSI, FOTA | Received | Stream | [Firmware config request] 010002004003429D0102
Mar 12, 2018 19:34:30 | Notice | Node | AD_gateway 111:000 Battery, RSSI, FOTA | Sent | Stream | [Firmware config response] 010002004003A795
Mar 12, 2018 19:34:29 | Notice | Node | AD_gateway 111:000 Battery, RSSI, FOTA | Received | Stream | [Firmware config request] 010002004003429D0102
The above two lines just keep on repeating every couple of seconds. Not sure if that means the node is in a reboot loop…
Typos ?
procressFirmwareRequestMySensors -> processFirmwareRequestMySensors Discover respone -> Discover response
Node info
Using MySensorsBootloaderRF24: v1.3.0-rc.1 Using MySensors: v2.2.0 Arduino: Nano (chinese clone) with 8 analog pins Radio: NRF24L-01 #define MY_NODE_ID 111
MyController
Version 1.1.0.Final Database schema revision 1.04.01 - 2017 Oct 25 Database type MySQL Database version 10.1.23-MariaDB-9+deb9u1 Git commit:branch 2bd938160d42fb36e8b47b4e9c62cad446773a5b:master Built on 2017-12-28T07:46:41+0530 Build JDK 1.8.0_151 Build tool Apache Maven 3.5.0 VM vendor Oracle Corporation VM name Java HotSpot™ Client VM VM version 1.8.0_162-b12 Java home /opt/jdk1.8.0_162/jre Operating system Linux Architecture arm Version/Kernel 4.9.59+
Issue Analytics
- State:
- Created 6 years ago
- Comments:18 (8 by maintainers)
You’re right… It only worked the first time. The second test failed. I will experiment with different radio powers and packet sizes over the weekend (if time permits) and let you know what I find. Thanks for the support, it’s appreciated!
found: (in …\libraries\MySensors/drivers/PubSubClient/PubSubClient.h) #define MQTT_MAX_PACKET_SIZE 128
trying to override it with: #define MQTT_MAX_PACKET_SIZE 512 in the sketch
seeing progress now…
…and it worked, finally!