Skip to content

Worked fine for months, stopped with QPIRI reply too short (97 bytes) #120

@lukolszewski

Description

@lukolszewski

My 5kW EASUN SMH-ii-7K worked fine for months with the fix in inverter.cpp shown below:

  •    if (buf[0]!='(' || buf[replysize-1]!=0x0d) {
    
  •    if (buf[0]!='(' || buf[replysize-1]!=0x0a) {
    

(essentially my inverrter is adding extra LF on the end).

Now it stopped working after nothing has changed with the inverter with:
Mon Sep 16 23:03:03 2024 INVERTER: Debug set
Mon Sep 16 23:03:03 2024 INVERTER: Current CRC: 49 C1
Mon Sep 16 23:03:03 2024 INVERTER: QMOD reply size (5 bytes)
Mon Sep 16 23:03:03 2024 INVERTER: QMOD: 5 bytes read: (B
Mon Sep 16 23:03:03 2024 INVERTER: QMOD query finished
Mon Sep 16 23:03:03 2024 INVERTER: Current CRC: B7 A9
Mon Sep 16 23:03:04 2024 INVERTER: QPIGS reply size (110 bytes)
Mon Sep 16 23:03:04 2024 INVERTER: QPIGS: 110 bytes read: (244.4 50.0 229.9 50.0 0436 0252 006 394 52.80 000 100 0031 0000 000.0 00.00 00005 00010000 00 00 00000 010
Mon Sep 16 23:03:04 2024 INVERTER: QPIGS query finished
Mon Sep 16 23:03:04 2024 INVERTER: Current CRC: F8 54
Mon Sep 16 23:03:07 2024 INVERTER: QPIRI read timeout
Mon Sep 16 23:03:07 2024 INVERTER: QPIRI reply too short (97 bytes)
Mon Sep 16 23:03:07 2024 INVERTER: Current CRC: B4 DA
Mon Sep 16 23:03:07 2024 INVERTER: QPIWS reply size (36 bytes)
Mon Sep 16 23:03:07 2024 INVERTER: QPIWS: 36 bytes read: (00000000001000000000000000000000
Mon Sep 16 23:03:07 2024 INVERTER: QPIWS query finished
Mon Sep 16 23:03:12 2024 INVERTER: Current CRC: F8 54
Mon Sep 16 23:03:15 2024 INVERTER: QPIRI read timeout
Mon Sep 16 23:03:15 2024 INVERTER: QPIRI reply too short (97 bytes)
Mon Sep 16 23:03:20 2024 INVERTER: Current CRC: F8 54
Mon Sep 16 23:03:23 2024 INVERTER: QPIRI read timeout
Mon Sep 16 23:03:23 2024 INVERTER: QPIRI reply too short (97 bytes)
Mon Sep 16 23:03:28 2024 INVERTER: Current CRC: F8 54
Mon Sep 16 23:03:31 2024 INVERTER: QPIRI read timeout
Mon Sep 16 23:03:31 2024 INVERTER: QPIRI reply too short (97 bytes)

It just goes in a loop afterwards. I tried increasing QPIRI buffer, but it made no difference.

I tried decreasing QPIRI buffer to 97 and this chnaged the message to CRC fail:

Mon Sep 16 23:10:07 2024 INVERTER: Debug set
Mon Sep 16 23:10:07 2024 INVERTER: Current CRC: 49 C1
Mon Sep 16 23:10:07 2024 INVERTER: QMOD reply size (5 bytes)
Mon Sep 16 23:10:07 2024 INVERTER: QMOD: 5 bytes read: (B
Mon Sep 16 23:10:07 2024 INVERTER: QMOD query finished
Mon Sep 16 23:10:07 2024 INVERTER: Current CRC: B7 A9
Mon Sep 16 23:10:07 2024 INVERTER: QPIGS reply size (110 bytes)
Mon Sep 16 23:10:07 2024 INVERTER: QPIGS: 110 bytes read: (244.5 50.0 230.2 50.0 0459 0297 006 394 52.90 000 100 0027 0000 000.0 00.00 00006 00010000 00 00 00000 010
Mon Sep 16 23:10:07 2024 INVERTER: QPIGS query finished
Mon Sep 16 23:10:07 2024 INVERTER: Current CRC: F8 54
Mon Sep 16 23:10:08 2024 INVERTER: QPIRI reply size (97 bytes)
Mon Sep 16 23:10:08 2024 INVERTER: QPIRI: CRC Failed! Reply size: 97 Buffer: (230.0 30.4 230.0 50.0 30.4 7000 6200 48.0 44.0 42.0 56.4 53.5 2 30 110 0 2 3 2 01 0 0 53.0 0 1n
00000 010
Mon Sep 16 23:10:08 2024 INVERTER: Current CRC: B4 DA
Mon Sep 16 23:10:08 2024 INVERTER: QPIWS reply size (36 bytes)
Mon Sep 16 23:10:08 2024 INVERTER: QPIWS: 36 bytes read: (00000000000000000000000000000000
Mon Sep 16 23:10:08 2024 INVERTER: QPIWS query finished
Mon Sep 16 23:10:13 2024 INVERTER: Current CRC: F8 54
Mon Sep 16 23:10:14 2024 INVERTER: QPIRI reply size (97 bytes)
Mon Sep 16 23:10:14 2024 INVERTER: QPIRI: CRC Failed! Reply size: 97 Buffer: (230.0 30.4 230.0 50.0 30.4 7000 6200 48.0 44.0 42.0 56.4 53.5 2 30 110 0 2 3 2 01 0 0 53.0 0 1n
00000 010
Mon Sep 16 23:10:19 2024 INVERTER: Current CRC: F8 54
Mon Sep 16 23:10:19 2024 INVERTER: QPIRI reply size (97 bytes)
Mon Sep 16 23:10:19 2024 INVERTER: QPIRI: CRC Failed! Reply size: 97 Buffer: (230.0 30.4 230.0 50.0 30.4 7000 6200 48.0 44.0 42.0 56.4 53.5 2 30 110 0 2 3 2 01 0 0 53.0 0 1n
00000 010
Mon Sep 16 23:10:24 2024 INVERTER: Current CRC: F8 54
Mon Sep 16 23:10:25 2024 INVERTER: QPIRI reply size (97 bytes)
Mon Sep 16 23:10:25 2024 INVERTER: QPIRI: CRC Failed! Reply size: 97 Buffer: (230.0 30.4 230.0 50.0 30.4 7000 6200 48.0 44.0 42.0 56.4 53.5 2 30 110 0 2 3 2 01 0 0 53.0 0 1n
00000 010

The config that worked fine for months is:

qpiri=98

This allows you to modify the buffersize for the qpiws command

qpiws=36

This allows you to modify the buffersize for the qmod command

qmod=5

This allows you to modify the buffersize for the qpigs command

qpigs=110

No idea what is going on. Any tips?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions