Note: This product is now only available by large-volume special order. Please contact us for more information.
The Orangutan LV-168 robot controller, the fourth release in our line of Orangutan robot controllers, is a complete control solution for small robots powered by two or three NiMH cells (or similar batteries). The small (2.15" x 1.9") module includes a powerful Atmel ATmega168 AVR microcontroller, two bidirectional motor ports each capable of providing 2 A (continuous), a removable 8-character x 2-line liquid crystal display, a buzzer, three user pushbutton switches, and two user LEDs. Eight general-purpose I/O lines with up to eight analog input channels allow for adding sensors or expanding the system.
Orangutan LV-168 features (top view).
The Orangutan LV-168 incorporates a step-up voltage regulator that generates 5 V from the lower input voltage, enabling the mega168 to run at its full speed of 20 MHz and allowing the use of sensors that require 5 V. Two discrete H-bridges using low-voltage MOSFETs allow efficient control of two bidirectional DC motors drawing up to 2 A each (continuously). The motor drivers can briefly deliver up to 5 A each, but each motor is protected by a resettable fuse that is triggered by excessive temperature. If a motor draws much more than 2 A for more than a few seconds, the voltage to the motor will be reduced, but normal operation will resume once the board has cooled down. An on-board temperature sensor can be connected to ADC6 for some (limited) feedback about the board temperature.
Like our original Orangutan, the Orangutan LV-168 is based on Atmel’s mega168 AVR microcontroller, which features 16 Kbytes of flash program memory, 1024 bytes of SRAM, and 512 bytes of EEPROM. Because the user has direct access to the microcontroller, any development software for Atmel’s AVR microcontrollers, including Atmel’s free AVR Studio and the WinAVR GCC C/C++ compiler, is compatible with the Orangutan LV-168. An in-circuit programmer, such as our USB AVR programmer, is required for programming the Orangutan LV-168; we offer a combination deal that lets you save when you buy a programmer with your Orangutan. We provide an extensive set of software libraries that make it a breeze to interface with all of the integrated hardware. These libraries come with a number of sample programs that demonstrate how to use the various components on the Orangutan LV-168. This robot controller is also compatible with the popular Arduino development platform.
The Orangutan LV-168 is designed to operate off of three NiMH cells, which corresponds to a voltage range of 2.5-4.5 V. In a typical application, you might power your Orangutan LV-168 with three AA batteries, for example. However, the unit can operate from two or four NiMH cells with some limitations. At lower voltages, the effectiveness of the motor drivers will be reduced, and the 5 V step-up regulator’s output current will be reduced. Beyond 5 V, the step-up regulator will cease operation and the input voltage will show up on the Vcc line; the components on the board can operate to 5.5 V, but some sensors you use might have a 5.25 V limit.
The Orangutan LV-168 matches the outline of a 3 AA battery holder almost perfectly, allowing you to combine the two into a single, compact unit.. Such a battery holder or a pre-assembled pack of similar size (often available as a cordless phone battery pack) will help you get up and running quickly.
- overall unit dimensions: 2.15" x 1.9"
- input voltage: 2-5 V
- 2 bidirectional motor ports (2 A continuous per channel, 5 A maximum per channel)
- programmable 20 MHz Atmel ATmega168 AVR microcontroller (16 KB flash, 1 kB SRAM, 512 bytes EEPROM)
- 8 general-purpose I/O lines, 6 of which can be used as analog input channels
- 2 additional analog input channels (ADC6 & ADC7) can be accessed on the board
- removable 8-character x 2-line LCD
- buzzer tied to one of the mega168’s hardware PWMs
- 3 user pushbutton switches
- 2 user LEDs
- temperature sensor optionally connected to ADC6
- user potentiometer optionally jumpered to ADC7
- comprehensive user’s guide
|Size:||2.15" x 1.90"|
|Processor:||ATmega168 @ 20 MHz|
|RAM size:||1024 bytes|
|Program memory size:||16 Kbytes|
|Motor driver:||discrete MOSFETs|
|User I/O lines:||81|
|Max current on a single I/O:||40 mA|
|Minimum operating voltage:||2 V|
|Maximum operating voltage:||5 V|
|Continuous output current per channel:||2 A|
|Peak output current per channel:||5 A|
|Maximum PWM frequency:||10 kHz|
|Reverse voltage protection?:||Y|
|External programmer required?:||Y|
Documentation and other information
User’s guide for the Pololu Orangutan SV-168, SV-328, and LV-168 robot controllers.
This guide explains how to get started programming your Orangutan or 3pi Robot in Windows, Linux or Mac OS X. It covers setting up an AVR development environment (Atmel Studio for Windows users), installing the Pololu AVR C/C++ Library, and setting up the Pololu USB AVR Programmer.
Information about installing and using the C/C++ libraries provided for use with Pololu products.
A reference to commands provided in the Pololu C/C++ and Arduino libraries for the AVR.
Guide for programming Orangutans and the 3pi robot from the Atmel’s older AVR Studio 4 IDE. It covers installing the Pololu AVR C/C++ Library, and setting up the Pololu USB AVR Programmer.
Guide to making the Arduino IDE compatible with the 3pi robot and the Orangutan SV-328, Orangutan LV-168, and Baby Orangutan B robot controllers, including Arduino libraries for interfacing with all of their on-board hardware.
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.
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.
- Pololu AVR Development Bundle for Windows (12MB exe)
- This bundle contains all the Pololu software you need to get started programming AVRs in Windows: the Pololu AVR C/C++ Library, the Pololu USB AVR Programmer drivers and software, and the Pololu Orangutan SVP drivers. We recommend installing Atmel Studio 7.0 before installing this bundle.
- Orangutan LV-168 quick-start sheet and schematic (256k pdf)
- AVR Studio 4 test program for the Orangutan LV-168 (69k zip)
- C code for the mega168: This is the program used to test each Orangutan LV-168 before it ships and is part of the program that comes pre-loaded on each Orangutan LV-168. It interfaces with all of the on-board hardware and can be used as a starting point for your own programs. This program requires the Pololu AVR library (libpololu). Please see the Orangutan LV-168 user’s guide for more information about using this test program.
- AVR Studio 4 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.
- AVR Studio 4 demo project #2 for the Orangutan SV-168 and LV-168 (16k zip)
- C code for the mega168: This is a slightly more advanced program that demonstrates triggering actions with the user buttons and controlling the buzzer using one of the mega168’s hardware PWMs (as opposed to the processor-intensive software buzzer control we used in Demo 1). The program will cause the buzzer to play while the user buttons are held down. The button held down determines the frequency of the note the buzzer plays.
- AVR Studio 4 demo project #3 for the Orangutan LV-168 (29k zip)
- C code for the mega168: This project demonstrates analog-to-digital conversion, use of the LCD, and control of the motor ports. Specifically, it uses the mega168’s analog-to-digital converter to monitor the position of the user potentiometer. It displays the potentiometer’s position on the LCD and drives the two motor ports based on this position.
- Sample AVR Studio 4 project for the ATmega168 to blink an LED (9k zip)
- This is a sample AVR Studio 4 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.
- AVR Studio 4 demo project #4 for the Orangutan LV-168 (29k zip)
- C code for the mega168: This project demonstrates the use of the mega168’s UART, interrupts, and reading the on-board temperature sensor. To make full use of this demo, you will need a source capable of producing logic-level (TTL) serial transmissions at 115.2 kbps. The Pololu Orangutan USB programmer can be such a source if you switch the blue shorting block to the USB-to-serial-adapter position and connect its TX pin to pin PD0 on your Orangutan LV-168. Don’t forget to also connect the programmer’s ground pad (labeled G) to ground on your Orangutan. Then start up a terminal program such as Hyperterm or Tera Term Pro, connect to your serial adapter’s COM port, set the baud for 115.2 kbps, and start typing characters. You should see the characters appear on the top row of your Orangutan LV-168’s LCD while the bottom row displays the output of your board’s temperature sensor. If you touch the board near the temperature sensor, you should see this reading rise.
- MCP9701 datasheet (522k pdf)
- Datasheet for the MCP9701 temperature sensor used on the Orangutan LV-168.
Be The First To Review This Product!
Help other Little Bird Company Pty Ltd users shop smarter by writing reviews for products you have purchased.