• Recent
    • Tags
    • Popular
    • Register
    • Login
    1. Home
    2. rob987
    3. Best

    Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

    Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website Mango 5 Documentation Website
    R
    Offline
    • Profile
    • Following 0
    • Followers 0
    • Topics 6
    • Posts 15
    • Groups 0

    Posts

    Recent Best Controversial
    • Modbus TCP no recipient found for response

      Hi,

      I am using Mango 3.5.6 modbus tcp to poll a solaredge inverter, and I have bursts of "No recipient" errors. For example on the 26th march, there were 240 errors, over 9 bursts. The times seem to be random, with minutes or hours between errors.

      When I first added the inverter I set the poll time to 1 second and the errors were in the thousands, but I have reduced it to the hundreds by extending the poll time to 2 seconds, and the timeout to 1500mS. This seems a long time for an TCP modbus request timeout.

      2019/03/22-21:06:35,347 1553252795347 data source started
      2019/03/22-21:06:35,389 O 000100000006010300530002
      2019/03/22-21:06:36,390 O 000100000006010300530002
      2019/03/22-21:06:36,473 I 00010000000701030400000000
      2019/03/22-21:06:36,473 O 0002000000060103005d0003
      2019/03/22-21:06:36,553 I 00010000000701030400000000
      2019/03/22-21:06:37,342 I 00020000000901030600697e020000
      2019/03/22-21:06:37,342 O 000300000006010300ce0001
      2019/03/22-21:06:37,423 I 000300000005010302fd9b
      2019/03/22-21:06:37,423 O 000400000006010300d20001
      2019/03/22-21:06:37,685 I 0004000000050103020000
      2019/03/22-21:06:37,685 O 000500000006010300e20002
      2019/03/22-21:06:38,129 I 0005000000070103040040b993
      2019/03/22-21:06:38,129 O 000600000006010300ea0002
      2019/03/22-21:06:38,996 I 0006000000070103040043a19f
      2019/03/22-21:06:38,997 O 000700000006010300f20001
      2019/03/22-21:06:39,400 I 0007000000050103020000
      2019/03/22-21:06:41,388 O 000800000006010300530002
      2019/03/22-21:06:42,003 I 00080000000701030400000000
      2019/03/22-21:06:42,004 O 0009000000060103005d0003
      2019/03/22-21:06:42,084 I 00090000000901030600697e020000
      2019/03/22-21:06:42,085 O 000a00000006010300ce0001
      2019/03/22-21:06:42,629 I 000a00000005010302fd9a
      2019/03/22-21:06:42,629 O 000b00000006010300d20001
      2019/03/22-21:06:43,356 I 000b000000050103020000
      2019/03/22-21:06:43,356 O 000c00000006010300e20002
      2019/03/22-21:06:44,356 O 000c00000006010300e20002
      2019/03/22-21:06:44,526 I 000c000000070103040040b993
      2019/03/22-21:06:44,526 O 000d00000006010300ea0002
      2019/03/22-21:06:44,607 I 000c000000070103040040b993
      2019/03/22-21:06:44,709 I 000d000000070103040043a1a0
      2019/03/22-21:06:44,709 O 000e00000006010300f20001
      2019/03/22-21:06:44,810 I 000e000000050103020000
      2019/03/22-21:06:45,387 O 000f00000006010300530002
      2019/03/22-21:06:46,364 I 000f0000000701030400000000
      2019/03/22-21:06:46,364 O 0010000000060103005d0003
      2019/03/22-21:06:46,445 I 00100000000901030600697e020000
      2019/03/22-21:06:46,445 O 001100000006010300ce0001
      2019/03/22-21:06:47,312 I 001100000005010302fd97
      2019/03/22-21:06:47,313 O 001200000006010300d20001
      2019/03/22-21:06:47,413 I 0012000000050103020000
      2019/03/22-21:06:47,414 O 001300000006010300e20002
      2019/03/22-21:06:48,261 I 0013000000070103040040b993
      2019/03/22-21:06:48,261 O 001400000006010300ea0002
      2019/03/22-21:06:49,262 O 001400000006010300ea0002
      2019/03/22-21:06:49,351 I 0014000000070103040043a1a1
      2019/03/22-21:06:49,351 O 001500000006010300f20001
      2019/03/22-21:06:50,352 O 001500000006010300f20001
      2019/03/22-21:06:50,945 I 0014000000070103040043a1a1
      2019/03/22-21:06:51,048 I 0015000000050103020000
      
      

      I logged the IO when I first added the inverter, and noticed there are two I or O lines together.

      The time between the errors appears to be random

      26/3/2019	 5:47:48 AM	'SE5K': com.serotonin.modbus4j.exception.ModbusTransportException: java.net.SocketTimeoutException: connect timed out 
      26/3/2019	 9:39:24 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@93a5 
      26/3/2019	 9:39:26 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@93a6 
      26/3/2019	 10:09:57 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@ac78 
      26/3/2019	 10:10:02 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@ac7d 
      26/3/2019	 10:10:15 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@ac84 
      26/3/2019	 10:10:21 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@ac8c 
      26/3/2019	 10:10:28 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@ac92 
      26/3/2019	 10:10:34 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@ac96 
      26/3/2019	 10:10:53 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@aca1 
      26/3/2019	 10:11:01 AM	'SE5K': Exception from modbus master: No recipient was found waiting for response for key com.serotonin.modbus4j.ip.xa.XaWaitingRoomKeyFactory$XaWaitingRoomKey@aca8 
      
      

      Mango is also polling an Automation Direct Click PLC via modbus, and has never reported any errors.
      From the system status page

      SE5K previous sequential successful polls 	1
      SE5K last poll duration 			                        531
      SE5K poll success percentage 			        99.24194567277321
      ClickPLC previous sequential successful polls 	-1
      ClickPLC last poll duration 			               63
      ClickPLC poll success percentage 		      100
      
      

      I take it the poll duration is milliseconds? Mango can ping the inverter in 0.6mS

      robert@mango:/opt/mango/logs$ ping se5k
      PING SE5K.nixtec.net (10.11.21.253) 56(84) bytes of data.
      64 bytes from SE5K.nixtec.net (10.11.21.253): icmp_seq=1 ttl=62 time=0.672 ms
      64 bytes from SE5K.nixtec.net (10.11.21.253): icmp_seq=2 ttl=62 time=0.640 ms
      64 bytes from SE5K.nixtec.net (10.11.21.253): icmp_seq=3 ttl=62 time=0.628 ms
      
      

      Only 9 points are being polled in the inverter, (summary from device export)

      HOLDING_REGISTER	TWO_BYTE_INT_SIGNED	1	84
      HOLDING_REGISTER	TWO_BYTE_INT_UNSIGNED	1	83
      HOLDING_REGISTER	TWO_BYTE_INT_SIGNED	1	206
      HOLDING_REGISTER	TWO_BYTE_INT_SIGNED	1	210
      HOLDING_REGISTER	FOUR_BYTE_INT_UNSIGNED	1	226
      HOLDING_REGISTER	FOUR_BYTE_INT_UNSIGNED	1	234
      HOLDING_REGISTER	TWO_BYTE_INT_SIGNED	1	242
      HOLDING_REGISTER	FOUR_BYTE_INT_UNSIGNED	1	93
      HOLDING_REGISTER	TWO_BYTE_INT_UNSIGNED	1	95
      
      

      So my question is, is the problem / fault with Mango, or the Solaredge inverter?

      Thanks

      posted in Mango Automation general Discussion
      R
      rob987
    • RE: MQTT datapoint parsing help.

      Hi,
      Tried the date format yyyy-MM-dd'T'HH:mm:ss.SSS and the error changed to

      Error during read topic: "tele/tasmota_E14FF4/SENSOR" datapoint: "MQTT_NAS - Mealies_Temperature" payload: "{"Time":"2021-01-13T13:26:48","DS18B20":{"Id":"01192718DE3D","Temperature":28.1},"TempUnit":"C"}" exception: "Text '2021-01-13T13:26:48' could not be parsed at index 19"
      

      I have the Sensor temperature, and WiFi signal strength working now. ( Just using JSON, and not JSON + Timestamp, as I cannot find a parsing string that works )

      Mango is subscribed to two topics, STATE and SENSOR.

      The steps I took were

      1. Connect to MQTT Broker and get a copy of the raw data ( Also checks connection from Mango PC )
      robert@mango:~$ mosquitto_sub  -h 192.168.220.208 -p 1883 -u robert -P XXXXX -t tele/#
      
      Client mosqsub/22329-mango received PUBLISH (d0, q0, r0, m0, 'tele/tasmota_E14FF4/STATE', ... (274 bytes))
      tele/tasmota_E14FF4/STATE {"Time":"2021-01-13T10:46:48","Uptime":"4T17:22:27","UptimeSec":408147,"Heap":25,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":3,"Wifi":{"AP":1,"SSId":"NixNet","BSSId":"E4:8D:8C:3F:D7:A1","Channel":1,"RSSI":92,"Signal":-54,"LinkCount":1,"Downtime":"0T00:00:03"}}
      Client mosqsub/22329-mango received PUBLISH (d0, q0, r0, m0, 'tele/tasmota_E14FF4/SENSOR', ... (96 bytes))
      tele/tasmota_E14FF4/SENSOR {"Time":"2021-01-13T10:46:48","DS18B20":{"Id":"01192718DE3D","Temperature":26.6},"TempUnit":"C"}
      

      Check the Subscribed Data at https://jsonformatter.org/json-parser You can paste the received data string in, and get a readable JSON document.

      tele/tasmota_E14FF4/STATE

      object{9}
      	Time : 2021-01-13T10:46:48
      	Uptime : 4T17:22:27
      	UptimeSec : 408147
      	Heap : 25
      	SleepMode : Dynamic
      	Sleep : 50
      	LoadAvg : 19
      	MqttCount : 3
      	Wifi {8}
      		AP : 1
      		SSId : NixNet
      		BSSId : E4:8D:8C:3F:D7:A1
      		Channel : 1
      		RSSI : 92
      		Signal : -54
      		LinkCount : 1
      		Downtime : 0T00:00:03
      

      And
      tele/tasmota_E14FF4/SENSOR

      object {3}
          Time : 2021-01-13T10:46:48
          DS18B20 {2}
              Id : 01192718DE3D
              Temperature : 26.6
          TempUnit : C
      

      Here are the working MQTT Datapoint setups
      Wifi_Signal.png

      And Temperature
      Temperature_MQTT.png

      And The correct values shown on the datasource page
      DataSource_MQTT.png

      If anyone has some ideas on how to parse the Time (JSON + Timestamp) let me know

      Thanks

      posted in User help
      R
      rob987
    • RE: Modbus TCP no recipient found for response

      Hi,
      Thanks for all the input. 247 errors yesterday (27/03/2019) on a cloudy rainy day, so the inverter does not rest :-),
      and devote more time to comms.

      The inverter is on a wired ethernet connection, with mango and the inverter on the wired LAN.

      I had "Contiguous batches only" ticked, as the inverter would not answer back when I first added it. I have now ticked it and reduced the max read registers to 50. The This is giving me 2 requests.

      2019/03/28-08:33:28,568 O 00230000000601030053000d
      2019/03/28-08:33:28,833 I 00230000001d01031a22e2ffff1384fffe2494ffff91d8fffedac6fffe006aeaf70000
      2019/03/28-08:33:28,834 O 002400000006010300ce0025
      2019/03/28-08:33:28,914 I 00240000004d01034a033b012300f7011f00000388012c011d01440000fe93ffb7ff73ff6a0000de17db9ee036de71fffe004162a600191f070015cec0001e39760044aaeb002c0006001e72c40005fcb80000
      
      

      What is the ,nnn after the date-time in the above log (2019/03/28-08:33:28,568). Is it mS timestamp of Java sending and receiving?

      Is there any way to have a poll period associated with a point.? The 2nd longer read is for kWh values, and could be read every 15 minutes. This might allow the instant power values to be read more frequently.

      I am using mango to read, and publish the values to a Click PLC, as I cannot get the Click to talk to the inverter. I used wireshark on the line, and I see the PLC send 3 SYN requests, and the inverter does not reply. I suspect it may be "to fast" for the inverter.

      No errors for 30 minutes, so maybe solved, but not fixed !!!!!!
      Thanks

      posted in Mango Automation general Discussion
      R
      rob987
    • RE: Modbus TCP no recipient found for response

      Hi,
      Just reporting that no errors in the last 24 hours,
      I have the TCP with keepalive set, Comms was very unreliable with a new connection for each request.
      Now the forest of errors has disappeared, I notice I get a "Connect timeout" twice a day, about an hour after sunset, and an hour before sunrise. I suspect a quick fix for a leaky system, as the inverter reboots twice a day.

      The inverter only accepts one modbus connection at a time, so a second device is not an option.

      The instant power value swings very quickly, as clouds move accross the sky, and the fastest update time I can get allows he PLC to adjust the load on 2 x hot water system elements via SSRs. The kWh value is only really used to display "daily usage" of 15 - 30 kWh. It could be read every 15 - 30 minutes.

      I have a support request open with solaredge, and have sent then the wireshark logs of a working modpoll connection from a PC, and a PLC connection showing only 3 x SYN request. I will sent them my findings from this, but I will ask for a "stress test" on the next inverter I purchase.

      Thanks for all your help

      posted in Mango Automation general Discussion
      R
      rob987