I have decoded more or less 80 channels for new thing representing new inverter with logges sn23xxx.
This new one has more complex communication scheme (3 request instead of 1 and 4-5 more responses) than original one. It may take some time I scratch new descriptors for the new thing and patch here and there communication.
First of all, I would like to thank you very much for your work, which I have been using successfully for over a year. Recently, I installed a second PV installation also based on the SOFAR inverter and the LSE-3 logger (Ethernet). Unfortunately, I had a problem with connecting the logger to the new inverter (G3 - one phase). The remote firmware update made by the Polish branch of Sofar to ME_0D_2701_5.09 helped with above problems. By the way, they updated me second logger from version ME_08_2701_2.06 to ME_0D_2701_5.09. And it was a big mistake because I lost communication through your binding
Unfortunately, it is not possible to go back to the previous working version of the firmware…
Both loggers have SN starting with 21xxx, but this is more about the firmware, not the HW of the logger I guess…
In openhab log I see 2 entries (different for both loggers).
@Straits_PL you could ask the support whether they have a modbus registers map for the firmware. Or try to look through the internet.
Maybe switching from ME_08_2701_2.06 to ME_0D_2701_5.09 has changed modbus registers for the inverter. The binding itself asks the logger for a specific registers for given SN - they should match.
Having this - adding a mapping would be fairly easy (, but still tedious).
Could you elaborate more? Which inverter do you have, what format of serial number does the wifi stick have? Also which version of binding do you use and which thing type?
Thanks for your kind response.
Serial number 2106******
inverter 3ph hyd 15000 zss
i tried both things versions with the same result.
I’ll try on github. I’m inexperienced.
Regards, Antonio
Yes. This was a firmware issue. If you want to fix it, you need to contact support customerservice@solarmanpv.com and ask them to upload the firmware ME_08_2791_2.06 or other appropriate one because in new firmware there is a bug causing incorrect responses on port 8899.
It took me almost 2 months to find someone who knew what I was talking about. Officially, it is impossible to go back to the older version of firmware. It is possible that after my signals they will improve something in the firmware and the new firmware will communicate correctly on port 8899, but there is no certainty.
I have installed SOFAR HYD 10KTL-3PH-PRO inverter and Wifi Logger SN23xxx.
I have managed to get only Online (ON) and Operating state (grid connected) from channels till now.
No Active/reactive power is coming into my openhab items.
and following: 023-05-14 16:38:01.952 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Reading system info response]]]]]]] to pr 2023-05-14 16:38:01.953 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Reading system info response]]]]]]] 2023-05-14 16:38:01.953 [DEBUG] [swlogger.internal.connection.Channel] - Consuming messages, buffers 3 messages 0 2023-05-14 16:38:01.953 [DEBUG] [otocolv5.states.ReadingResponseState] - No message to read, trying to schedule next read or switching to next state 2023-05-14 16:38:01.954 [DEBUG] [ernal.protocolv5.states.StateMachine] - Trying to schedule task in 15 SECONDS during state Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Re]]] 2023-05-14 16:38:01.954 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Reading system info response]]]]]]] 2023-05-14 16:38:01.954 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:38:16.954 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Reading system info response]]]] 2023-05-14 16:38:16.955 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Reading system info response]]]]]]] 2023-05-14 16:38:16.955 [DEBUG] [swlogger.internal.connection.Channel] - Consuming messages, buffers 3 messages 0 2023-05-14 16:38:16.955 [DEBUG] [otocolv5.states.ReadingResponseState] - No message to read, trying to schedule next read or switching to next state 2023-05-14 16:38:16.956 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Wrapper [Reading system info response]]]]]]]] 2023-05-14 16:38:16.956 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:38:16.956 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Sending grid info request to process 2023-05-14 16:38:16.957 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Sending grid info request 2023-05-14 16:38:16.957 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Sending grid info request 2023-05-14 16:38:16.958 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:38:16.958 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Reaidng grid info response to process 2023-05-14 16:38:16.958 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Reaidng grid info response 2023-05-14 16:38:16.959 [DEBUG] [swlogger.internal.connection.Channel] - Consuming messages, buffers 3 messages 0 2023-05-14 16:38:16.959 [DEBUG] [otocolv5.states.ReadingResponseState] - No message to read, trying to schedule next read or switching to next state 2023-05-14 16:38:16.959 [DEBUG] [ernal.protocolv5.states.StateMachine] - Trying to schedule task in 15 SECONDS during state Reaidng grid info response 2023-05-14 16:38:16.959 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Reaidng grid info response 2023-05-14 16:38:16.959 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:38:19.156 [DEBUG] [swlogger.internal.connection.Channel] - Received 29 bytes 2023-05-14 16:38:19.157 [DEBUG] [swlogger.internal.connection.Channel] - Listening for data, buffers 3 messages 1 2023-05-14 16:38:24.837 [DEBUG] [swlogger.internal.connection.Channel] - Received 14 bytes 2023-05-14 16:38:24.838 [DEBUG] [swlogger.internal.connection.Channel] - Listening for data, buffers 2 messages 2 2023-05-14 16:38:31.959 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Wrapper [Reaidng grid info response] to process 2023-05-14 16:38:31.960 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Wrapper [Reaidng grid info response] 2023-05-14 16:38:31.960 [DEBUG] [swlogger.internal.connection.Channel] - Consuming messages, buffers 1 messages 2 2023-05-14 16:38:31.960 [DEBUG] [otocolv5.states.ReadingResponseState] - Trying to read a message 2023-05-14 16:38:31.961 [WARN ] [al.protocolv5.UnknownResponseHandler] - Unknown response, length 29: A5:10:00:10:15:00:7F:74:E0:C1:8D:02:01:FC:F8:02:00:41:28:00:00:5E:F9:5D:64:05:00:D5:15: 2023-05-14 16:38:31.961 [DEBUG] [ternal.protocolv5.ResponseDispatcher] - Handler class org.openhab.binding.lswlogger.internal.protocolv5.UnknownResponseHandler matched response 2023-05-14 16:38:31.962 [DEBUG] [otocolv5.states.ReadingResponseState] - Trying to read a message 2023-05-14 16:38:31.962 [WARN ] [al.protocolv5.UnknownResponseHandler] - Unknown response, length 14: A5:01:00:10:47:00:80:74:E0:C1:8D:00:7A:15: 2023-05-14 16:38:31.963 [DEBUG] [ternal.protocolv5.ResponseDispatcher] - Handler class org.openhab.binding.lswlogger.internal.protocolv5.UnknownResponseHandler matched response 2023-05-14 16:38:31.963 [DEBUG] [otocolv5.states.ReadingResponseState] - No message to read, trying to schedule next read or switching to next state 2023-05-14 16:38:31.963 [DEBUG] [ernal.protocolv5.states.StateMachine] - Trying to schedule task in 15 SECONDS during state Wrapper [Reaidng grid info response] 2023-05-14 16:38:31.964 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Wrapper [Reaidng grid info response] 2023-05-14 16:38:31.964 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:38:46.964 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Wrapper [Wrapper [Reaidng grid info response]] to process 2023-05-14 16:38:46.965 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Wrapper [Wrapper [Reaidng grid info response]] 2023-05-14 16:38:46.965 [DEBUG] [swlogger.internal.connection.Channel] - Consuming messages, buffers 3 messages 0 2023-05-14 16:38:46.966 [DEBUG] [otocolv5.states.ReadingResponseState] - No message to read, trying to schedule next read or switching to next state 2023-05-14 16:38:46.966 [DEBUG] [ernal.protocolv5.states.StateMachine] - Trying to schedule task in 15 SECONDS during state Wrapper [Wrapper [Reaidng grid info response]] 2023-05-14 16:38:46.966 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Wrapper [Wrapper [Reaidng grid info response]] 2023-05-14 16:38:46.966 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:40:43.782 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Wrapper [Wrapper [Wrapper [Reaidng grid info response]]] to process 2023-05-14 16:40:43.783 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Wrapper [Wrapper [Wrapper [Reaidng grid info response]]] 2023-05-14 16:40:43.783 [DEBUG] [swlogger.internal.connection.Channel] - Consuming messages, buffers 3 messages 0 2023-05-14 16:40:43.783 [DEBUG] [otocolv5.states.ReadingResponseState] - No message to read, trying to schedule next read or switching to next state 2023-05-14 16:40:43.784 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Wrapper [Wrapper [Wrapper [Reaidng grid info response]]] 2023-05-14 16:40:43.784 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:40:43.784 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Sending energy totals request to process 2023-05-14 16:40:43.784 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Sending energy totals request 2023-05-14 16:40:43.785 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Sending energy totals request 2023-05-14 16:40:43.785 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:40:43.785 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Reading energy totals response to process 2023-05-14 16:40:43.786 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Reading energy totals response 2023-05-14 16:40:43.786 [DEBUG] [swlogger.internal.connection.Channel] - Consuming messages, buffers 3 messages 0 2023-05-14 16:40:43.786 [DEBUG] [otocolv5.states.ReadingResponseState] - No message to read, trying to schedule next read or switching to next state 2023-05-14 16:40:43.787 [DEBUG] [ernal.protocolv5.states.StateMachine] - Trying to schedule task in 15 SECONDS during state Reading energy totals response 2023-05-14 16:40:43.787 [DEBUG] [ernal.protocolv5.states.StateMachine] - Leaving Reading energy totals response 2023-05-14 16:40:43.787 [DEBUG] [ernal.protocolv5.states.StateMachine] - Waiting for state to process 2023-05-14 16:40:45.800 [DEBUG] [swlogger.internal.connection.Channel] - Received 29 bytes 2023-05-14 16:40:45.800 [DEBUG] [swlogger.internal.connection.Channel] - Listening for data, buffers 3 messages 1 2023-05-14 16:40:58.787 [DEBUG] [ernal.protocolv5.states.StateMachine] - Taken state Wrapper [Reading energy totals response] to process 2023-05-14 16:40:58.788 [DEBUG] [ernal.protocolv5.states.StateMachine] - Entering Wrapper [Reading energy totals response] 2023-05-14 16:40:58.788 [DEBUG] [swlogger.internal.connection.Channel] - Consuming messages, buffers 2 messages 1 2023-05-14 16:40:58.788 [DEBUG] [otocolv5.states.ReadingResponseState] - Trying to read a message 2023-05-14 16:40:58.789 [DEBUG] [otocolv5.AbstractDataResponseHandler] - Trying to extract message, length 29 bytes 2023-05-14 16:40:58.789 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception: java.lang.IllegalArgumentException: newPosition > limit: (36 > 29)
at java.nio.Buffer.createPositionException(Buffer.java:318) ~[?:?]*
at java.nio.Buffer.position(Buffer.java:293) ~[?:?]*
at java.nio.ByteBuffer.position(ByteBuffer.java:1094) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.ExtractorsBuilder.lambda$1(ExtractorsBuilder.java:38) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.AbstractDataResponseHandler.lambda$0(AbstractDataResponseHandler.java:46) ~[?:?]*
at java.util.ArrayList.forEach(ArrayList.java:1541) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.AbstractDataResponseHandler.extract(AbstractDataResponseHandler.java:46) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.AbstractDataResponseHandler.handle(AbstractDataResponseHandler.java:37) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.ResponseDispatcher.accept(ResponseDispatcher.java:32) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.states.ReadingResponseState$ReadingHandler.onRead(ReadingResponseState.java:70) ~[?:?]*
at org.openhab.binding.lswlogger.internal.connection.Channel.read(Channel.java:124) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.states.ReadingResponseState$ReadingHandler.run(ReadingResponseState.java:63) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.states.StateMachine$MetaRunnableWrapper.handle(StateMachine.java:142) ~[?:?]*
at org.openhab.binding.lswlogger.internal.protocolv5.states.StateMachine.run(StateMachine.java:87) ~[?:?]*
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]*
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]*
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[?:?]*
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]*
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]*
at java.lang.Thread.run(Thread.java:829) [?:?]*
2023-05-14 16:42:36.894 [DEBUG] [swlogger.internal.connection.Channel] - Received 14 bytes 2023-05-14 16:42:36.894 [DEBUG] [swlogger.internal.connection.Channel] - Listening for data, buffers 2 messages 1 2023-05-14 16:44:36.936 [DEBUG] [swlogger.internal.connection.Channel] - Received 14 bytes 2023-05-14 16:44:36.937 [DEBUG] [swlogger.internal.connection.Channel] - Listening for data, buffers 1 messages 2 2023-05-14 16:45:43.785 [DEBUG] [swlogger.internal.connection.Channel] - Received -1 bytes 2023-05-14 16:45:43.786 [DEBUG] [swlogger.internal.connection.Channel] - Listening for data, buffers 0 messages 3
It seems that KTL-3PH- line is closed to KTLX line and current sn23x thing may be a mix for them, where there should be separate thing definitions.
I have scratched a debug thing for such case, in which you can test specific modbus addresses exposed by an inverter. You may look it through issues on github repo for this project. Or wait until I publish new version on the third party marketplace.
thank you, I have not found the related issue in git. Anyway what should be the testing scenario?
What dou you mean by"modbus addresses exposed by inverter"?
Sorry,maybe I got it, modbus addresses like registers for reading values (items) right?
What debug info should I reply back to you?