/r4850g2_arduino

Huawei R4850G2 rectifier CAN bus control via Arduino

Primary LanguageC++

Huawai R4850G2 rectifier canbus control

Based on:

https://www.beyondlogic.org/review-huawei-r4850g2-power-supply-53-5vdc-3kw/ https://github.com/craigpeacock/Huawei_R4850G2_CAN

IMPORTANT

  • adjust CAN.setClockFrequency() to match the crystal on the MCP2515 Board
  • put a termination jumper on J1, didn't work without for me (AZDelivey MCP2515 board)
  • be careful with any Serial.print statements in the onReceive handler. This will lead to lost CAN frames.
  • no regular status request CAN frames are being sent while the menu is active, so the rectifier will fall back to offline values at some point (menu will hence timeout after 10s by default)

Requirements

  • this has been tested with an Arduino Mega 2560 and a Nano
  • libraries used:
    • Adafruit can library (forked from sandeepmistry/arduino-CAN): https://github.com/adafruit/arduino-CAN
    • ArduinoMenu (for Sketch R4850G2_Menu.ino, not required for R4850G2_V2.ino)
    • SSD1306Ascii (for Sketch R4850G2_Menu.ino, not required for R4850G2_V2.ino)
    • ClickEncoder (for Sketch R4850G2_Menu.ino, not required for R4850G2_V2.ino)

PICTURES:

image

image

PINOUT

@Roturbo has proovided a nice pinout for a nano:

316427349-3ad49603-3def-4ec2-9e40-f8289db90cfa