Skip to content

Co-exist with other CANopen clients on the same CAN bus #8

@davefiddes

Description

@davefiddes

It seems that the esp32-web-interface can become confused and stop operating when sharing a CAN bus with another CANopen client such as opeinverter_can_tool.

To replicate:

  1. Set up a shared CAN bus with esp32-web-interface, stm32-sine and a PC with openinverter_can_tool
  2. Verify the esp32-web-interface Dashboard shows the current status
  3. Configure at least one TX or RX can mapping on the inverter (this is essential)
  4. Run oic can list

Expected result:

  • The dashboard continues to update

Actual result:

  • The dashboard stops updating and reports a red banner with "Communication problem between ESP and STM"
  • The ESP32 serial log outputs
Error obtaining serial number, try restarting
Error obtaining serial number, try restarting
Error obtaining serial number, try restarting

It looks like the device is getting stuck in the ERROR state and there is no way out from this other than to reboot the device.

With no can mappings defined the two tools appear to co-exist. It looks like the CANopen SDO abort messages which are an essential part of listing CAN mappings are tripping up the state machine. Running oic can clear tx, oic can clear rx and then oic can list doesn't expose any problems.

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