

16segment
Linkable 5x16 segment LED display
- Size
- 100 × 60 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 54
- Nets
- 64
- Pads
- 239
- Tracks, vias
- 930, 42
- Pours
- 11
- Routed
- Yes
- KiCad
- KiCad 4
- Created
- 23 Jan 2017
- Updated
- 24 Jan 2017
Overview
16segment is an open-source printed circuit board by ulbo, from the ulbo/5x16segment repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 100 × 60 mm with 54 parts on 64 nets, routed with 930 tracks and 42 vias.
It is built around the ATMEGA16A-AU and BC817-40. Its parts include 23 resistors, 8 capacitors, 5 diodes, 5 transistors and 5 connectors. It belongs with the lEDs and displays boards and the AVR (ATmega, ATtiny) boards of this library.
Main components
2ATMEGA16A-AU
TQFP-44(10x10)-40℃~+85℃ 10bit 16KB 16MHz 1KB 2.7V~5.5V 32 512Byte 8 Bit AVR Built-in FLASH TQFP-44(10x10) Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)BC817-40
SOT-23-65℃~+150℃ 1 NPN 100MHz 100nA 250 345mW 45V 500mA 5V 700mV NPN SOT-23 Bipolar (BJT) ROHSNexperiaBipolar (BJT)
README
README.mdLinkable 5x16-Segment LED Display Module
Single display board
Two boards connected to form a 10 character display
Hardware
The module uses an Atmel ATmega32 MCU to control all LED segments. Input is done via RS232 interface with a voltage level of 5V.
Supply voltage: 5VDC, max. 200mA per module
Board layout is designed using KiCAD. It is tested for LDS8103-AX 16-segment displays (see /board/lds-8103.jpg), but should work with any common-cathode 16-segment display with same mechanical dimensions and pinout, e.g. Kingbright PSC08-11GWA. Because all pins, except the cathode at pin 11, are directly controlled by the MCU, LEDs with other pinouts can be used with adapted firmware.
Please note: The LED displays are soldered on the opposite board site than the ATmega.
Firmware
Communication to modules is unidirectional with 9600 bps, 8N1. Modules are daisy-chained, the RS232 output of the leftmost module is connected to the input of its right neighbour. Every module displays all incoming ASCII characters. If its 5-character memory is full, it passes all further incoming chars to its output, where it is received by the next display.
There are a few control characters, which are always passed immediately:
- 0x01..0x06 : set display brightness, 1 is lowest
- 0x10, 0x13 : or character reset the "cursor" to leftmost position
Compilation under Windows by Atmel Studio 7, Project file: /firmware/16segment.atsln For Linux, /firmware/makefile is provided, see instructions there.
Firmware is flashed using the standard 6-pin ISP connector. File is /firmware/Release/16segment.hex
Fuse settings:
- BODLEVEL = 2.7 V,
- CLKSEL = Ext. Crystal, 8.0-16.0 MHz, 16K CK, 65ms start up time
- BOOTSZ = 256 words
- SPIEN enabled
- TAGEN disabled
- others: disabled
Character Set
- 0x20 .. 0x7F : normal ASCII characters, small caps are currently rendered uppercase (may be changed in future release)
- 0x80 .. 0x9F : a few "graphic" characters, arrows, etc.
- 0xA0 .. 0xff : same as 0x20..0x7f, but with decimal point on
Parts
54| Qty | Value | Footprint | References |
|---|---|---|---|
| 17 | 180 | Resistors_SMD:R_0603_HandSoldering | R2, R3, R4, R5, R6, R7, R8, R10, R11, R12, R13, R14, R15, R16, R17, R18 +1 |
| 5 | 100nF | Capacitors_SMD:C_0603_HandSoldering | C3, C4, C5, C6, C7 |
| 5 | 470 | Resistors_SMD:R_0603_HandSoldering | R19, R20, R21, R22, R23 |
| 5 | BC817-40 | TO_SOT_Packages_SMD:SOT-23_Handsoldering | Q1, Q2, Q3, Q4, Q5 |
| 5 | LDS-8103AX | LDS8103-AX:LDS8103-AX_rev | LED1, LED2, LED3, LED4, LED5 |
| 2 | 15pF | Capacitors_SMD:C_0805_HandSoldering | C1, C2 |
| 1 | 10k | Resistors_SMD:R_0603_HandSoldering | R1 |
| 1 | 10uF | Capacitors_SMD:C_1210_HandSoldering | C8 |
| 1 | 16 MHz | Crystals:Q_49U3HMS | X1 |
| 1 | ATMEGA16-A | Housings_QFP:TQFP-44_10x10mm_Pitch0.8mm | IC1 |
| 1 | AVR ISP | Pin_Headers:Pin_Header_Straight_2x03 | P2 |
| 1 | CONN_01X02 | Pin_Headers:Pin_Header_Straight_1x02 | P5 |
| 1 | CONN_01X06 | Pin_Headers:Pin_Header_Straight_1x06 | P1 |
| 1 | DATA_IN | Pin_Headers:Pin_Header_Angled_1x04 | P3 |
| 1 | DATA_OUT | Pin_Headers:Pin_Header_Angled_1x04 | P4 |
The 48 most common of 54 parts.
Questions
How big is the 16segment PCB?
It measures 100 × 60 mm and has 2 copper layers, 1.6 mm thick.
What parts does the 16segment use?
54 parts, built around the ATMEGA16A-AU and BC817-40. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the 16segment KiCad files?
From the ulbo/5x16segment repository on GitHub, at the commit this page was made from: the board is board/16segment.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the 16segment design in my own project?
Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 2 layers112.6 × 85.4 mm

- 2 layers63 × 85 mm

- 2 layers66.8 × 46 mm

Atmega32
vedantjadhav304/Atmega32_DEV_BOARD
Open source AVR embedded system development board based on Atmega32
23 parts2 - 2 layers106.9 × 40.8 mm

- 2 layers33 × 48.9 mm

- 2 layers74 × 56 mm

05 Atmega16 IoT
pcb-firmware-embedded/Atmega16A_temperature_monitoring
This repository contains the complete development of a temperature monitoring and alarm system based on the ATmega16A microcontroller.
29 parts - 2 layers140 × 120 mm

- 2 layers

MP Tracker
elektra42/freifunk-open-mppt
Open hard- and software solar maximum power point tracker
70 parts89