[new binding] Logger LSW for Sofar/Omnik/IE for SolarmanPV based on protocol v5 (iGEN tech)

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.

Hello I think I have the same problem on a WIFI USB datalogger serial number 236******* on a ZCS Azzurro 1PH 5000TLM-V3 inverter

1 Like

The information about my inverter does not appear and the real-time production information is incorrect and changes randomly every day

I just sent an email with my problem and a screenshot, I hope to get an answer.
I asked them for working firmware.
Fingers crossed.

Hi gratteavecsapatte,

I have this version:

Do I need to ask for a firmware upgrade?
Can I ask you what have you sent in the request email to the customer service?

Thank you

Hi Piotr,

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.

My Logger module version is LSW3_15_XXXX_1.68.

My debug info when suspend / enabled thing:


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

My logger screen:

Any hint?
Thank you.
Marek.

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.

Hi Piotr,

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?

Thanks once more.
Marek.

1 Like

Were you able to get any information?

In upcoming week or two I will make a release with debug thing and some manual how to tinker with it. The code is written and tested, but no manual and release right now for this.

With this debug thing you will be able to test some configuration and hopefully map your inverters / loggers / firmware mashup onto something called modbus registers. When those modbus registers would be known for your PV setup - we may much easily create things specific to your setup.

1 Like

Ok Piotr, waiting for the release to test.
Thanks.

Any news regarding this plz?

I have finished more or less docs on the debug thing.

I am on pursuit to find a time spot to make a release now :slight_smile:

Hi there, I have released the debug thing. Read more here - LswLogger Binding [Sofar/Omnik/IE wifi/eth stick for SolarmanPV] - #4 by Piotr_Bojko

1 Like

Hi Piotr,

reported the debug thing output for regs:
0x0404 | 0x0420
and model: Sofar HYD 10KTL-3PH-PRO on Git: Git issue.
Plz let me know if I should test more.
Thanks once more.

Hello Piotr,

The debug thing output for SUN800G3 was reported on GitHub
Let me know if you need more information.
Tx.

Hi Piotr, any news regarding my debuging?

Thanks.

Hi folks,

I’m kinda back online. On Github I will attach a label “in progress” to signal on which ticket I am working currently.

2 Likes

Waiting for your reply.

I am looking forward on any progress regarding my issue

Thanks.
M.