
Summary
The Dwenguino is an open, multi-functional Arduino compatible microcontroller board. The possibilities of the Dwenguino board are endless: handy push buttons, analog inputs, a 2x16 LCD display, a buzzer, everything for motor driving, and much more! Through its expansion connector every pin can be accessed and with its handy expansion shield, the Dwenguino can be extended with your own circuit or with many arduino shields. At the same time, Dwenguino is fully compatible with the Arduino IDE, Ardublocks and Scratch4Arduino. It is perfectly suited for an introduction to programming in a fun way without being bothered about finding the correct electronics. That is why the Dwenguino is the perfect tool for starting hobbyists, educators and schools.
Functionality
General
- Powerful AT90USB646 microcontroller - 16 MHz
- Compatible with Arduino IDE, Ardublocks and Scratch4arduino
- The smart lay-out of the board provides a large scale of opportunities
- Universal extension connector easily allows to extend the board with a breadboard, most Arduino shields or a self-made extension board
- Mounting holes that are compatible with LEGO building blocks for an easy integration with Lego
Power
- Power connector suitable for 7V to 20V input voltage
- The board can also be powered through USB
- When both sources are available at the same time, the board automatically selects the external power source
- A Power LED indicates if the board has power
- USB power is made short-circuit proof by an outomatic fuse
Communication
- USB 2.0 communication build-in, not limited to a virtual serial port
- UART connector
- SPI and I2C hardware-protocol build-in
- Most IO is accessible through the expansion connector
Display
- HD44780-based LCD display with 2x16 characters (adjustable contrast) and programmable backlight
Input/Output
- Five push buttons placed in orderly fashion
- Eight leds, easily adjusted through one register
- One additional led on pin 13
- Four buffered outputs for driving heavy loads (motors, power leds, ...) up to 1.2A for each output
- The buffered outputs use the external power source
- Two buffered outputs are also usable as analog outputs through a built-in PWM-module
- Two servo-connectors at 5V
- Up to 8 analog inputs can be used by the expansion connector
- Interrupt pins on the expansion connector
- Possibility to reset by using the reset button or externally using the expansion connector
Expansion connector
The expansion connector has the following interface:
Pin mappings
Pin | Arduino Digital | Dwenguino name | Expansion connector | Dwengo function | PWM | Extra function | Interrupt |
---|---|---|---|---|---|---|---|
PORTA | LEDS | ||||||
PA0 | 32 | LED0 or LCD_D0 | N/A | LED0 + LCD0 | |||
PA1 | 33 | LED1 or LCD_D1 | N/A | LED1 + LCD1 | |||
PA2 | 34 | LED2 or LCD_D2 | N/A | LED2 + LCD2 | |||
PA3 | 35 | LED3 or LCD_D3 | N/A | LED3 + LCD3 | |||
PA4 | 36 | LED4 or LCD_D4 | N/A | LED4 + LCD4 | |||
PA5 | 37 | LED5 or LCD_D5 | N/A | LED5 + LCD5 | |||
PA6 | 38 | LED6 or LCD_D6 | N/A | LED6 + LCD6 | |||
PA7 | 39 | LED7 or LCD_D7 | N/A | LED7 + LCD7 | |||
PB0 | 10 | SS | 15 | Arduinoshield | SPI SS | PCINT0 | |
PB1 | 13 | LED13 or SCK | 9 | Arduinoshield + IR_in | SPI SCK | PCINT1 | |
PB2 | 2 | MOSI | 31 | Arduinoshield | SPI MOSI | PCINT2 | |
PB3 | 12 | MISO | 11 | Arduinoshield | SPI MISO | PCINT3 | |
PB4 | 11 | 13 | Arduinoshield | Timer2A | PCINT4 | ||
PB5 | 6 | 23 | Arduinoshield | Timer1A | PCINT5 | ||
PB6 | 5 | 25 | Arduinoshield | Timer1B | PCINT6 | ||
PB7 | 3 | 29 | Arduinoshield | Timer1C | PCINT7 | ||
PC0 | 40 | SERVO_1 | N/A | Servo 1 | |||
PC1 | 41 | SERVO_2 | N/A | Servo 2 | |||
PC2 | 42 | MOTOR_2_1 | N/A | Motor 2 DIR | |||
PC3 | 43 | MOTOR_1_1 | N/A | Motor 1 DIR | |||
PC4 | 44 | MOTOR_1_0 | N/A | Motor 1 PWM | Timer3C | ||
PC5 | 45 | MOTOR_2_0 | N/A | Motor 2 PWM | Timer3B | ||
PC6 | 46 | BUZZER | N/A | Buzzer | Timer3A | ||
PC7 | 47 | SW_C | N/A | Button C | |||
PD0 | 14 | SCL | 7 | I2C - sensorbord | Timer0B | SCL | INT0 |
PD1 | 15 | SDA | 5 | I2C - sensorbord | Timer2B | SDA | INT1 |
PD2 | 0 | RX | 35 | Arduinoshield | Rx | INT2 | |
PD3 | 1 | TX | 33 | Arduinoshield | Tx | INT3 | |
PD4 | 9 | 17 | Arduinoshield | ||||
PD5 | 8 | 19 | Arduinoshield | ||||
PD6 | 7 | 21 | Arduinoshield | ||||
PD7 | 4 | 27 | Arduinoshield | ||||
PE0 | 23 | LCD_RS | 22 | LCD RS | |||
PE1 | 22 | LCD_RW | 24 | LCD R/W | |||
PE2 | 21 | LCD_E | 26 | LCD EN | HWB | ||
PE3 | 20 | LCD_BL | 28 | LCD backlight | |||
PE4 | 19 | SW_W | 30 | Button W | INT4 | ||
PE5 | 18 | SW_S | 32 | Button S | INT5 | ||
PE6 | 17 | SW_E | 34 | Button E | INT6 | ||
PE7 | 16 | SW_N | 36 | Button N | INT7 | ||
PF0 | 31 | A7 | 6 | analog input | |||
PF1 | 30 | A6 | 8 | analog input | |||
PF2 | 29 | A5 | 10 | analog input | |||
PF3 | 28 | A4 | 12 | analog input | |||
PF4 | 27 | A3 | 14 | analog input | |||
PF5 | 26 | A2 | 16 | analog input | |||
PF6 | 25 | A1 | 18 | analog input | |||
PF7 | 24 | A0 | 20 | analog input |
Schematics and design files
Dwenguino Board v2.0 by Dwengo vzw is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. Please read the license before using this material
- Download the complete scheme of the Dwenguino board;
- Download the complete BOM;
- Download the eagle design files;
Based on the scheme you can easily make your own extensions. For this you can start with the eagle design files on the Dwenguino extension board.
Bootloader
The dwenguino comes with its own Dwenguino Bootloader which makes it accessible with the Arduino IDE software. Please refer to the Dwengo GitHub repository for its source code.
The Dwenguino bootloader can be connected to the Dwenguino through Arduino IDE with a programmer such as the AVR ISP II or on the command line by avrdude.
If you don\'t have a programmer you can program the bootloader with another Arduino compatible board such as the Arduino UNO or the Dwenguino
The expansion shield
By using the Dwengo expansion shield you can easily expand the Dwenguino board with many electrical components. This makes it easy to test an electrical circuit together with the microcontroller. The breadboard mounted on the expansion shield contains multiple rows of holes in which electrical components such as resistors, transistors or chips can be plugged without any soldering. The holes are interconnected according following schematic:
As you can see, there are rows with five holes each that are interconnected. The gap in the middle is useful for positioning LEDs, ICs or other components.
Additionally, the expansion shield has an Arduino compatible extension connector. This connector can be used to extend your Dwenguino with one of the many Arduino Shields or third party Arduino Shields. However, please note that Dwengo cannot guarantee that all of them are compatible. Please refer to the Dwenguino scheme in order to verify compatibility.
How to buy a Dwenguino
Buying a Dwenguino is simple. Browse to our shop and choose your Dwenguino kit or the Dwenguino Plus kit with additional sensors.