OBP Keypad 
==========

- Stromversorgung über M12-Anschluß über NMEA2000
  Eingangsbereich 6~21V
- Ein- und Ausschalten durch langen Tastendruck auf DST/ ONOFF
- Konfiguration über Web-Interface
- PWR leuchtet grün wen NMEA2000-Verbindung etabliert
- PWR leuchtet rot wenn nur Stromversorgung aktiv ist
- 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.


Bohrung Taster: 12mm
Taster Außenmaß: 17.5mm

Verbindungskabel CPU-Platine 
  JST 2.54 XH 6 Pin Steckverbinder -> LED

Anschlußmöglichkeiten

  für Stromversorgung +12V und NMEA2000
    4pin Terminalblock steck-/schraubbar +12V, DNG, CAN-L, CAN-H

  für I²C-Module
    2x 4pin Buchsenleiste weibl. 
    1x QWIIC-Buchse (JST_SH_BM04B-SRSS-TB_04x1.00mm)

  für mechanische Taster
    1x JST 2.54 XH 7 Pin Steckverbinder -> Tasten
    Masseverbindung über einzelnes getrenntes Kabel
    in eine 8-fach WAGO-Klemme

  für LEDs
    TBD


Bemerkungen
-----------

Bei den aktuell verwendeten Tasten sind die Anschlußdrähte extrem
filigran. Leichtes Brechen und schlechte Verarbeitung.

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 Epaper 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 Illumination
 DST    Y       D8      GPIO17 Destination, On/Off

 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
------ ---------- ---------------------- 
 RX     D9         GPIO18
 TX     D10        GPIO21

BUZZER
  TBD

Bauteilliste
------------

  1x ESP32-S3 Nano oder ESP32-S3 Pico
  5x Taster schwarz
  2x Taster gelb
  1x M12 Einbaubuchse
  1x Spannungswandler 12V -> 3.3V
  1x RGB LED (gemeinsame Anode)
  3x LED grün
  1x SN65HVD230 CAN Transceiver
  1x Buzzer, passiv
  1x Gehäuse 150x60x40
  4x Befestigungsschraube M4
  1x Kabelsatz



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
Description
OBP NMEA2000 Keypad with 6+1 keys
https://open-boat-projects.org/de/obpkeypad-6-1/
Readme 129 KiB
Languages
JavaScript 61.2%
C++ 25.5%
CSS 4.4%
HTML 3.8%
Python 3.7%
Other 1.4%