Skip to content

VE.Direct: sometimes the end sign from hex frames is wrong #1585

@SW-Niko

Description

@SW-Niko

What happened?

The hex frame end sign is normally 0x0A ('\n') but sometimes we get 0xFE from the serial interface _vedirectSerial->read().
Example: ": A 0 0 0 2 0 0 0 1 4 8 fe"
The hex message and the checksum are fine. Just the end sign is wrong.

I assume this is not a transmission fault because I logged the data from 2 solar charger and 1 smart shunt over one week.
Smart shunt: No faults
Solar charger: 5 text frame checksum faults and 8 hex frame end sign faults (always 0xFE instead of 0x0A)

To Reproduce Bug

Do a long time logging of the VE.Direct interface

Expected Behavior

Transmission faults must be random.

Install Method

Self-Compiled

What git-hash/version of OpenDTU-OnBattery?

3463b14

What firmware variant (PIO Environment)?

generic_esp32s3_usb

Relevant log/trace output

Special logging
17:48:28.671 > [VE.Direct MPPT 7/17] ------------Frame Handler--------------
17:48:28.887 > [VE.Direct MPPT 7/17] Frames: 71177, Frames containing V-Field: 71176, Frames per Data-Set: 1
17:48:28.990 > [VE.Direct MPPT 7/17] Communication starts: 1, Start frames lost min: 1, Start frames lost max: 1 
17:48:29.041 > [VE.Direct MPPT 7/17] Checksum faults: 1, More then 500ms fault: 1, Start checksum: 0
17:48:29.100 > [VE.Direct MPPT 7/17] Text buffer overflow faults: 0, Value buffer overflow faults: 0
17:48:29.147 > [VE.Direct MPPT 7/17] Hex checksum faults: 20, Hex buffer overflow faults: 0, Hex Hex faults: 2
17:48:29.197 > [VE.Direct MPPT 7/17] Last fault: From hex to hex
17:48:29.299 > [VE.Direct MPPT 7/17] serial input (208 Bytes):
17:48:29.501 > [VE.Direct MPPT 7/17]  :  A  0  3  2  0  0  0  F  F  7  F  A  A 0a  :
17:48:29.552 > [VE.Direct MPPT 7/17]  A  2  7  2  0  0  0  0  0  0  0  0  0  0  0  0
17:48:29.598 > [VE.Direct MPPT 7/17]  4 0a  :  A  D  5  E  D  0  0  3  0  0  A  4  F
17:48:29.646 > [VE.Direct MPPT 7/17] 0a  :  A  5  0  1  0  0  0  0  0  0  0  0  0  0
17:48:29.693 > [VE.Direct MPPT 7/17]  0  0  0  0  0  0  0  0  0  0  0  3  3  0  A  2
17:48:29.739 > [VE.Direct MPPT 7/17]  E  0  A  0  0  0  0  0  0  0  0  0  0  0  0  0
17:48:29.787 > [VE.Direct MPPT 7/17]  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
17:48:29.830 > [VE.Direct MPPT 7/17]  0  0  0  0  0  5  D  0  4  6  C  0  0  A  9 0a
17:48:29.878 > [VE.Direct MPPT 7/17]  :  A  4  F  1  0  0  0  0  1  0  0  0  0  0  0		Historische Daten
17:48:29.925 > [VE.Direct MPPT 7/17]  0  0  0  0  5  D  7  E  0  0  0  0  5  D  7  E
17:48:29.976 > [VE.Direct MPPT 7/17]  0  0  0  0  8  6  1  1  C  3  0  B  1  E  2  2
17:48:30.022 > [VE.Direct MPPT 7/17]  0  5  F  F  F  F  F  F  F  F  F  F  F  F  F  F
17:48:30.069 > [VE.Direct MPPT 7/17]  F  F  F  F  F  F  F  F  F  F  F  F  9  8 fe  :		fe anstatt 0a

Anything else?

On my system the issue pop up 2 times a day. Not really a problem.

I was not able to find the root cause of the problem. Maybe a bug on Victron side or on the ESP32 serial driver.

Please confirm the following

  • I believe this issue is a bug that affects all users of OpenDTU-OnBattery, not something specific to my installation.
  • I have already searched for relevant existing issues and discussions before opening this report.
  • I have updated the title field above with a concise description.
  • I have double checked that my inverter does not contain a W in the model name (like HMS-xxxW) as they are not supported.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions