Cogni (3.3V) Dev Board
Add brains to your electronics projects
Cogni makes it easy to add progammability to your existing electronics projects, or prototype your larger ideas. It features a USB Micro B connector for programming and serial communication.
Version: Buy Now ($15)Description
This development board makes it easy to build an initial prototype of your project on a breadboard, and later integrate into complete designs. In addition to the physical development board, buyers get access to the schematic. This allows it to be more easily integrated into more complex designs later on.
This development board exposes all the pins of the microcontroller with two rows of standard 2.54mm pitch header footprints. You may either add your own pin headers, or solder wires directly to the board, depending on your use case.
This board is available in 3.3V and 5V variants. Both can be powered via USB, thanks to an onboard 5V->3.3V regulator in the 3.3 version board.
These boards are also used by me when developing boards for the Chiplab. Other development boards either didn’t expose all the IO pins, or didnt support this lower voltage.
Key Features
- Easy to program: Arduino Software Compatible
- Great for prototyping: The pins are arranged for breadboard compatibility, speeding up project prototyping.
- 5V or 3.3V IO Voltage: The board can be powered via usb, or an external power supply (either 3.3V or 5V, depending on the model you select).
- Supports raw programming: Includes an ICSP Header, allowing you to directly flash the board without the Arduino IDE. Helpful for bootloader-free proramming.
- Includes USB For Serial communication: The device can communicate data to/from another device over the USB port.
Cogni Vs Arduino Micro
I designed this board to deal with certain limitations I found in the Arduino Micro. These are:
- All the pins are exposed. The Micro only exposes those with convenient “Arduino Numbers”. But the other pins can still be used directly, giving you a few extra GPIO pins.
- Optional 3.3V Support. Modern devices use 3.3V for signalling, and the Arduino Micro uses 5V.
- Better pin labeling. The Micro puts pin labels between the pins, making it hard to tell which of the two adjacent labels is appropriate for the pin. The Arduino makes it too easy to read the wrong pin name.
- Better pricing. The Micro typically retails for $25. Over a number of projects, this adds up quickly. If you only need 5V support, I have an even lower cost 5V version you can preorder at the top of this page.
Technical Specifications
- ATmega 32U4 Microcontroller, running at 16 MHz
- Arduino compatible. Devices come pre-programmed with an Arduino compatible bootloader, allowing you to program the device with the Arduino IDE.
- 27 GPIO Pins Available on 2.54mm headers. Easily add pin headers for breadboard compatibility, or solder wires to your project.
- IO Pins use either 5V or 3.3V based on the model you choose.
- Micro USB Connector for Power, Programming, and Serial Communication.
- ICSP Header for raw programming without the Arduino IDE.
AVR to Arduino Pin numbers.
If you’re using the Arduino libraries to interact with the pins, the Arduino pin numbers are provided on the board. Most pins can be used through standard Arduino pin numbers. Some only have special purposes, and these are labeled with their AVR pin numbers (P + Letter + Number).
If you want to interact with the pins directly, you will need to know the AVR pin names directly from the microcontroller. This lets you know which port and bit number to use.
The table below contains a mapping from AVR to Arduino Pin numbers. These are listed in the order found on the chip and on the dev board.
Left side
| AVR | Arduino |
|---|---|
| PE6 | 7 |
| PB0 | RXLED |
| PB1 | SCK |
| PB2 | MOSI |
| PB3 | MISO |
| PB7 | 11 (PWM) |
| PD0 | 3 (PWM) |
| PD1 | 2 |
| PD2 | RX |
| PD3 | TX |
| PD5 | TXLED |
Right Side
| AVR | Arduino |
|---|---|
| PF0 | A5 |
| PF1 | A4 |
| PF4 | A3 |
| PF5 | A2 |
| PF6 | A1 |
| PF7 | A0 |
| PE2 | HWB |
| PC7 | 13 (PWM) |
| PC6 | 5 (PWM) |
| PB6 | 10 (PWM) |
| PB5 | 9 (PWM) |
| PB4 | 8 |
| PD7 | 6 (PWM) |
| PD6 | 12 |
| PD4 | 4 |
ICSP Header
These devices come preprogrammed with an Arduino compatible bootloader, so you can program these chips over USB with the Arduino IDE, as if they were an Arduino Micro.
If you would like to program the chip without the IDE, an ICSP header is provided on the board.
Below is the pinout for the connector. Pin 1 is on the top, on the side of the PCB closest to the USB connector. Pin 6 is on the opposite side.
| Pin Number | Name |
|---|---|
| 1 (Top) | GND |
| 2 | 5V |
| 3 | SCK / PB1 |
| 4 | MOSI |
| 5 | MISO |
| 6 (Bottom) | Reset |