- Adafruit 16 Servo Shield
- AR Parrot Drone
- Arduino Genuino Uno
- Arduino Mega
- BBC Micro:Bit
- EZ-Robot Adventurebot
- EZ-Robot EZ-B Iotiny
- EZ-Robot EZ-B V3
- EZ-Robot EZ-B V4
- EZ-Robot JD Humanoid
- EZ-Robot Roli Rover
- EZ-Robot Six Hexapod
- Irobot Roomba
- Raspberry Pi
- Robotis Darwin Mini
- Robotis Opencm9.04
- Robotis Opencr
- Sainsmart Balance Robot
OpenCR 1.0 is an open source robot controller embedded with a powerful ARM MCU compatible with EZ-Builder.
Firmware Source Code
- Follow instructions HERE from Robotis to install Arduino IDE tools.
- Download DJ's OpenCR v1 Firmware Sourcecode (Feb 4 ,2019)
- Tutorial to compile and upload the firmware
Arduino IDE Configuration
The suggested IDE for programming the OpenCR is the official Arduino IDE. The tutorial link below will recommend downloading and installing the Arduino IDE. However, you will also need to install the Robotis OpenCR libraries and tools into the IDE.
The OpenCR can be programmed with the EZ-B firmware for a variety of capabilities when connected to EZ-Builder. The tutorial to program the EZ-B firmware can be found HERE. This hardware was added to EZ-Builder in this beta release and newer.
Most Arduino's connect to EZ-Builder via 9600 baud. This controller has the technical power to connect at a much higher rate. The firmware is set for 921,600 BAUD, which is very quick! When following the connection tutorial, ensure you specify the correct baud rate for this firmware.
Get technical details of the Arduino pinouts with the OpenCR to understand how EZ-Builder maps to the output pins HERE.
The ports on the OpenCR perform different features based on their usage. The diagram above demonstrates how the ports are connected to EZ-Builder. The Ax ports can be either Analog Input or Digital I/O. The Ax also function as Dx ports. The UART 0, 1, & 2 are connected to UART 1, 2 & 3, respectively.
EZ-Builder Code Example
For example, you can flash the LED because it is on port D13 in EZ-Builder with this example EZ-Script code. Try it and have fun :)
:loop Set(d13, true) sleep(500) Set(d13, false) sleep(500) goto(loop)