Putting OpenOrangeStorm on the Elegoo Orange Storm Giga

Basic Information:

Printer Model: Elegoo Orange Storm Giga
MCU / Printerboard: STM32407/RP2020
Host / SBC: ZNP Giga V3
klippy.log:
klippy.log (791.8 KB)

I’m trying to get the OpenOrangeStorm project to run on my printer, but am failing miserably and am at a point, where I’m about to give up.

The .img gets flashed to the eMMC and then further steps are performed, but when it comes to flashing the MCUs, nothing is working.
The setup is as follows:
→ Main board has the host and main MCU STM32F407(I guess)
→ Printhead has a RP2020 MCU
→ Elegoo had them connected via CAN

I attach photos of the boards, so you can check if my analysis is right.




Now, from what I see, the CAN bus isn’t showing up in ifconfig, nor is there a device can0. I’ve tried everything I found on online to solve the issue, but I think it’s down to no device running CAN? Neither the STM32, nor the printhead is running the firmware properly. At least that’s what I think it’s the case.
When generating the firmware and putting it on a SD card, the .bin file gets changed to a .cur file but “MCU” still doesn’t show up, so I guess it’s not programmed.
I have tried putting the printhead board into bootsel and uploading the .uf2 file that gets generated when generating the firmware, but nothing.

I also have trouble understanding exactly where to look at for the reason of the issue. Am I right in the assumption that the interface layers are as follows?
Host ↔ STM32 ↔ RP2020
If that’s the case, I could put on the printhead whatever I want, but as long as the SM32 isn’t working, I will never get any connection.

The reason that the CAN bus isn’t working, is due to the STM32, or due to the OS on the Host?

What else can I try? People in the Discord put the firmware on via STLink, and I will try that as soon as I get mine, but in the meantime I wanted to ask here for help.

FWIW, it would be hard to assist you, because to do so, there should be some info about how the board is done.
Generally.
CAN is used with a CAN bridge.
It can be USB2CAN, which could be done by STM32 and then you would be able to see it in lsusb.
Or by some sort of CAN shield, like SPI CAN https://www.waveshare.com/wiki/RS485_CAN_HAT.
In this case, it is surely done by hand in the Linux system.

Only in those cases will you see the can0 and be able to use it.
At least for now, with vanilla Klipper.

So, probably, the first thing that you really need to do is to find out how the boards are connected to the SBC.
Then find the used chip pins for that, and make/flash firmware, which would utilize those pins.

Hope that helps.

1 Like

Solution is described here: