Orange pi zero 3 with ADXL

Basic Information:

Printer Model: Ender 3 Pro
MCU / Printerboard:BTT skr mini e3 v3, orange pi zero 3
klippy (20).log (1.8 MB)

Fill out above information and in all cases attach your klippy.log file (use zip to compress it, if too big). Pasting your printer.cfg is not needed
Be sure to check our “Knowledge Base” Category first. Most relevant items, e.g. error messages, are covered there

Describe your issue:

Hello trying to get adxl wofrking with orange pi zero 3. but getting this error. mcu ‘adxl345’: Starting connect
mcu ‘adxl345’: Unable to open port: [Errno 2] No such file or directory: ‘/tmp/klipper_host_mcu’.
SPI is enabled, done everythink as this guide says RPi microcontroller - Klipper documentation
but nothing works. When i look into tmp folder there is nothing such as klipper_host_mcu. No matter how many time i try to do this. sudo reboot doesnt helps too.

You also might have a look at Measuring Resonances - Klipper documentation
And Anycybic I3 Mega/orangepi zero 3/ adxl345/ i2c - #11 by rvdr (please read the whole tread).

Your klippy.log indicates, that your config is wrong.

I would start over.

Good luck, hcet14

Likely you did not or not correctly follow RPi microcontroller - Klipper documentation

Your log indicates that the /tmp/klipper_host_mcu does not exist, which in turn means the required service klipper-mcu is not running.

Check with systemctl status klipper-mcu and its output should look like:

klipper@bigtreetech-cb1 ~/klipper $ systemctl status klipper-mcu
● klipper-mcu.service - Starts the MCU Linux firmware for klipper on startup
     Loaded: loaded (/etc/systemd/system/klipper-mcu.service; enabled; preset: enabled)
     Active: active (running) since Sat 2023-10-14 08:17:22 CEST; 1 month 26 days ago
   Main PID: 929 (klipper_mcu)
      Tasks: 1 (limit: 1003)
     Memory: 744.0K
        CPU: 1h 15min 34.145s
     CGroup: /system.slice/klipper-mcu.service
             └─929 /usr/local/bin/klipper_mcu -r -I /tmp/klipper_host_mcu

Notice: journal has been rotated since unit was started, output may be incomplete.

If you get some failed results, try sudo journalctl UNIT=klipper-mcu to get some more information.
Usually, it makes sense to issue a systemctl restart klipper-mcu.service before trying this journalctl command.

BTW, since this seems one of your popular advices:

Insanity is doing the same thing over and over and expecting different results.

Albert Einstein seem to have been a quite clever person.


I have a Pi Zero 3 too, couldn’t get mine to work either. The first issue was that i couldnt get the mcu running on debian bookworm (supplied by the orangepi manufacturer)

If you get the error “Got error -1 in sched_setscheduler: (1)Operation not permitted” when running the command supplied by sineos
sudo sysctl -w kernel.sched_rt_runtime_us=-1
echo “kernel.sched_rt_runtime_us = -1” | sudo tee /etc/sysctl.d/10-disable-rt-group-limit.conf
will fix the issue

This is a very good advice @rvdr and applicable to running the Armbian distribution or distributions building upon Armbian.

The above command I have provided would have made clear if the OT is suffering from this.
Generally, I prefer to know the problem before giving advices, especially if these modify Kernel parameters.

Thank you for mentioning that. fixed my comment so its clear you should only run this command when having this specific issue

As far as i know, this limit is disabled by default on some distributions.
On the dietpi beta i didnt have this problem btw

Pretty rude! Stay with your Einstein citation, this is not the first time you being rude.

Isn’t there a rule mentioned in the FAQ of this forum
Oh, I forgot you are “The great Admin”. But of course, that rule doesn’t apply to you!

Sorry for mentioning you, I didn’t get that.

Why don’t you ask LifeOfBrian?

if anyone have the same problem, found a solution, this post Armbian kernel & Klipper host mcu: "Got error -1 in sched_setschedule" worked for me.

I was hoping he would reply to the thread and in the meantime I ordered a Pi Pico cause Im somewhat tired of the hassle.

1 Like

I had a Zero and I think it might be different to the Zero 3.
If I recall correctly SPI needed to be enabled via boot files first.
As I’m just stuck in repairing my v0 although my dog is helping me I can check whether I still have the documentation or not.


I defined my Orange Pi Zero like follows:

# Orange Pi Zero
[mcu opi] 
serial: /tmp/klipper_host_mcu

And it looks like I followed this here to get SPI enabled:

I’ll have a look tomorrow into my old KP3S config where the Orange Pi was used with the diskrete ADXL345 module and not the EBB36.
Hopefully I’ll still have it.

1 Like

Recent Armbian (v23.x) invested significant effort in the OPi / Allwinner support.

I’d advise to always try Armbian before the miserable distributions by OPi themselves (unless they meanwhile also shifted to Armbian, did not check for a while).

On my OPi 3 LTS getting SPI or I2C to run could conveniently be achieved with the armbian-config command and also WIFI is working flawless now.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.