# Servo2040 with Linux on Raspberry Pi 5 in Hexapod Robot Project

**URL:** <https://forums.pimoroni.com/t/servo2040-with-linux-on-raspberry-pi-5-in-hexapod-robot-project/28490>\
**Category:** Support\
**Created:** [November 22, 2025, 11:53am UTC](https://forums.pimoroni.com/t/servo2040-with-linux-on-raspberry-pi-5-in-hexapod-robot-project/28490 "2025-11-22T11:53:26Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![leejuan](https://avatars.discourse-cdn.com/v4/letter/l/3ec8ea/32.png) [@leejuan](https://forums.pimoroni.com/u/leejuan)\
**Post date:** [November 22, 2025, 11:53am UTC](https://forums.pimoroni.com/t/servo2040-with-linux-on-raspberry-pi-5-in-hexapod-robot-project/28490/1 "2025-11-22T11:53:26Z")

</div>

Hello, I am a student trying to control a hexapod robot using the servo2040.  
I have tried various uf2 files to establish communication in the Raspberry Pi Linux environment, but nothing works. Although I installed the simple driver and tried to add libraries, I only found pimoroni.py, and servo2040.py was missing, so I failed.

Control through the Android chica server and chica android app works well.  
However, even after installing firmware compatible with Linux Python on the servo2040 and sending simple commands from the Linux terminal, the servo2040 only responds by turning off its indicator light without actually moving.

What should I do to make it work properly?  
Is it possible to decompile the Android app to extract the communication protocol and make the Python code run? This has been very difficult for me.

Ultimately, I want to use a LiDAR camera and AI tools like YOLO on Raspberry Pi 5 to control the robot, but I’m currently unable to even control one leg, so I feel overwhelmed and am leaving this comment hoping for advice.

Is there firmware or communication methods that work with Linux Python code?  
I don’t know where or how to start learning this, so I’m lost. Please help. I need expert assistance.

Please reply to [sportleejuan@naver.com](mailto:sportleejuan@naver.com)

 ![image](https://us1.discourse-cdn.com/flex016/uploads/pimoroni/original/2X/6/664ff4a00d5b39b0654edfbbb615de9f93ec8e27.jpeg)

---

<div class="post-metadata">

**Author:** ![bablokb](https://avatars.discourse-cdn.com/v4/letter/b/ee59a6/32.png) [@bablokb](https://forums.pimoroni.com/u/bablokb)\
**Post date:** [November 22, 2025, 12:27pm UTC](https://forums.pimoroni.com/t/servo2040-with-linux-on-raspberry-pi-5-in-hexapod-robot-project/28490/2 "2025-11-22T12:27:31Z")

</div>

I assume you connect the Servo2040 with an usb-cable with the Pi. The device should show up as an tty-device in Linux (/dev/ttyACM0 usually). Use this device on Linux side to communicate with the Servo2040.

But be aware that you have to write your own protocol. I.e. you define which data the Pi sends over the serial line, and a second program on the Servo2040 has to read it and act accordingly.

---

<div class="post-metadata">

**Author:** ![alphanumeric](https://sea2.discourse-cdn.com/flex016/user_avatar/forums.pimoroni.com/alphanumeric/32/2729_2.png) [@alphanumeric](https://forums.pimoroni.com/u/alphanumeric)\
**Post date:** [November 22, 2025, 12:35pm UTC](https://forums.pimoroni.com/t/servo2040-with-linux-on-raspberry-pi-5-in-hexapod-robot-project/28490/3 "2025-11-22T12:35:03Z")

</div>

Firstly, it’s Micro Python not Python, that the Servo 2040 will use. Assuming you use the Pimoroni uf2. I believe the one you want is pico-v1.25.0-pimoroni-micropython.uf2  
[https://github.com/pimoroni/pimoroni-pico/releases/download/v1.25.0/pico-v1.25.0-pimoroni-micropython.uf2](https://github.com/pimoroni/pimoroni-pico/releases/download/v1.25.0/pico-v1.25.0-pimoroni-micropython.uf2)  
Install instructions are here.

> <https://github.com/pimoroni/pimoroni-pico/blob/main/setting-up-micropython.md>

The servo 2040 Micro Python examples are here.

> **[pimoroni-pico/micropython/examples/servo2040 at main · pimoroni/pimoroni-pico](https://github.com/pimoroni/pimoroni-pico/tree/main/micropython/examples/servo2040)**
>
> Libraries and examples to support Pimoroni Pico add-ons in C++ and MicroPython. - pimoroni/pimoroni-pico

---

<div class="post-metadata">

**Author:** ![leejuan](https://avatars.discourse-cdn.com/v4/letter/l/3ec8ea/32.png) [@leejuan](https://forums.pimoroni.com/u/leejuan)\
**Post date:** [November 22, 2025, 12:59pm UTC](https://forums.pimoroni.com/t/servo2040-with-linux-on-raspberry-pi-5-in-hexapod-robot-project/28490/5 "2025-11-22T12:59:32Z")

</div>

thank you for your reply

---

<div class="post-metadata">

**Author:** ![leejuan](https://avatars.discourse-cdn.com/v4/letter/l/3ec8ea/32.png) [@leejuan](https://forums.pimoroni.com/u/leejuan)\
**Post date:** [November 22, 2025, 1:00pm UTC](https://forums.pimoroni.com/t/servo2040-with-linux-on-raspberry-pi-5-in-hexapod-robot-project/28490/6 "2025-11-22T13:00:33Z")

</div>

Thank you so much for your reply. I’ll try again and get back to you
