Raspberry Pi

Raspberry Pi

Connection Type
Wi-Fi
Audio Support
Yes
Camera Support
Yes

Firmwares supporting this hardware


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.

unzip EZBPi.zip

4) Navigate into the newly created directory

cd EZBPi

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.

  1. From command-line, type: sudo raspi-config
  2. Select the Interfaces menu option
  3. Select the Serial menu option
  4. Answer NO to the question about login shell
  5. Answer YES to the question about serial hardware port
  6. Save and exit the raspi-config menu
  7. Reboot

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

Related Content

live hack
DJ's 6Th Live Hack Event (Raspberry Pi & Neopixel With Arduino)
DJ's 6Th Live Hack Event (Raspberry Pi & Neopixel With...
In this 6th installment of DJ's Live Hack Events, we'll be installing EZ-Builder on a Raspberry Pi, install plugins and...
live hack
DJ's 7Th Live Hack (Neopixel, Arduino, Raspberry Pi Ezbpi Server)
DJ's 7Th Live Hack (Neopixel, Arduino, Raspberry Pi Ezbpi...
Today's live hack, we'll play with the Arduino and see if we can get it to control NeoPixels by using the existing...
question
Dynamixel With Ezbpi Server
Dynamixel With Ezbpi Server
I am trying to control my Dynamixel AX-12a with the EZBPi, but when I try to connect EZ-Builder it disconnects shortly...
live hack
DJ's 9Th Live Hack - Raspberry Pi + Dynamixel... Together For Ever!
DJ's 9Th Live Hack - Raspberry Pi + Dynamixel... Together...
This is a short live hack where I will demonstrate how to...1) Install EZ-Builder on Raspberry Pi2) Install EZBPi Server...
live hack
DJ's Apple II Pi Hack (Part 2/2)
DJ's Apple II Pi Hack (Part 2/2)
In this hack, I'll continue the Apple II conversion to the Pi. I created an Arduino PCB that converts the Apple II...
question
Ez-B With Computer Vision
I apologize if this is a redundant question: but with EZ-pi software used for EZ-b, raspberry pi, does the camera system support identifying and...
question
Found This Nice One And Thought Its Worth Sharing
Found This Nice One And Thought Its Worth Sharing
Did anyone see this already, I thought it is beautiful how such a reduced build can produce this emotional impact.And it...
live hack
Make Your Own Giant 3D Printer Vol 2
Make Your Own Giant 3D Printer Vol 2
Pushed back live feed , I have the day off tomorrow on Saturday so I will pick up then.Second installment of building...
live hack
Make Your Own, Giant 3D Printer Build Vol. 4
Make Your Own, Giant 3D Printer Build Vol. 4
The 4th video for this Giant 3d Printer build. We are to the point that the heated bed is about to be mounted on the...
question
Raspberry Pi Or Arduino
I am building a humanoid robot and was wondering which is better to use?  I am starting on the head from a book that I received on the Mark 1 robot...
#17  
@Legion:

Can you unzip the file ConsoleApp1.zip
and run the command:

Code:

mono ./ConsoleApp1.exe
Note: No need the root privileges e.g. sudo

Please post the output.
Canada
#18  
=== AddressList ====
Af=[InterNetwork] Addr=[192.168.1.178]
=== Send Udp Message ====
Send Udp message=[EZ-B||Testing||192.168.1.178||23]
#19  
@DJ:
It seems is a bug in the udp code:

please change your code:

Code:

        private void doSendUDP(string str)
{
using (UdpClient udpClient = new UdpClient("255.255.255.255", 4242))
{
byte[] bytes = Encoding.ASCII.GetBytes(str);
udpClient.Send(bytes, bytes.Length);
}
}
to this code:

Code:

        private void doSendUDP(string str)
{
var ipEndPoint = new IPEndPoint(IPAddress.Broadcast, 4242);
using (var udpClient = new UdpClient())
{
var bytes = Encoding.ASCII.GetBytes(str);
udpClient.Send(bytes, bytes.Length, ipEndPoint);
udpClient.Close();
}
}
#20  
@Legion:

Download this fix EZBPi_fixed.zip
do backup copy of the existent EZBPI.exe and then override with the new file.
then run:

Code:

sudo mono ./EZBPi.exe
Let me know if it works.
Canada
#21  
IT WORKED!!!!

Oh ty ty ty so much!
Synthiam
#22  
I’ll get amin to update next week. Thanks guys!!