Translated README to english; german version remains as README.de

This commit is contained in:
2026-02-04 06:34:30 +01:00
parent dcac1f70df
commit c6394650dc
2 changed files with 315 additions and 120 deletions

245
README
View File

@@ -1,108 +1,111 @@
OBP Keypad 6/1
==============
- Stromversorgung über M12-Anschluß über NMEA2000
- Eingangsbereich 6~21V
- Konfigurationsmodus durch langen Tastendruck (>3s) auf DST
- Tiefschlaf und Reset aus Konfigmodus heraus auswählbar
- Konfiguration über Web-Interface
- Buzzer für Tastendruck-Feedback
passiv, damit können die Töne mit PWM programmiert werden
- I²C Temp/Hum-Sensor SHT31
- Power supply via M12 connector through NMEA2000
- Input range 6-21 V
- Configuration mode via long key press (>3 s) on DST
- Deep sleep and reset can be activated from configuration mode
- Configuration via web interface
- Buzzer for key press feedback
passive, allowing tones to be programmed via PWM
- I²C temperature/humidity sensor SHT31
Optionen für später
- Helligkeitssensor z.B. zum automatischen LED dimmen
Pins umbelegen?:
Later options
- Brightness sensor, e.g. for automatic LED dimming
Reassign pins?:
I²C -> D0, D1 (GPIO 44, 43)
LEDs umsortieren: A0 bis A5 für die 6 LEDs
A6 als analoger Input für Sensor
A7 ist frei als Reserve
Reorder LEDs: A0 to A5 for the 6 LEDs
A6 as analog input for sensor
A7 reserved
- Version 2
- Seatalk1 Anschluß für Fernbedienung Raymarine Pinnenpilot
- Version X, immer als Option
- EPaper-Display 2.9" zur Anzeige der Tastenbelegung
bedeutet auch: viel komplizierteres Gehäuse
- Seatalk 1 connector for Raymarine tiller pilot remote control
- Version X, always optional
- 2.9" ePaper display to show key assignments
also means: much more complex enclosure
Damit die LEDs nicht stören, kann umgeschaltet werden zwischen
permanentem Leuchten und nur kurzem Aufblinken bei Betätigung:
Tag- und Nachtmodus
To prevent the LEDs from being distracting, switching is possible between
permanent illumination and only brief flashing on actuation:
day and night mode
Einschaltvorgang
Power-up sequence
----------------
- Status leuchtet kurz rot auf
- Es erfolgt ein "Lampentest": Alle LEDs werden einmal durchgeschaltet.
- Sind alle Tests erfolgreich ertönt ein Buzzer-Signal.
- Status LED briefly lights up red
- A “lamp test” is performed: all LEDs are cycled once
- If all tests are successful, a buzzer signal sounds
This is also a buzzer test
Beschreibung
Description
------------
Die zu verbindenden Geräte müssen über die Weboberfläche ausgewählt
werden. Eine NMEA2000-Geräteliste wird dargestellt.
The devices to be connected have to be selected via the web interface.
An NMEA2000 device list page is available.
Die Destination-LEDs leuchten nur, wenn ein entsprechendes
N2K-Zielgerät konfiguriert und erkannt wurde.
The destination LEDs light up only if a corresponding
N2K target device has been configured and detected.
Gehäuse
-------
Enclosure
---------
Bohrung Taster: 12mm
Taster Außenmaß: 17.5mm
Button mounting hole 12mm
Button outer diameter: 17.5mm
Verbindungskabel CPU-Platine
JST 2.54 XH 7 Pin Steckverbinder -> LEDs + GND
Connection cable CPU board
Anschlußmöglichkeiten
---------------------
für Stromversorgung +12V und NMEA2000
2pin Terminalblock
für I²C-Module
2x 4pin Buchsenleiste weibl.
1x qwiic-Buchse (JST_SH_BM04B-SRSS-TB_04x1.00mm)
für CAN-Transceiver-Modul: 4fach buchse liegend
für mechanische Taster
1x Terminalblock 8fach, 7 Tasten und GND
Bemerkungen
Connections
-----------
Bei den aktuell verwendeten vorverkabelten Tasten sind die Anschlußdrähte
extrem filigran. Leichtes Brechen und schlechte Verarbeitung.
Besser Taster ohne Kabel verwenden. Schaltdraht mit 0,25mm² scheint am
besten geeignet zu sein, sowohl auf Tastenseite als auch zum Einführen
in den Terminalblock.
Main PCB
For power supply +12 V and NMEA2000
2pin terminal block
Es gibt verschiedene Varianten mit unterschiedlicher Federkraft.
Finale Tasten-Auswahl muß noch erfolgen.
To connect LED PCB
JST 2.54 XH 77-pin connector -> LEDs + GND
For I²C modules
2x 4pin-pin female headers
qwiic-connector (JST_SH_BM04B-SRSS-TB_04x1.00mm)
Beschaltung MCU Nano
--------------------
For CAN transceiver module
4-pin right-angle connector, female
For mechanical buttons
8-pin terminal block, 7 buttons and GND
LED PCB
To connect LED pcb
7-pin JST-XH header (cable can also directly soldered to pcb)
to connect optional light sensor
2-pin female connector right angle
Notes
-----
With the currently used pre-wired buttons, the connection wires are
extremely delicate. Easy to break and poor workmanship.
Better to use buttons without cables. Solid wire with 0.25 mm² seems
best suited, both on the button side and for insertion into the terminal block.
There are various variants with different spring forces.
Final button selection still pending.
MCU Nano pin assignment
-----------------------
Wiki: https://www.waveshare.com/wiki/ESP32-S3-Nano
Der Nano hat 30 Pins.
The Nano has 30 pins.
Stromversorgung über VIN. Lt. Spezifikation können dort 6 bis 21V
anliegen. Vmtl. ist ein Betrieb mit 5V auch möglich.
Den 3.3V-Pin nicht benutzen. Dieser ist als Ausgang gedacht!
Power is supplied via VIN. According to the specification, 6 to 21 V
may be applied there. Operation with 5 V is probably also possible.
Do not use the 3.3 V pin. It is intended as an output!
Das Mapping von Nano-Pin zu GPIO muß noch überprüft werden.
Der nano kann in zwei verschiedenen Mapping-Modi betrieben
werden!
The mapping from Nano pins to GPIOs still needs to be verified.
The Nano can be operated in two different mapping modes!
Die Pins für SPI (D11, D12, D13) sind absichtlich
nicht belegt um frei für Erweiterungen zu sein. An SPI kann
ggf. ein E-Paper angeschlossen werden.
Key Color Pin Remarks
KEY Color Pin Remarks
----- ------- -------- --------------------
1 B D2 GPIO5
2 B D3 GPIO6
@@ -110,7 +113,7 @@ ggf. ein E-Paper angeschlossen werden.
4 B D5 GPIO8
5 B D6 GPIO9
6 Y D7 GPIO10
DST Y D8 GPIO17 Destination, Konfiguration
DST Y D8 GPIO17 Destination, configuration
LED Pin Remarks
------ ---------- ----------------------
@@ -126,65 +129,67 @@ ggf. ein E-Paper angeschlossen werden.
TX D9 GPIO18
RX D10 GPIO21
BUZZER
GPIO43 temporär, piept allerdings beim flashen über USB und beim Reset
BUZZ Pin Remarks
------ ---------- ----------------------
TBD
Bauteilliste (WIP)
------------
Bill of materials (WIP)
-----------------
1x ESP32-S3 Nano (Waveshare)
berrybase.de
eckstein-shop.de
6x Taster schwarz (1-6)
1x Taster farbig (DST)
1x M12 Micro-C Einbaubuchse
1x RGB LED (gemeinsame Kathode), diffus
3x LED grün, diffus
6x Widerstand 330 Ohm
1x SN65HVD230 CAN Transceiver
1x Buzzer 12V, passiv
6x black or white push buttons (1-6)
1x colored push button (DST)
1x M12 Micro-C panel connector
1x RGB LED (common cathode), diffused
3x green LEDs, diffused
6x resistors 330 Ω
1x SN65HVD230 CAN transceiver
1x buzzer 12V, passive
1x MOSFET 2N7000
1x Widerstand 150 Ohm
1x Kabelsatz für Tasten, 0,25 mm², je 15cm lang
8x schwarz (GND)
7x farbig (Signal)
1x Terminalblock 2pol. 2,54mm schraubbar
1x 3D-Gehäuse bestehend auf Front- und Rückseite
1x Mutternwerkzeug 3D-Druck
4x Befestigungsschraube M4 Senkkopf
4x Gehäuseschraube M2,5, lang
8x Platinenschraube M2,5, kurz
1x Silikondichtschnur 2mm
1x SHT31 I²C-Modul
Buchsenleiste 2,54 mm
Stiftleiste 2,54mm
2x Jumper
1x Polyfuse
Schrumpfschlauch
1x resistor 150 Ω
1x wiring set for buttons, 0.25 mm², 15cm each
8x black (GND)
7x colored (signal)
1x screw terminal block 2pol. 2.54mm
1x 3D enclosure consisting of front and back
1x nut tool, 3D-printed
4x mounting screws M4 countersunk
4x enclosure screws M2.5, long
8x PCB screws M2.5, short
1x silicone sealing cord 2 mm
1x SHT31 I²C module
1x female header 2.54 mm
1x pin header 2.54mm
2x jumpers
1x polyfuse
1x heat-shrink tubing
Konfiguration
Configuration
-------------
- Instanz-Nummer, es können mehrere Keypads im System sein
- Namen des gekoppelten Geräts, an dieses werden die Tasten gesendet
- Tastencodes Tasten 1 bis 6
- Tastennamen
- Web-AP
WIP
- Instance number; multiple keypads can exist in the system
- Name of the paired devices (up to three); keys are sent to the selected
device
- Key codes for buttons 1 to 6
- Key codes for buttons 1 to 6 long pressed
- Key names
- Wifi setup
NMEA2000
--------
Für verbesserten Zugriff auf die Geräteliste der NMEA2000-Bibliothek
wird eine erweiterte Funktion GetDeviceByIndex benötigt.
Aus diesem Grund wird mit einem Fork der Bibliothek gearbeitet.
No incoming packets are processed except for the mandatory ISO packets.
As future extension there could be a feature to receive NMEA2000 alerts.
Es werden keine eingehenden Pakete verarbeitet bis auf die ISO-Pflichtpakete
A device list is maintained.
Es wird eine Geräteliste geführt
From the device list, 3 devices can be assigned to targets A, B, and C.
Aus der Geräteliste können 3 Geräten den Zielen A, B und C zugeordnet werden
Die Tastencodes werden an das jeweils aktive Gerät gesendet
Key codes are sent to the currently active device.
Ist ein Temp./-Feuchtesensor vorhanden werden die gemessenen Werte
regelmäßig auf den Bus gesendet
If a temperature/humidity sensor is present, the measured values
are sent regularly onto the bus.

