This is the place to come for all information related to the Forebrain Development Board.
- Why Choose Forebrain?
- What Can You Do With Forebrain?
- Quickstart/How to use Forebrain
- Forebrain Functions Library
- Guides and Examples
- Downloads and Useful Links
Forebrain is a diminuitive development board carrying the NXP LPC1343, a 32bit ARM Cortex-M3 microcontroller clocked at 72MHz. It allows professionals, hobbyists and artists to create and control complex and interactive circuits, ranging from blinking an LED to autonomous flying machines. We are committed to providing guides, tutorials, and documented projects for the Forebrain development board.
Forebrain does not need any special programming cables or dongles to load code as the LPC1343 can be plugged into a USB port and appear as a USB memory stick, compiled code can simply be dragged and dropped into the drive.
Code can be written in C and compiled with a GCC compiler, you can either use our simple-to-use functions to control hardware, or interact directly with the hardware registers, making it perfect for users of all levels.
Features of the LPC1343 include:
- 40 digital I/O pins, with software controllable pull-up and pull down resistors, and hysteresis. 3.3V Logic levels, with 5V input tolerance.
- 8 analogue channels, capable of 10-bit resolution and up to 400kHz sample rate (at 10-bit resolution)
- Full speed USB 2.0 connectivity, with built-in USB HID and USB MSC stack, allowing simple and rapid USB device development
- Hardware UART, with data rate up to 4.5 MBit/s and 16-byte Rx/Tx FIFO,
- Hardware SSP/SPI (Motorola SPI, 4-wire Texas Instruments SSI, and National Semiconductor Microwire compatible)
- Hardware I2C, with master, slave and monitor modes and up to 1Mbit/sec (Fast-Mode Plus) speeds
- Two 16-bit and two 32-bit timers, with timer and counter mode, and a combined total of up to 11 hardware PWM output channels
- Nested vectored interrupt controller, can supply interrupts from any of the peripherals, and with programmable interrupt priorities.
- 24-bit system tick timer
- 32-bit WDT
- Serial Wire Debug port
- 32Kb of Flash and 8kB of RAM
Additional features of Forebrain (MK6) include:
- 256kbits EEPROM
- 3.3V regulator
- Mini-USB socket
- Two hardware buttons, with user-definable functions
- Four user-controllable LEDs,
- SWD port for debugging
- 12MHz crystal capable of running the LPC1343 at 72MHz
- Dimensions 24mm x 67mm (0.94"x2.62")
Each Forebrain development board is packaged carefully and sent to you with the following:
- Magnetic pin quick reference card (line it up and immediately see which pin is which)
- Stylish, matte steel tin with foam padding (ideal for modding to contain small projects)
- Retractable mini usb cable. (connect to your forebrain wherever it is)
Forebrain is also available with integrated wireless modules, for example the Hivebrain development board is a pin-compatible with Forebrain and incluedes an integrated XBee module.
Forebrain is flexible, realise your wildest (electronics-related) dreams! In addition to your own projects, we will be providing several stackable expansion layers that brings extra functionality to Forebrain.
Some examples of projects:
Compiled code can be loaded onto Forebrain from a computer over a simple USB connection, no need for special drivers or hardware; the LPC1343 on Forebrain has its own built-in USB bootloader that will show up as a removable USB drive on your computer. Simply copy the compiled code to the drive, and eject it, your code is now on Forebrain!
You can either write and compile the code yourself, or download pre-compiled code from our website - many of the sample projects and guides on our website are accompanied with pre-compiled code, which you can download and load directly onto Forebrain.
Once the code is on Forebrain, it can be placed into the application circuit. The following pages will get you quickly started with use Forebrain:
- Quickstart guide - get started quickly.
- Loading firmware - the various methods of how to get compiled code onto Forebrain, including the fast and easy drag-and-drop via USB.
- Using Forebrain without coding - if you're not planning on writing any code, you can use Forebrain without coding.
Get the latest Forebrain Project Template. This project template contain the Forebrain function library which allows easy access to the Forebrain and expansion board hardware. Newer project template versions are mostly backwards-compatible with older ones, occasionally bugfixes and tweaks may generate an error, check the readme.txt file for details.
The Forebrain function library is a collection of functions that provide users easy access to the hardware features on Forebrain boards, as well as expansion boards for Forebrain. These functions are developed for use with Forebrain and Forebrain-family development boards (including Hivebrain, Mandible, and WeirdEye) and its expansions, but can be applied to any other LPC1343 development boards as long as its hardware is sufficiently similar. Likewise, other function libraries can be used with Forebrain.
- The setup(), loop() and main() Functions - the main program structures
- General purpose inputs/output Functions - including on-board LEDs
- Analogue to Digital Converter Functions - read analogue inputs
- SysTick Timer, and Delay Functions
- Watchdog Timer Functions
- Clock mode and Clockout Functions
- Timers Functions - General purpose timers and counters, including hardware PWM
- UART Functions
- SSP Functions
- I2C and EEPROM Functions
- USB Functions - built-in USB functionality
- Power Management Functions: Low power sleep modes
- Miscellaneous Functions: some additional useful functions
- Code Read Protection
- Make an LED flash - the "Hello world!" of microcontrollers
- PWM Outputs
- Using the EEPROM
- USB EEPROM Memory Stick - turn Forebrain's EEPROM into a USB Memory stick
- Using an SD card - and using ChaN's FatFs
- USB SD card reader - turn Forebrain into an SD card reader.
These software contain source and binaries for coputers to create USB-conncted projects with Forebrain. These can be used directly, or modified. All software linked here are released as open-source under the BSD license.
- USB HID CLI (Windows) - A simple command-line client for Windows to display all the data sent from Forebrain
- USB HID CLI Logger (Windows) - A simple command-line client for Windows to log all the data sent from Forebrain
- Universal Dial: A graphical dial widget for Forebrain, written in Qt
- Universal Controller: A large control app designed to control or debug Forebrain projects, written in Qt
- Forebrain IO controller: a graphical capp designed to allow direct control of Forebrain's input/output pins from the computer.