Baby Orangutan B-328 Robot Controller

Baby Orangutan B-328 Robot Controller
Baby Orangutan B-328 Robot Controller with HeadersBaby Orangutan B-328 Robot Controller Pinout

The affordable Baby Orangutan B-328 is a complete control solution for small robots, all packed into a tiny 1.2" x 0.7" 24-pin DIP package. Its compact design eliminates bulkier components such as the LCD and switches while retaining the most essential features: an ATmega328P AVR microcontroller and a dual H-bridge for direct control of two DC motors.

An integrated motor driver sets the Baby Orangutan B apart from similarly-sized microcontroller boards from other manufacturers. Two on-board indicator LEDs, a trimmer potentiometer, a 20 MHz resonator, and reverse battery protection round off the basic hardware features of the Baby Orangutan.

The Orangutan line deliver significantly higher performance than other similar controller boards. The availability of free development software, such as Atmel’s AVR Studio IDE and the WinAVR GCC C/C++ compiler, and low-cost programmers, such as the Pololu USB AVR programmer, make the Baby Orangutan B a truly outstanding value asset to your project.

Specifications & On-Board Hardware

    - overall unit dimensions: 1.2" x 0.7"

    - input voltage: 5-13.5 V (15 V absolute maximum)

    - two bidirectional motor ports can deliver ~1 A continuous (3 A peak) per channel

    - programmable 20 MHz Atmel ATmega48 AVR microcontroller (4 KB flash, 512 bytes SRAM, 256 bytes EEPROM) or Atmel ATmega328P AVR microcontroller (32 KB flash, 2 KB RAM, 1 KB EEPROM)

    - 18 user I/O lines, 16 of which can be used for digital I/O and 8 of which can be used as analog input channels

    - 1 user LED

    - user potentiometer tied to ADC7

    - 20 MHz external resonator

    - pinout is compatible with the Orangutan SV-328 and Orangutan LV-168, so the same code will generally work on all of these devices

The Baby Orangutan B is available with either the ATmega48 or ATmega328P AVR microcontroller. The main differences between the mega48 and mega328P are memory size, boot loader support, and interrupt vector size. The mega328 can also run at lower voltages than the mega48 for frequencies below 10 MHz.

  mega48 mega328P
Flash 4K Bytes 32K Bytes
RAM 512 Bytes 2048 Bytes
EEPROM 256 Bytes 1024 Bytes
Interrupt Vector Size 1 instruction word/vector 2 instruction words/vector
Boot Loader Section none 256, 512, 1024, or 2048 words (512, 1024, 2048, or 4096 bytes

Included components

The 0.1" header pins are included with the Baby Orangutan B but are not soldered in. When the headers are soldered in the Baby Orangutan can be used as a DIP component on breadboards or prototyping boards. Power pins, one of the motor outputs, and several I/O lines are all accessible from one side to enable use of the Baby Orangutan as a single in-line pin (SIP) package for applications that do not require all of the I/O lines. The small size and low cost of the Baby Orangutan makes it a perfect option for primary control of small robots or for auxiliary control on larger robots.

Dimensions

Size: 1.20" x 0.70"
Weight: 1.5 g1

General specifications

Processor: ATmega328P @ 20 MHz
RAM size: 2048 bytes
Program memory size: 32 Kbytes
Motor driver: TB6612FNG
Motor channels: 2
User I/O lines: 182
Max current on a single I/O: 40 mA
Minimum operating voltage: 5 V
Maximum operating voltage: 13.5 V
Continuous output current per channel: 1 A
Peak output current per channel: 3 A
Maximum PWM frequency: 80 kHz
Reverse voltage protection?: Y
External programmer required?: Y
LCD included?: N

Notes:

1  without headers
2 16 can be used as digital I/Os and 8 can be used as analog inputs.
 

Documentation and other information

Pololu Baby Orangutan B User’s Guide (pdf) 

User’s guide for the Pololu Baby Orangutan B-48, B-168, and B-328 robot controllers.

Printable PDF: Pololu AVR C/C++ Library User’s Guide (pdf)     

Information about installing and using the C/C++ libraries provided for use with Pololu products.

avr_library_commands.pdf

A reference to commands provided in the Pololu C/C++ and Arduino libraries for the AVR.

Programming Orangutans and the 3pi Robot from the Arduino Environment (pdf)

Guide to making the Arduino IDE compatible with the 3pi robot and the Orangutan SV-168, Orangutan LV-168, and Baby Orangutan B robot controllers, including Arduino libraries for interfacing with the all of their on-board hardware.

Application Note: Using the Motor Driver on the 3pi Robot and Orangutan Robot Controllers (pdf)

Detailed information about the 3pi Robot, Orangutan SV-328/168 and LV-168, and Baby Orangutan B motor drivers, including truth tables and sample code.

Application Note: MLX90614ESF SMBus Communication with Orangutan Robot Controllers (Pdf)

A guide for implementing the SMBus (I²C-compatible) protocol for the MLX90614ESF temperature sensor on the AVR-based Orangutan robot controller series. The guide includes sample code for taking temperature readings.

File downloads

Toshiba TB6612FNG motor driver datasheet (207k pdf)
 
Sample AVR Studio project for the ATmega48 to blink an LED (9k zip)
This is a sample AVR Studio project that will blink an LED on an Baby Orangutan B-48.
Sample AVR Studio project for the ATmega168 to blink an LED (9k zip)
This is a sample AVR Studio project that will blink an LED on an Orangutan with an ATmega168 microcontroller: Orangutan mega168, Orangutan LV-168, Orangutan SV-168, Baby Orangutan mega168, and Baby Orangutan B-168.
Sample AVR Studio project for the ATmega328P to blink an LED (9k zip)
This is a sample AVR Studio project that will blink an LED on a Baby Orangutan B-328, 3pi robot, or Orangutan SV-328.
AVR Studio demo project #1 for the Orangutan SV-168 and LV-168 (14k zip)
C code for the mega168: This project demonstrates the fundamentals of using I/O lines on a mega168. Each line of the source code is commented, and there is a short tutorial in comments at the start of main() on using AVR I/O and on C bit-logic. The program will alternately flash the two user LEDs until you ground the general-purpose I/O pin PD0 (the right-most of the eight user I/O lines at the top of the board). Grounding pin PD0 will cause the program to pulse the buzzer pin instead of the LED pins, causing the buzzer to play a note. While intended for use on the Orangutan SV-168 and LV-168, this program will run on the Baby Orangutan B-168 and can serve as a useful example on how to use the ATmega48/168 I/O lines. It will run on the Baby Orangutan B-328 with some minor modifications.
LSM303DLH Orangutan example project (5k zip)
This sample program shows how to use a LSM303DLH 3D compass and accelerometer carrier (contact us if you are interested in this product, we can get it for you) with a robot controller to build a tilt-compensated digital compass. The AVR Studio project is set up for an ATmega328P microcontroller, but it will work on other Orangutans with simple changes to the project configuration.
Price: NZ$29.95

Robot kits for fun and learning! Fun robots, programmable robots, sensors and hardware.

Robokits has come through the earthquakes so far largely unscathed and we are thankful for that. Our hearts and thoughts go out to all those affected. We are also excited about being part of a business community committed to rebuilding a new Christchurch.

Prices include GST and shipping to most places within New Zealand. Product supplied may not match colour of image shown exactly.

All trade marks are owned by their respective companies.