ArduHMI with EA DOGM128-6 on an Arduino Uno.
ArduHMI is a HMI with a graphic display and buttons for an Arduino Uno and compatible boards.
The hardware is compatible with the following displays from EA (https://www.lcd-module.com/produkte/dog.html):
There exist Arduinos with 3.3V and 5V. But these displays only accept 3.3V voltage levels. So a voltage regulator (LT1117) for 3.3V is implemented on the ArduHMI board and all signals to the display are routed over a 74LVX245D buffer which acts as a level shifter. Because of that ArduHMI can be used with any Arduino. The SPI signals to the display can be connected to different pins of the Arduino via 0 ohm resistors to enable the use of software or hardware SPI.
The backlight is connected to pin 10 and can be controlled via PWM.
All switches are connected via resitor deviders to one analog in (A0) to reduce pin usage.
Arduino pin | direction on Arduino | usage |
---|---|---|
0 | - | not used |
1 | - | not used |
2 | - | not used |
3 | - | not used |
4 | - | not used |
5 | output | option 2: serial data to display |
6 | output | chip select to display |
7 | output | option 2: serial clock to display |
8 | output | signal A0 to display |
9 | output | reset to display |
10 | output | PWM backlight control |
11 | output | option 1: serial data to display |
12 | output | option: chip select to display |
13 | output | option 1: serial clock to display |
A0 | input | resistor devider of switches |
A1 | - | not used |
A2 | - | not used |
A3 | - | not used |
A4 | - | not used |
A5 | - | not used |
AREF | - | not used |
SCL | - | not used |
SDA | - | not used |
RESET | - | connected to SW6 |
IOREF | - | reference voltage for pull up (U4 and U5) |
VIN | - | not used |
3.3V | - | not used |
5V | - | input voltage for voltage regulator (U1) |
GND | - | GND |
Designator | Package | Quantity | Value / Manufacturer and Partnumber | order numbers | ||
---|---|---|---|---|---|---|
Reichelt | Farnell | other | ||||
C1,C2,C3,C4,C5,C6,C7,C8,C9,C10,C11 | C_0603 | 11 | 1u | KEM X5R0603 1,0U | 1759039 | |
C12 | C_0603 | 1 | 100n | KEM Y5V0603 100N | 1759122 | |
CN1 | Arduino connector | 1 | Arduino connector (cut to correct size) | SL 1X36G 2,54 | 2356174 | |
CN2 | display connector | 1 | display connector (cut to correct size) | SPL 32 | 1023035 | |
D1 | LED_0603 | 1 | LED green | SMD-LED 0603 GN | 2426215 | |
DIS | EA_DOGM128 | 1 | EA DOGM128-6 | EA DOGM128W-6 | digikey 1481-1068-ND | |
Backlight: EA LED55X46 | EA LED55X46-A | digikey 1481-1159-ND | ||||
EA_DOGM132 | alternative | EA_DOGM132-5 | EA DOGM132W-5 | digikey 1481-1073-ND | ||
Backlight: EA LED55X31 | EA LED55X31-A | digikey 1481-1153-ND | ||||
EA_DOGS102 | alternative | EA_DOGS102-6 | EA DOGS102W-6 | digikey 1481-1094-ND | ||
Backlight: EA LED39X41 | EA LED39X41-A | digikey 1481-1150-ND | ||||
Q1 | SOT-23 | 1 | 2N7002 | 2N 7002 SMD | 2317619 | |
R1 | R_0603 | 1 | 2k | RND 0603 1 2K | 2447319 | |
R2 | R_0603 | 1 | 330 | SMD-0603 330 | 2447339 | |
R3 | R_0603 | 1 | 620 | RND 0603 1 620 | 2447413 | |
R6,R7,R8 | R_0603 | 3 | 30 | RND 0603 1 30 | 2447335 | |
R9,R4,R21 | R_0603 | 3 | 1k | SMD-0603 1,0K | 2447272 | |
R5 | R_0603 | 1 | 3k3 | SMD-0603 3,3K | 2447359 | |
R10,R11,R12,R13,R14,R15,R17,R19 | R_0603 | 8 | DNI | |||
R16,R18,R20 | R_0603 | 3 | 0R | SMD-0603 0 | 2447743 | |
SW1,SW2,SW3,SW4,SW5 | WE_430182050816 | 5 | TAST_VER long | RND 210-00207 | 1217769 | |
SW6 | WE_430182050816 | 1 | TAST_VER short | RND 210-00203 | 1217764 | |
U1 | SOT-223 | 1 | LT1117 | NCP 1117 ST33T3G | 2534191 | |
U2 | SOIC-20_7.5x12.8mm_Pitch1.27mm | 1 | 74VHC245D | 74VHC 245 D | 2452983 |
DNI means do not install. Leave this part unpopulated.
ArduHMIShield_1.2.zip
The hardware is released under CERN OHL v1.2
You can find some sample software on github: https://github.com/generationmake/arduhmi
The software is released under GPL v3
scrolling_badge.zip - ArduHMI used as a scrolling badge with an Arduino Uno.
If you have any questions contact me via email at bernhard@generationmake.de, make an issue at github or send me a message at twitter (https://twitter.com/generation_make).
Last update: 23. august 2019