Can't connect to printer from Raspberry Pi

OctoKlipper is the instance that communicates with the Klipper setup on the Pi.
And Klipper on the Pi communicates with the Klipper part on the printer.

It is to be known if Klipper is still on that Pi of the OP.

It doesn't say anything on that link about the OctoKlipper plugin. It describes connecting to /tmp/printer.

Sorry it isn't just plug and play but we are making progress! We have more questions, however...

Where did the printer come from (i.e. did you purchase it new or is it used)?

Since the printer appears to have Klipper firmware installed, you have two choices, install Klipper on your RPi or flash the printer with firmware based on Marlin.

I'd recommend returning to a Marlin-based firmware because there's more Marlin expertise in these forums but there are Klipper forums that could provide you with help in getting things working if you want to go that way.

If you stay with Klipper, make sure they support Debian 11 (Bullseye) as I believe that is the OS you have installed (OctoPi 1.0.0). If they only support Debian 10 (Buster), you would have to download OctoPi 0.18.0 and reimage your RPi.

Sure.

But it need some basic functionalities to control Klipper.
Or can you run Klipper on OctoPi/OctoPrint completely without a frontend?

But in all you are correct.

I'm trying to follow that guide but now I'm getting more errors trying to do the make flash command.

pi@octopi:~/klipper $ make flash FLASH_DEVICE=/dev/serial/by-id/usb-Klipper_stm32f103xe_35FFD1054254393922692257-if00
Flashing out/klipper.elf.hex to /dev/serial/by-id/usb-Klipper_stm32f103xe_35FFD1054254393922692257-if00 via avrdude
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x0d
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x10
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x49
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x47
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x81
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xbf
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x2b
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x82
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xbf
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x5b

avrdude done. Thank you.

make: *** [src/avr/Makefile:34: flash] Error 1

This name is implying to me that this board has an STM32F103 chip, which would be a 32 bit board not an 8 bit one, and so it won't flash with avrdude. I suspect that means your Klipper configuration is not correct. A 32 bit board in an Ender 3 would normally flash by putting a .bin file on an SD card and inserting it in the printer, then turning the printer on and waiting while it flashes, it doesn't take hex files which are for 8 bit boards. Unfortunately, Creality change the hardware on their printers so often that 'Ender 3' doesn't actually tell you much about what it has inside it, you will likely have to open it up and look at the board to see what version number is printed on the board (and it's bad enough that sometimes that is not enough :slightly_frowning_face:)

Is this a printer you have just got new, or 2nd hand from someone else? I guessed the latter, and I would say they might be able to help you get it setup if they are nice. To be honest wherever you got it from I would hope that they would be able to tell you how to get it to work, especially if it has been flashed with Klipper - this means that it is no longer plug & play - instead of the stock firmware (Marlin). If it's second hand, the previous user has setup this for themselves (I would guess) so they have done this all before and that would be good information.