Robo Pico review – A Raspberry Pi Pico W-based motor & sensor control board tested with BocoBot robotic kit

Cytron Robo Pico is a carrier board for the Raspberry Pi Pico (W) specially designed for robotics & IoT applications with a 2-channel DC motor driver, four servo motor ports, and seven Grove I/O connectors to connect various sensors and/or actuators.

When the company asked us to review the Robo Pico board, I noticed they had a car robotic kit based on the board called the BocoBot that comes with installation videos and five tutorials including obstacle avoidance movement with ultrasonic sensors, light search, line following, and WiFi remote control. So I asked for the full kit to make the review more fun and interesting.

Robo Pico Review Raspberry Pi Zero W robot

Robo Pico board

Cytron Robo Pico Board

Robo Pico specifications:

  • Supported MCU board – Raspberry Pi Pico/Pico W and compatible
  • Motor control
    • 2x DC Motor terminals with
      • Motor status LEDs for each motor terminal
      • 2x motor test buttons for each motor terminal
    • Header to connect to 4x servos
  • Expansion
    • 7x Grove Ports (flexible I/O options: digital, analog, I2C, SPI, UART…)
    • 1x Maker Port (JST-SH 4-ways connector compatible with Stemma QT/Qwiic connector)
    • GPIO Breakout for Raspberry Pi Pico/Pico W
  • Misc
    • Reset button
    • 13x status indicator LEDs for GPIO pins
    • 2x RGB LED (Neopixel)
    • 2x programmable buttons
    • Piezo buzzer with mute switch
  • Power circuit
    • Automatic power selection: 5V USB, LiPo (1-cell), or 3.6 to 6V Vin via terminal block
    • Built-in 1-cell LiPo/Li-Ion charger with over-charged & over-discharged protection
    • Power on/off switch with status LED
  • Dimensions
    • 88 x 72 mm
    • Mounting holes – 4x 4.8mm mounting hole, 4x M3 screw hole
Robo Pico 2 DC motors 4 servos
Robo Pico driving two DC motors and controlling four servos

BocoBot kit content and features

Robo Pico Raspberry Pi Pico W robot kit parts

Our kit came with the following items as shown in the photo above:

  • Pico Robo board fitted with Raspberry Pi Pico W
  • 3x Grove to Female Jumper Wires
  • Screwdriver and screws set
  • Robot Chassis
  • Maker Line sensor board for line following
  • Ultrasonic sensor module (HC-SR04) with bracket
  • Light sensor module
  • 2x TT motors and 2x wheels
  • A caster (small metal wheel mounted on a plastic frame)
  • Battery holder for 4x AA batteries
  • USB Cable
  • Double-sided tape

This is what the kit looks like after assembly.

Robo Pico Review BocoBot robotic kit

Cytron provides video instructions to make the assembly easier.

Tools, firmware, and libraries installation for CircuiPython programming

The Raspberry Pi Pico supports C/ C++, MicroPython, and CircuitPython, and we’ll go with the latter in this review. We’ll use the Thonny IDE for programming as we did in our previous reviews. It can be installed on Windows, Linux, macOS, or even run from a Raspberry Pi SBC. Once the installation is complete, open Thonny, then click on the “Run” menu and select “Configure interpreter” and select “CircuitPython(generic)”.

Thonny IDE Raspberry Pi Pico Interpreter

We also need to flash the CircuitPython firmware to the Raspberry Pi Pico W by simply copying the latest UF2 firmware file to the board.

Cytron also shared from Adafruit libraries for the Robo Pico kit available on GitHub. You can copy the content to the “CIRCUITPY” drive for installation.

BocoBot Robo Pico CircuitPython Libraries

Testing Robo Pico with CircuitPython and the BocoBot kit

Motor control programming

In order to test the two DC motor ports, we’ll connect the left motor to GPIO8 & GPIO9, and the right motor to GPIO10 & GPIO11 using PWM to control the speed of both motors. Programming is simplified by using the Robot_Movement(speedL, speedR) function:

Obstacle avoidance robot

The HC-SR04 ultrasonic sensor will be used for the obstacle avoidance demo. Two pins are used (Trigger = GPIO16, Echo = GPIO17) plus 5V and GND, and the sensor will send the values in centimeters. In our test program, the robot will turn left for one second if the sensor detects an object less than 10 centimeters away, and move forward with there’s no obstacle:

Programming a light-following robot

The light-following demo relies on the (analog) value returned by the light sensor module. The 3v3 pin is connected to Vcc, A0 to GPIO27, and we also make sure to connect the ground (GND). Our test program monitors the sensor’s value (between 0-30000) in an infinite loop and if the brightness is under 15000, the robot will move forward, otherwise, the robot will keep on turning left.

Line following robot

The line-following robot test will feature the Maker Line 5-line sensor that reads the analog light value and is connected to the Robo Pico board using 3v3 = Vcc, GND, and A0 = GPIO26. The sensor sends voltage values between 0V and 3.3V for testing. The test program changes the speed of the wheels (and directly of the robot) if the sensor detects the line with the speed depending on the returned analog value.

Controlling the Robo Pico robotic kit over WiFi

Our last demo will control the Robo Pico-based BocoBot robotic kit over WiFi using a simple web interface. We’ll set up a web server on the Raspberry Pi Pico and write some HTML code to create a remote control for the robot. We can open a web browser on a phone or computer and type the Raspberry Pi Pico W’s IP address to load the remote and make the robot move forward, backward, turn left, turn right, or stop it.


Robo Pico Robot Car WiFi Web interface

You can also watch the video review/demo below to see the robot in action.

Video review/demo of the Robo Pico with the BocoBot robotic kit

Conclusion

The Robo Pico is a great expansion board for the Raspberry Pi Pico W for robotics and IoT projects, and the BocoBot educational robot kit makes it really easy to get started with the board. It allowed us to create an obstacle avoidance robot with an ultrasonic sensor and a line-following robot, and we could also implement a Web-based interface to remotely control the robot over WiFi.

You can also create your own project as the board is quite versatile with two DC electric motors, each with a button to test the motor operation, four servo motor connectors, a piezo sound speaker with a mute switch, two user-programmable push-buttons, and LEDs to show the status of all 13 GPIO ports that are seen on most Cytron boards. The board also includes two RGB LEDs, and seven 4-pin Grove connectors for expansion modules. The Pico Robo and BocoBot are suitable for those who are interested in learning to build their own robots, as well as for STEM education.

We would like to thank Cytron for sending the BocoBot robot kit with the Robo Pico board for review. The Robo Pico board can be purchased for $14.90 without a Raspberry Pico board, or with the Pico / Pico W for a few dollars, while the full BocoBot robotic kit goes for $36.88 with a Raspberry Pi Pico W.

This review is adapted from the original article on CNX Software Thailand by Kajornsak Janjam.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

Radxa Orion O6 Armv9 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
0 Comments
oldest
newest
Boardcon Rockchip RK3588S SBC with 8K, WiFI 6, 4G LTE, NVME SSD, HDMI 2.1...