190
README.de Normal file
View File

@@ -0,0 +1,190 @@
OBP Keypad 6/1
==============
- Stromversorgung über M12-Anschluß über NMEA2000
- Eingangsbereich 6~21V
- Konfigurationsmodus durch langen Tastendruck (>3s) auf DST
- Tiefschlaf und Reset aus Konfigmodus heraus auswählbar
- Konfiguration über Web-Interface
- Buzzer für Tastendruck-Feedback
passiv, damit können die Töne mit PWM programmiert werden
- I²C Temp/Hum-Sensor SHT31
Optionen für später
- Helligkeitssensor z.B. zum automatischen LED dimmen
Pins umbelegen?:
I²C -> D0, D1 (GPIO 44, 43)
LEDs umsortieren: A0 bis A5 für die 6 LEDs
A6 als analoger Input für Sensor
A7 ist frei als Reserve
- Version 2
- Seatalk1 Anschluß für Fernbedienung Raymarine Pinnenpilot
- Version X, immer als Option
- EPaper-Display 2.9" zur Anzeige der Tastenbelegung
bedeutet auch: viel komplizierteres Gehäuse
Damit die LEDs nicht stören, kann umgeschaltet werden zwischen
permanentem Leuchten und nur kurzem Aufblinken bei Betätigung:
Tag- und Nachtmodus
Einschaltvorgang
----------------
- Status leuchtet kurz rot auf
- Es erfolgt ein "Lampentest": Alle LEDs werden einmal durchgeschaltet.
- Sind alle Tests erfolgreich ertönt ein Buzzer-Signal.
Beschreibung
------------
Die zu verbindenden Geräte müssen über die Weboberfläche ausgewählt
werden. Eine NMEA2000-Geräteliste wird dargestellt.
Die Destination-LEDs leuchten nur, wenn ein entsprechendes
N2K-Zielgerät konfiguriert und erkannt wurde.
Gehäuse
-------
Bohrung Taster: 12mm
Taster Außenmaß: 17.5mm
Verbindungskabel CPU-Platine
JST 2.54 XH 7 Pin Steckverbinder -> LEDs + GND
Anschlußmöglichkeiten
---------------------
für Stromversorgung +12V und NMEA2000
2pin Terminalblock
für I²C-Module
2x 4pin Buchsenleiste weibl.
1x qwiic-Buchse (JST_SH_BM04B-SRSS-TB_04x1.00mm)
für CAN-Transceiver-Modul: 4fach buchse liegend
für mechanische Taster
1x Terminalblock 8fach, 7 Tasten und GND
Bemerkungen
-----------
Bei den aktuell verwendeten vorverkabelten Tasten sind die Anschlußdrähte
extrem filigran. Leichtes Brechen und schlechte Verarbeitung.
Besser Taster ohne Kabel verwenden. Schaltdraht mit 0,25mm² scheint am
besten geeignet zu sein, sowohl auf Tastenseite als auch zum Einführen
in den Terminalblock.
Es gibt verschiedene Varianten mit unterschiedlicher Federkraft.
Finale Tasten-Auswahl muß noch erfolgen.
Beschaltung MCU Nano
--------------------
Wiki: https://www.waveshare.com/wiki/ESP32-S3-Nano
Der Nano hat 30 Pins.
Stromversorgung über VIN. Lt. Spezifikation können dort 6 bis 21V
anliegen. Vmtl. ist ein Betrieb mit 5V auch möglich.
Den 3.3V-Pin nicht benutzen. Dieser ist als Ausgang gedacht!
Das Mapping von Nano-Pin zu GPIO muß noch überprüft werden.
Der nano kann in zwei verschiedenen Mapping-Modi betrieben
werden!
Die Pins für SPI (D11, D12, D13) sind absichtlich
nicht belegt um frei für Erweiterungen zu sein. An SPI kann
ggf. ein E-Paper angeschlossen werden.
Key Color Pin Remarks
----- ------- -------- --------------------
1 B D2 GPIO5
2 B D3 GPIO6
3 B D4 GPIO7
4 B D5 GPIO8
5 B D6 GPIO9
6 Y D7 GPIO10
DST Y D8 GPIO17 Destination, Konfiguration
LED Pin Remarks
------ ---------- ----------------------
A A0 GPIO1
B A1 GPIO2
C A2 GPIO3
RGB-R A3 GPIO4
RGB-G A6 GPIO13
RGB-B A7 GPIO14
CAN Pin Remarks
------ ---------- ----------------------
TX D9 GPIO18
RX D10 GPIO21
BUZZER
GPIO43 temporär, piept allerdings beim flashen über USB und beim Reset
Bauteilliste (WIP)
------------
1x ESP32-S3 Nano (Waveshare)
berrybase.de
eckstein-shop.de
6x Taster schwarz (1-6)
1x Taster farbig (DST)
1x M12 Micro-C Einbaubuchse
1x RGB LED (gemeinsame Kathode), diffus
3x LED grün, diffus
6x Widerstand 330 Ohm
1x SN65HVD230 CAN Transceiver
1x Buzzer 12V, passiv
1x MOSFET 2N7000
1x Widerstand 150 Ohm
1x Kabelsatz für Tasten, 0,25 mm², je 15cm lang
8x schwarz (GND)
7x farbig (Signal)
1x Terminalblock 2pol. 2,54mm schraubbar
1x 3D-Gehäuse bestehend auf Front- und Rückseite
1x Mutternwerkzeug 3D-Druck
4x Befestigungsschraube M4 Senkkopf
4x Gehäuseschraube M2,5, lang
8x Platinenschraube M2,5, kurz
1x Silikondichtschnur 2mm
1x SHT31 I²C-Modul
Buchsenleiste 2,54 mm
Stiftleiste 2,54mm
2x Jumper
1x Polyfuse
Schrumpfschlauch
Konfiguration
-------------
- Instanz-Nummer, es können mehrere Keypads im System sein
- Namen des gekoppelten Geräts, an dieses werden die Tasten gesendet
- Tastencodes Tasten 1 bis 6
- Tastennamen
- Web-AP
NMEA2000
--------
Für verbesserten Zugriff auf die Geräteliste der NMEA2000-Bibliothek
wird eine erweiterte Funktion GetDeviceByIndex benötigt.
Aus diesem Grund wird mit einem Fork der Bibliothek gearbeitet.
Es werden keine eingehenden Pakete verarbeitet bis auf die ISO-Pflichtpakete
Es wird eine Geräteliste geführt
Aus der Geräteliste können 3 Geräten den Zielen A, B und C zugeordnet werden
Die Tastencodes werden an das jeweils aktive Gerät gesendet
Ist ein Temp./-Feuchtesensor vorhanden werden die gemessenen Werte
regelmäßig auf den Bus gesendet