Benutzer-Werkzeuge

Webseiten-Werkzeuge


project:btclock

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
btclock [2017-10-28 19:07] macxyloproject:btclock [2019-11-08 16:56] (aktuell) – updated web api urls moormaster
Zeile 4: Zeile 4:
 Die Dokumentation liegt auf Github: Die Dokumentation liegt auf Github:
 https://github.com/dop3j0e/btclock/ https://github.com/dop3j0e/btclock/
 +
 +Ein Script zum Stellen der Uhr befindet sich auch dort:
 +https://github.com/shackspace/btclock-set
 +
 +===== Automatik =====
 +Sofern es nicht verstellt wird, ist das [[https://github.com/shackspace/btclock-set|btclock-set]] Script auf dem [[https://github.com/shackspace/shack_kiosk_v5_konfig|Kiosk]] als Cronjob deployed. Bei jedem Boot des Kiosk, versucht dieser sich (falls nötig) mit der Uhr zu pairen (PIN ist hartkodiert im cronjob hinterlegt...) und diese anschliessend zu stellen.
 +
 +===== Web-API ====
 +Die [[https://github.com/shackspace/btclock-api|btclock-api]] ist deployed auf kiosk.shack unter
 +[[http://kiosk.shack/btclock/datetime]] (readonly - nur Aktionen, die den EEPROM nicht beschreiben können hier erreicht werden) sowie writeable unter [[http://127.0.0.1:8080/btclock/datetime]] (nur vom kiosk selbst erreichbar).
  
 ===== Das Vorgehen: ===== ===== Das Vorgehen: =====
Zeile 9: Zeile 19:
 \\ \\
 Die btclock hat einen Knopf auf der Rückseite, der bei längerem Druck eine 4 stellige zufällige PIN auf dem Display anzeigt.\\ Die btclock hat einen Knopf auf der Rückseite, der bei längerem Druck eine 4 stellige zufällige PIN auf dem Display anzeigt.\\
-Nun muss man sich per Bluetooth mit dem Gerät verbinden.\\+Nun muss man sich per Bluetooth mit dem Gerät verbinden - der Name des Gerätes lautet " BT Clock ".\\
 Solange die PIN auf dem Display angezeigt wird, hat man Zeit diese in seinen PC einzugeben um sich zu verbinden.\\ Solange die PIN auf dem Display angezeigt wird, hat man Zeit diese in seinen PC einzugeben um sich zu verbinden.\\
 \\ \\
 Nach dem verbinden stehen 2 virtuelle COM-Ports zur Verfügung die man mit Putty öffnen kann.\\ Nach dem verbinden stehen 2 virtuelle COM-Ports zur Verfügung die man mit Putty öffnen kann.\\
-Nur einer der beiden funktioniert für die Stellung der Uhr.\\ +Nur einer der beiden funktioniert für die Stellung der Uhr - um genau zu sein der Com Port mit dem Namen " BT Clock 'Dev B' " und der Direction Outgoing.\\
-Man muss es also einfach ausprobieren.\\+
 Die Baudrate beträgt 9600 - (8) data bits, no (N) parity bit, and one (1) stop bit.\\ Die Baudrate beträgt 9600 - (8) data bits, no (N) parity bit, and one (1) stop bit.\\
 Flow Control: Nicht bekannt. Sowohl XON/XOF als auch None scheint zu funktionieren.\\ Flow Control: Nicht bekannt. Sowohl XON/XOF als auch None scheint zu funktionieren.\\
Zeile 45: Zeile 54:
   No|T=17102817380005+DISC:SUCCESS   No|T=17102817380005+DISC:SUCCESS
 Die Fehlermeldung taucht manchmal auch erst auf, wenn ihr die COM-Portverbindung zum zweiten mal öffnet.\\ Die Fehlermeldung taucht manchmal auch erst auf, wenn ihr die COM-Portverbindung zum zweiten mal öffnet.\\
 +
 +===== Beispielsitzung - Linux =====
 +
 +==== Koppeln ====
 +
 +  $ bluetoothctl 
 +  Agent registered
 +  [CHG] Controller 11:22:33:44:55:66 Pairable: yes
 +  
 +  [bluetooth]# scan on
 +  Discovery started
 +  [CHG] Controller 11:22:33:44:55:66 Discovering: yes
 +  [NEW] Device 20:11:02:47:01:01 BT Clock
 +  
 +  [bluetooth]# pair 20:11:02:47:01:01
 +  Attempting to pair with 20:11:02:47:01:01
 +  [CHG] Device 20:11:02:47:01:01 Connected: yes
 +  Request PIN code
 +  [agent] Enter PIN code: 3212
 +  [CHG] Device 20:11:02:47:01:01 ServicesResolved: yes
 +  [CHG] Device 20:11:02:47:01:01 Paired: yes
 +  Pairing successful
 +  [bluetooth]# scan off
 +  [bluetooth]# quit
 +
 +==== Uhr stellen ====
 +
 +Hierfür wird das leider mittlerweile als deprecated eingestufte tool rfcomm benötigt. In Archlinux gibt es dieses Tool noch im [[https://aur.archlinux.org/packages/bluez-rfcomm/|AUR]]. Im [[https://aur.archlinux.org/cgit/aur.git/snapshot/bluez-rfcomm.tar.gz|Snapshot]] dieses Pakets befindet sich eine //PKGBUILD// Datei sowie die Sources des rfcomm-Tools - damit sollte sich dieses Tool auch für andere Distributionen leicht wieder zum Leben erwecken lassen.
 +
 +  $ sudo rfcomm bind rfcomm0 20:11:02:47:01:01
 +  
 +  # --echo          gibt jedes gesendete Zeichen nochmal lokal aus
 +  # --omap crlf     ersetzt jedes zu sendende cr (carriage return) durch lf (linefeed)
 +  # --imap lfcrlf   ersetzt jedes empfangene lf durch crlf
 +  # Um picocom zu verlassen, nacheinander die Kombinationen [Strg+a], [Strg+x] drücken
 +  
 +  $ sudo picocom --quiet --echo --omap crlf --imap lfcrlf /dev/rfcomm0
 +  T=17102817380005
 +  OK
 +  T?
 +  2017-10-28(05) 17:38:03
 +  OK
 +  
 +  $ sudo rfcomm release rfcomm0
 +
project/btclock.1509210432.txt.gz · Zuletzt geändert: 2017-10-28 19:07 von macxylo