De meeste van mijn Arduino klokken (bijvoorbeeld Nixie klokken, BookClock en uiteraard Wise klok 4) hebben ingebouwde Bluetooth, voornamelijk bedoeld voor het opzetten van de tijd, zonder de noodzaak voor knoppen (de slechte gaten die ik in de behuizing boren zou kunnen negatieve invloed hebben op de esthetiek). Voor het instellen van de tijd, stuur de opdracht tijd = uu, waar 'uu', "mm", "ss" zijn de uren, de minuten en de seconden, respectievelijk. Maar het opzetten van meerdere klokken is een vervelend proces: paar uw Android tablet met een klok op een tijd, dan (van BlueTerm) Stuur de opdracht waarin de juiste tijd. Herhaal vervolgens voor elke klok.
Wat als u de tijd konden uitzenden =... commando? En die opdracht op te nemen van de meest nauwkeurige tijd, verworven van GPS? Je hebt het, dit IS de "methode".
Volgende, het "apparaat", een hardwareapparaat dat hoofdzakelijk uit 3 delen bestaat: GPS-ontvanger, 328 ATmega microcontroller (zoals gebruikt in de Arduino Duemilanove) en Bluetooth master module. Samenstellen van hen is triviaal, aangezien zowel de GPS-ontvanger en de Bluetooth-module via seriële poorten communiceren. Als de protoboard gebruikte ik het XBee schild van seeedstudio omdat het een socket had voor mijn BTBee (plus de 3,3 v spanningsregelaar) en ook voldoende ruimte voor processor en GPS.
De GPS-module die ik gebruikte is een oudere (nu stopgezet op de grote online winkels, maar nog steeds beschikbaar op ebay) Fastrax UP-501 GPS module had ik al rond leggend. Maar een GPS-ontvanger zou moeten werken, met inbegrip van de Adafruit ultieme GPS Breakout. (Adafruit heeft een grote
over het aansluiten van de UP-501 GPS module.)
De "master Bluetooth module" is een opnieuw geprogrammeerd HC-05 (Zie het gegevensblad) als kapitein, met CMODE = 1 (voor uitzending). Dit instructable zal zeker helpen op dit verband.
Het apparaat is klein genoeg dat het in een trommeltje Altoids passen kan als de GPS-ontvanger zit soldeerder rechtstreeks aan de Raad van bestuur, zonder kolomkoppen.
De schets, aangesloten, gebruikt SoftwareSerial bibliotheek om te communiceren met de GPS-module (Rx op D3, Tx op D4) en TinyGPS bibliotheek de tijd om uit te halen de NMEA-zin. De BTBee module is aangesloten op de seriële poort van de hardware (D0, D1).
Macht op deze "massa synchronisatieroutine" eens in een tijdje, en u zal houden uw Bluetooth uitgeruste klokken gesynchroniseerd en nauwkeurig.