A MicroPython and Python-based control suite for the MeArm Robot Arm powered by the Raspberry Pi Pico. This repository contains lightweight drivers, smooth movement controllers, and desktop GUI applications to orchestrate your robot arm seamlessly.
- MicroPython Hardware Driver: Optimized PWM control tailored specifically for the 4 degrees-of-freedom MeArm servos.
- Smooth Acceleration: Built-in kinematic dampening (
smoothMeArm.py) to reduce sudden jerky movements and prevent mechanical wear. - Desktop Control Suites: Cross-platform GUI scripts using
tkinterto manipulate angles and paths directly from your laptop. - Plug-and-Play USB Interface: Serial-over-USB protocol (
PicoServoUSB.py) for tethered automation.
BasicPico.py- Core MicroPython script for standalone, automated joint movements on the Pico.smoothMeArm.py- Advanced algorithm script designed to ramp servo speeds for fluid motion profiles.PicoServoUSB.py- Establishes a listening serial interface on the Pico to accept coordinate inputs.pico_gui.py/DeskTopControl.py/PicoDesktop.py- Interactive Tkinter-based desktop dashboards providing graphical sliders for the base, shoulder, elbow, and claw.MeArmSolidEyes.py- Script supporting visual feedback components or auxiliary tracking.index.html- Web-based framework documentation or integrated interface reference.
Connect your 4 servo motors (Base, Left/Shoulder, Right/Elbow, Claw) to the Raspberry Pi Pico's PWM-capable GPIO pins.
| MeArm Servo | Pico GPIO Pin |
|---|---|
| Base | GPIO 12 |
| Shoulder (Left) | GPIO 13 |
| Elbow (Right) | GPIO 14 |
| Claw (Grip) | GPIO 15 |
⚠️ Important: Do not power the servo motors directly from the Pico’s 3.3V pin. Use an external 5V–6V (2A+) power supply. Ensure you connect the external power supply's ground (GND) to one of the Pico's GND pins to establish a common ground reference.
- Flash MicroPython onto your Raspberry Pi Pico.
- Using an IDE like Thonny, open
BasicPico.pyorsmoothMeArm.py. - Configure your GPIO pins inside the file if they differ from the defaults.
- Run the file on your Pico to watch the arm execute a pre-programmed diagnostic sequence.
To orchestrate your MeArm using interactive sliders from your computer screen:
- Upload
PicoServoUSB.pyto your Pico and name itmain.pyso it boots automatically. - Connect your Pico to your computer via a USB cable.
- Install dependencies on your local machine:
pip install pyserial
- Run the GUI dashboard from your terminal:
python pico_gui.py
This project is open-source and licensed under the terms of the MIT License. See the LICENSE file for more details.