Raspberry Pi is a small and affordable computer that you can use to control a robot by running either EZ-Builder or the EZBPi Server... or both! Below is a break-down of both options with links on how to get them running for your Synthiam powered robot.
Run EZ-Builder on the Pi
You can run EZ-Builder on the Raspberry Pi and connect to external micro controllers, such as Arduino or EZ-Robot's EZ-B v4. This is a connection through WiFi, generally. Although USB adapters can be used for direct connection on supporting micro-controller products.
You can download the Raspberry Pi installation on the software page by clicking here.
Turn Pi into an EZBPi Server
This server program turns a Raspberry Pi into an EZ-B that robot components can connect to and EZ-Builder connects to the server. The Raspberry Pi Camera, Digital Ports and UART are just some of the peripherals of the Raspberry Pi that can be controlled by EZ-Builder with this server. The server turns the Raspberry Pi into an EZ-B. If you are running EZ-Builder on the Pi at the same time, connect to the EZBPi server with address 127.0.0.1.
If the EZBPi server is used, the EZ-Builder connection can be remote from an external computer over WiFi (or LAN). Or the EZ-Builder connection can be running on the Raspberry Pi by connecting to 127.0.0.1 (localhost). There are limitations to the EZBPi Server, in that PWM servos are not supported, but Bi-Directional UART/Serial servos are (Robotis Dynamixel, LewanSoul, etc.)
EZBPi Server Install Instructions
1) Install Mono
sudo apt install mono-devel
2) Download the EZBPi Server ZIP file from the firmware list above
3) Unzip the archive.
4) Navigate into the newly created directory
5) Execute the server with sudo and mono. Sudo is required because the server listens on TCP ports and therefore needs to permission.
sudo mono ./EZBPi.exe
6) Connect to the EZBPi server from EZ-Builder. If the EZ-Builder instance is on a different computer, enter the IP Address of the Pi in the connection control. If the EZ-Builder instance is running on the Pi, enter the address 127.0.0.1 in the connection control.
EZBPi Server UART
The Raspberry Pi has a hardware UART that is connected to GPIO14 (TX) and GPIO15(RX). These are physical pins 8 and 10, respectively. Any EZ-Builder controls that use the UART (such as Dynamixel) or Script commands will default to using this port.
In order to get the UART to work, a few configurations need to be made on the Raspberry Pi.
- From command-line, type: sudo raspi-config
- Select the Interfaces menu option
- Select the Serial menu option
- Answer NO to the question about login shell
- Answer YES to the question about serial hardware port
- Save and exit the raspi-config menu
EZBPi Server Command-Line Arguments
The EZBPi server accepts command-line arguments for configuration values. With these command-line arguments, the default TCP ports for the EZB and Camera can be changed. Also, the verbose logging can be changed. To view the list of available arguments, enter...
sudo mono EZBPi.exe -h