Pogobot
A small open-source, open-hardware robot built for swarm robotics experiments on collective behaviour and social learning.
- Other
- Open source
- 3D printable
Suggested by Robotheca, created by @nekonaute (opens in a new tab), from github.com/nekonaute/pogobot (opens in a new tab). Pinned to commit 2efb1d4 (opens in a new tab).
- Hardware license
- MIT (opens in a new tab)
- Software license
- MIT (opens in a new tab)
- Commercial use
- Allowed
This repository contains executable files that Robotheca doesn't check. Only run them if you trust the creator.
Which files (1 file marked executable, 21 scripts, 1 program or installer, 40 firmware images)
- Software/binary_installation/install_pogoWallAppv0.1/pogowallapp_0.1.0_amd64.deb (opens in a new tab)
- Scripts/version_creation_litex.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.1/program_remote.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.1/program_robot.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.2.1/program_remote.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.2.1/program_robot.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.2/program_remote.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.2/program_robot.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.3/program_remote.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.3/program_robot.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.4/program_remote.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.4/program_robot.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.5/program_remote.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.5/program_robot.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.6/program_remote.sh (opens in a new tab)
- Software/binary_installation/install_APIv2.6/program_robot.sh (opens in a new tab)
- Software/binary_installation/install_APIv2/program_remote.sh (opens in a new tab)
- Software/binary_installation/install_APIv2/program_robot.sh (opens in a new tab)
- Software/binary_installation/tools/create_new_version.sh (opens in a new tab)
- Software/binary_installation/tools/program_remote.sh (opens in a new tab)
- and 43 more
Photo and 3D model

3D preview converted from github.com/nekonaute/pogobot at 2efb1d4, under MIT. View the original files from GitHub (15.5 MB) (opens in a new tab)
What it can do
Written by Robotheca from the project's documents.
- Designed for swarm robotics experiments on collective behaviour and social learning.
- Has three vibration motors (left, right, back) that can be set to stop, quarter, half, three-quarter or full power.
- Reads ambient light sensors (back, front-left, front-right), battery voltage, and an IMU with accelerometer and gyroscope.
- Sends and receives infrared messages to and from nearby robots, broadcasting in all directions.
- Controls a head LED with RGB colour values from 0 to 255.
- Can be programmed in C over USB or through an infrared remote uploader that flashes many robots at once.
- Example programs include a distributed genetic algorithm run by infrared communication among robots.
Bill of materials
This repository has no parts list Robotheca can read yet.
Build guide
The creator's steps, each with its instructions.
- 1Assemble the robot following the Robot Assembly guide
- 2Print the 3D parts from the 3d-addons folder
- 3Build the head and belly electronics from the KiCad Hardware files
- 4Upload the bootloader and user software
The guide appears here as you scroll.
Guide by @nekonaute (Readme.md), under MIT.
More guides
Wiring and electronics
Notes written by Robotheca from the project's documents.
Main parts
- Head with an iCE40UP5K FPGA running a softcore processor, an IMU, fast infrared communication devices and an LED.
- Belly with additional LEDs, a motor controller, a battery and a battery regulation system.
- Three vibration motors, with 3V CR2 rechargeable LiFePO4 battery.
- Infrared emitter and receiver circuits in the head, with TSAL6200 LEDs in the remote and pogobject designs.
- Programming board using a UMFT234XF USB-to-UART module with an 8-pin FFC/FPC connector.
Connections
- The head plugs onto the belly.
- The robot is programmed by connecting a USB-to-UART programming board to the FFC/FPC connector on the head with a ribbon cable.
- Robots can be charged through the programming cable or through plus and minus pads on the head, which pogo pins in a charger contact.
- The charger takes a 5V power supply with +5V on the inner contact and ground on the outer contact.
Schematics, boards and diagrams
- docs/Images/lattice_board_connection.jpgDiagram
- Hardware/Belly/bellyv2.kicad_pcbKiCad
- Hardware/Belly/bellyv2.kicad_schKiCad
- Hardware/Belly/bellyv2.schEagle
- Hardware/Belly/motor_ctrl_old.kicad_schKiCad
- Hardware/Belly/motor_ctrl.kicad_schKiCad
- Hardware/Belly/motor_ctrl.schEagle
- Hardware/Belly/Pogobot-belly.kicad_pcbKiCad
- Hardware/Belly/Pogobot-belly.kicad_schKiCad
- Hardware/Charger/Pogocharge.kicad_pcbKiCad
- Hardware/Charger/Pogocharge.kicad_schKiCad
- Hardware/Head/IR_Emit.kicad_schKiCad
- Hardware/Head/IR_Emit.schEagle
- Hardware/Head/IR_Receiver.kicad_schKiCad
- Hardware/Head/IR_Receiver.schEagle
- Hardware/Head/PhotoT.kicad_schKiCad
- Hardware/Head/PhotoT.schEagle
- Hardware/Head/Pogobot-head.kicad_pcbKiCad
- Hardware/Head/Pogobot-head.kicad_schKiCad
- Hardware/pogo_object/pogo_object.kicad_pcbKiCad
- Hardware/pogo_object/pogo_object.kicad_schKiCad
- Hardware/pogo_object/PowerIRLED.kicad_schKiCad
- Hardware/remote_leds_strip/PowerIRLED.kicad_schKiCad
- Hardware/remote_leds_strip/remote_leds_strip.kicad_pcbKiCad
- Hardware/remote_leds_strip/remote_leds_strip.kicad_schKiCad
- Hardware/remote_leds_wall_ctrl/PowerIRLED.kicad_schKiCad
- Hardware/remote_leds_wall_ctrl/remote_leds_wall_ctrl.kicad_pcbKiCad
- Hardware/remote_leds_wall_ctrl/remote_leds_wall_ctrl.kicad_schKiCad
- Hardware/remote_leds_wall_strip_12v/PowerIRLED.kicad_schKiCad
- Hardware/remote_leds_wall_strip_12v/remote_leds_wall_strip_12v.kicad_pcbKiCad
- Hardware/remote_leds_wall_strip_12v/remote_leds_wall_strip_12v.kicad_schKiCad
- Hardware/remote_leds_wall_strip/PowerIRLED.kicad_schKiCad
- Hardware/remote_leds_wall_strip/remote_leds_wall_strip.kicad_pcbKiCad
- Hardware/remote_leds_wall_strip/remote_leds_wall_strip.kicad_schKiCad
- Hardware/remote/PowerIRLED.kicad_schKiCad
- Hardware/remote/remote.kicad_pcbKiCad
- Hardware/remote/remote.kicad_schKiCad
- Hardware/usb-uart-progboard/progboard.kicad_pcbKiCad
- Hardware/usb-uart-progboard/progboard.kicad_schKiCad