Add photos and datasheet; correct wiring and protocol docs

The 20L203 input is RS-232 (reference build uses a MAX3232), it runs on
5-24 V, and it boots in non-scrolling overwrite mode.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
mangavalkandClaude Opus 5.5 committed 2026-10-31 17:44:07 +01:00
1 parent bd9389e04a
commit 3fcd15ad86
7 files changed
+113 -52

No files matched your search

+10 -10
View File
@@ -3,14 +3,13 @@
# Copy this file into your ESPHome config folder (and add the keys below to
# your secrets.yaml), or use it as a reference for your own device config.
#
# Wiring (display is 5V TTL serial, 9600 8N1):
# display RX <- ESP32 GPIO17 (TX)
# display GND <-> ESP32 GND
# display 5V <- 5V supply (the display needs more current than the ESP32 regulator can give)
# Wiring (3-pin connector on the display, 9600 8N1):
# pin 1 VCC <- 5-24V supply, up to 1.2A at 5V (not the ESP32 regulator)
# pin 2 RXD <- MAX3232 T1OUT <- T1IN <- ESP32 GPIO17 (TX)
# pin 3 GND <-> supply GND, MAX3232 GND and ESP32 GND
#
# To drive the display from GPIO1 (TX0, the USB serial pin) instead, set
# `tx_pin: GPIO1` below and `baud_rate: 0` under `logger:` so log output does
# not end up on the display.
# RXD is an RS-232 input. Without a MAX3232, wire GPIO17 straight to RXD and
# set `inverted: true` under uart.
esphome:
name: samsung-vfd
@@ -81,7 +80,9 @@ time:
uart:
id: uart_vfd
tx_pin: GPIO17
tx_pin:
number: GPIO17
inverted: false # true when wired directly, without a MAX3232
baud_rate: 9600
# The display is output-only for us; no rx_pin needed.
@@ -90,8 +91,7 @@ samsung_vfd:
uart_id: uart_vfd
cols: 20
rows: 2
# Lines are padded to 20 chars and the display wraps by itself. Set to true
# only if line 2 ends up on the wrong row (sends CR LF between the lines).
# Lines are padded to 20 chars and the display wraps to line 2 by itself.
send_newlines: false
# Bottom line shows the SNTP clock every second, except while a status banner is up.