# 'mcu': Unable to connect

**URL:** <https://klipper.discourse.group/t/mcu-unable-to-connect/16763>\
**Category:** General Discussion\
**Created:** [May 31, 2024, 3:47pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763 "2024-05-31T15:47:13Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [May 31, 2024, 3:47pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/1 "2024-05-31T15:47:13Z")

</div>

### Basic Information:

Printer Model: BIQU-BX  
 MCU / Printerboard: SKR SE-BX-V3.0  
 klippy.log :  
[klippy.log](https://klipper.discourse.group/uploads/short-url/pM1RZOFVv3q0qsxBtaCfnWJP5d.log) (5.2 KB)

While shifting form Marlin I installed Klipper on a PI4 attached to the TFT70-BX-V3.0. The installation seems to work fine.

 ![Capture d'écran 2024-05-31 173358](https://global.discourse-cdn.com/free1/uploads/klipper/original/2X/f/f0b54084a84ce953269c419f7f279b9e889d831c.png)

I copied the Klipper.bin file to printer SD card (renamed firmware.bin) and the firmware update did not give any error.  
However when starting Mainsail I get the error “mcu ‘mcu’: Unable to connect”  
It seems that serial connection is not set correctly

```auto

```

```auto
ls /dev/serial/by-id/*
/dev/disk:
by-id by-label by-partuuid by-path by-uuid

```

```auto
/dev/dma_heap:
linux,cma system

```

```auto
/dev/dri:
by-path card0 renderD128

```

```auto
/dev/fd:
0 1 2 3

```

```auto
/dev/input:
mice

```

```auto
/dev/mapper:
control

```

`/dev/mqueue:`

```auto

```

/dev/net:  
tun

```auto

```

```auto
/dev/pts:
0 1 ptmx

```

`/dev/shm:`

```auto
/dev/snd:
by-path controlC0 pcmC0D0p seq timer

```

```auto
/dev/v4l:
by-path

```

```auto

```

I checked cables continuity ok (connection was working with Marlin)

Do you have any suggestion about how to solve this problem ?

---

<div class="post-metadata">

**Author:** ![EddyMI3D](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/eddymi3d/32/1981_2.png) [@EddyMI3D](https://klipper.discourse.group/u/EddyMI3D)\
**Post date:** [May 31, 2024, 4:56pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/2 "2024-05-31T16:56:31Z")

</div>

Hello @Cracoukas !

Please format your code snippet with the `Preformatted Text` feature of the forum editor.

![Format](https://global.discourse-cdn.com/free1/uploads/klipper/original/2X/6/643ab9def96b03089cfb0c194628129fcc96b3f8.png)

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [May 31, 2024, 5:18pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/3 "2024-05-31T17:18:41Z")

</div>

If `ls /dev/serial/by-id/*` does not return anything, the your boards is either not correctly connected or not correctly flashed.  
See [Issues flashing the printer board](https://klipper.discourse.group/t/issues-flashing-the-printer-board/14015)

---

<div class="post-metadata">

**Author:** ![TheFuzzyGiggler](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/thefuzzygiggler/32/12313_2.png) [@TheFuzzyGiggler](https://klipper.discourse.group/u/TheFuzzyGiggler)\
**Post date:** [May 31, 2024, 5:57pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/4 "2024-05-31T17:57:25Z")

</div>

Hard to read without the preformatted text but if

```auto
ls /dev/serial/by-id/*

```

doesn’t return anything, try

```auto
ls /dev/serial/by-path/*

```

That’s needed for some chipsets

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [May 31, 2024, 7:47pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/5 "2024-05-31T19:47:22Z")

</div>

The connection was working ok when in was running Marlin and I checked the cables continuity and they are ok

I copied the klipper.bin file to the printer SD card, renamed it “firmware.bin” and restarted. The firmware update seemded to work ok and the firmware.bin was renamed firmware.cur, so I suppose it was flashed correctly

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [May 31, 2024, 7:51pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/6 "2024-05-31T19:51:53Z")

</div>

It does not work either:  
`ls: cannot access '/dev/serial/by-path/*': No such file or directory`

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [May 31, 2024, 8:12pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/7 "2024-05-31T20:12:35Z")

</div>

> [@Cracoukas](#):
>
> The connection was working ok when in was running Marlin and …

As long as the board is not even recognized by Linux on OS level, you have exactly 3 options:

1. Wiring issue between host and board
2. Dead board or dead host
3. Not correctly flashed

So, do you want to solve the problem or just express your conviction that it can’t be that it doesn’t work and that you’ve done everything right?

In case of the first, follow the advice given in the link above.

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [May 31, 2024, 8:27pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/8 "2024-05-31T20:27:13Z")

</div>

Sorry if I annoy you but, I just want to solve the problem and understand what is not working

1. Wiring issue:

- the connection bewtween the PI and the board was working ok when I was running Marling
- I check the continuity of the wiring with a multimeter
- I tried with a second set and TFT70-BX-V3.0 bord and PI, and it did not work either
- Flashing ? I copied the klipper.bin file to the pronter board SD card, renamed it frimware.bin and restarted. The display shows firmware updating 0%-100% and then the firmware.bin was correctly renamed firmware.cur

So I’am lost !

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [May 31, 2024, 8:32pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/9 "2024-05-31T20:32:39Z")

</div>

> [@Cracoukas](#):
>
> the connection bewtween the PI and the board was working ok when I was running Marling

This connection is not needed nor used on Marlin (at least not how Klipper does).

The link above has roughly 30 individual items that can lead to this effect and need to be checked.  
So, if you stick to the 5 points above and repeat them, then we are running in circles and unfortunately I cannot further assist.

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [May 31, 2024, 9:57pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/10 "2024-05-31T21:57:29Z")

</div>

I suppose it’s some missconfuguration but what ?  
I followed your advices in " `[Debian 11 (Bullseye) udev bug - No board or serial found](https://klipper.discourse.group/t/debian-11-bullseye-udev-bug-no-board-or-serial-found/10711)`" as well as `[BRLtty / ModemManager - Services Interfering with Klipper](https://klipper.discourse.group/t/brltty-modemmanager-services-interfering-with-klipper/10611)` but I still cannot connect to the printer through the PI.

I used the printer-biqu-bx-2021.cfg config file (without modifications) and the suggested parameters :  
 ![Capture d'écran 2024-05-31 174243](https://global.discourse-cdn.com/free1/uploads/klipper/original/2X/1/19c60967d48391a14d4f3460a5a2384c20db9059.png)

and just completed the config file:

```auto
[all]
dtparam=i2c_vc=on
dtparam=i2c_arm=on
dtoverlay=vc4-kms-dsi-btt-bxv3-7inch
enable_uart=1
dtoverlay=disable-bt
disable_splash=1

```

Before compiling.

The screen was installed according to:  
`https://github.com/bigtreetech/BIQU-BX/tree/master/Firmware/RPi-Linux-RPi-7inch-DSI`

The printer board or the PI4 could of course have problems, but two of them seems unlikely.

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [June 1, 2024, 8:56am UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/11 "2024-06-01T08:56:49Z")

</div>

Follow in the exact sequence as given [How-To Trouble-Shoot](https://klipper.discourse.group/t/how-to-trouble-shoot/6326#linux-dmesg-5) and **attach** the resulting `dmesg.txt`

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [June 1, 2024, 11:01am UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/12 "2024-06-01T11:01:16Z")

</div>

Here is the procedure I followed:

```auto
https://klipper.discourse.group/t/debian-11-bullseye-udev-bug-no-board-or-serial-found/10711
sudo apt -y update && sudo apt -y upgrade
apt-cache policy udev

udev:
  Installed: 247.3-7+rpi1+deb11u2
  Candidate: 247.3-7+rpi1+deb11u2
  Version table:
 *** 247.3-7+rpi1+deb11u2 500
        500 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages
        100 /var/lib/dpkg/status

curl -sf -L https://raw.githubusercontent.com/Sineos/useful_bits/main/Linux/fix_debian_udev.sh | sudo bash

apt-cache policy udev

udev:
  Installed: 252.5-2~bpo11+1
  Candidate: 252.5-2~bpo11+1
  Version table:
 *** 252.5-2~bpo11+1 100
        100 http://ftp.debian.org/debian bullseye-backports/main armhf Packages
        100 /var/lib/dpkg/status
     247.3-7+rpi1+deb11u2 500
        500 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages

https://klipper.discourse.group/t/how-to-trouble-shoot/6326
copy printer-biqu-bx-2021.cfg to /home/Jacques/printer_data/config and renamed it printer.cfg
Buil Klipper using kiauh
Copy Klipper.bin to the printer SD card and renamed ir firmware.bin
Restarted the printer, firmware flashed and renamed 

Klippy.log:
Starting Klippy...
Args: ['/home/Jacques/klipper/klippy/klippy.py', '/home/Jacques/printer_data/config/printer.cfg', '-I', '/home/Jacques/printer_data/comms/klippy.serial', '-l', '/home/Jacques/printer_data/logs/klippy.log', '-a', '/home/Jacques/printer_data/comms/klippy.sock']
Git version: 'v0.12.0-207-g6cd17420'
Branch: master
Remote: origin
Tracked URL: https://github.com/Klipper3d/klipper
CPU: 4 core ?
Python: '3.9.2 (default, Mar 12 2021, 04:06:34) \n[GCC 10.2.1 20210110]'
Start printer at Sat Jun 1 11:43:55 2024 (1717238635.4 9.8)

mcu 'mcu': Starting serial connect
mcu 'mcu': Unable to open serial port: [Errno 13] could not open port /dev/ttyAMA0: [Errno 13] Permission denied: '/dev/ttyAMA0'

ls /dev/serial/by-id/*
ls: cannot access '/dev/serial/by-id/*': No such file or directory

```

and the resulting dmesg file  
[dmesg.txt](https://klipper.discourse.group/uploads/short-url/kBcZ0BdGInoZ1CIIZBSVe8GLPS0.txt) (28.5 KB)

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [June 1, 2024, 11:34am UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/13 "2024-06-01T11:34:41Z")

</div>

I am wondering if it could be possible to bypass the TFT70 board and connect the PI to the printer using the USB ports at least for testing purposes ?  
I am also considering switching to a Manta board, may be easyer to get working with Klipper ?

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [June 1, 2024, 5:31pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/14 "2024-06-01T17:31:01Z")

</div>

Your dmesg report does not contain a single trace of a connected printer board.

> [@Cracoukas](#):
>
> I am wondering if it could be possible to bypass the TFT70 board

What do you mean with this? I hope, it is clear that the SKR board needs to be connected to the Pi and not the TFT?

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [June 2, 2024, 12:50am UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/15 "2024-06-02T00:50:00Z")

</div>

Indeed, the question is how ?  
With the SKR SE-BX and TFT70-BX V2 it could be connected either by USB or using pin 8 (TXD) and 10 (RXD) of the PI and the corresponding WiFi pins on the SKR board.  
Now BTT does not support V2 boards anymore and replaced them by V3.0 version which have different connections. The UART connector of the TFT both provide power supply to the PI and connect the TXD-RXD pins.

 ![PI-TFT connection](https://global.discourse-cdn.com/free1/uploads/klipper/original/2X/3/315c8034a97102c42fa92232f5ea269c14ab87c4.jpeg)

I suppose (almost impossible to get precise info from BTT) the serial connection is transfered to the printer board through the modified RGB-LCD flat ribbon without the need of another connecting cable

 ![SKR-SE-BX-V3.0 RGB-LCD connector](https://global.discourse-cdn.com/free1/uploads/klipper/original/2X/b/ba55424a58ba52403b315d3714585f6df782b264.png)  
On the schematic the only mention of TXD/RXD is on the CAN1

At least connecting to the printer via Octoprint/Octopi works when flashing Marlin which means that the signal is properly transferd from PC → PI → Printer. Flashing Klippy does not change the hardware so it must be a question of parameters or just black magic !  
In any case I tried to connect the PI (or even the TFT) and the printer with a USB cable but without any result.

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [June 2, 2024, 1:09pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/16 "2024-06-02T13:09:16Z")

</div>

Hell, what a stupid board. After looking at the schematic:

- The board indeed seems not allow connecting via USB to the host
- It uses a direct serial connection via PA0 and PA1 that is broken out on the LCD header → `ls /dev/serial/by-id/*` will never show anything as it does not get created under this connection scheme

Some hints to make it working:

- Turn off console serial: [https://www.raspberrypi.com/documentation/computers/configuration.html#disabling-the-linux-serial-console](https://www.raspberrypi.com/documentation/computers/configuration.html#disabling-the-linux-serial-console)
- Call sudo `nano /boot/config.txt` and add

```auto
dtoverlay=disable-bt
enable_uart=1

```

- Disable hciuart → `sudo systemctl disable hciuart`
- Reboot

As a result, check with `ls -l /dev/serial*`. Should look like

 ![grafik](https://global.discourse-cdn.com/free1/uploads/klipper/original/2X/a/a7ca57c26977d6e8fe3b7a6c8f841297e3cc124c.png)

Then make sure to:

- Connect TXD (`pin 8` / `GPIO 14`) and RXD (`pin 10` / `GPIO 15`) with RX to TX and TX to RX
- For Klipper use

```auto
[mcu]
serial = /dev/serial0
restart_method = command

```

---

<div class="post-metadata">

**Author:** ![hcet14](https://avatars.discourse-cdn.com/v4/letter/h/ecd19e/32.png) [@hcet14](https://klipper.discourse.group/u/hcet14)\
**Post date:** [June 2, 2024, 1:37pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/17 "2024-06-02T13:37:22Z")

</div>

> [@Cracoukas](#):
>
> Do you have any suggestion about how to solve this problem ?

Have you read this [Klipper on the BIQU BX V3 · GitHub](https://gist.github.com/varazir/f8994b0ebbe4ce2d1e1cdf88fb65621d)?

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [June 2, 2024, 2:20pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/18 "2024-06-02T14:20:26Z")

</div>

Yes, that’s what I followed originally.

---

<div class="post-metadata">

**Author:** ![hcet14](https://avatars.discourse-cdn.com/v4/letter/h/ecd19e/32.png) [@hcet14](https://klipper.discourse.group/u/hcet14)\
**Post date:** [June 2, 2024, 2:33pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/19 "2024-06-02T14:33:41Z")

</div>

Did you read the comments on above link? It seems, you are not the first one with this problem. In the comments you might find some good tips.

---

<div class="post-metadata">

**Author:** ![Cracoukas](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@Cracoukas](https://klipper.discourse.group/u/Cracoukas)\
**Post date:** [June 2, 2024, 2:38pm UTC](https://klipper.discourse.group/t/mcu-unable-to-connect/16763/20 "2024-06-02T14:38:54Z")

</div>

Thanks’ for the help.  
Since they did not include a WiFi connector on the SKR-SE-BX-V3.0 I will try to use the CAN-1 P (TXD) and CAN-1 N (RXD) if that’s compatible.  
Meanwhile I ordered a Manta M8P V2.0, I fear those SKR-SE-BX and TFT70-BX where just a big waste of monney.

[Next page](https://klipper.discourse.group/t/mcu-unable-to-connect/16763.md?page=2)
