Stap 4: Broncode
Alle broncode voor deze kleine weer display is gebaseerd op Python, PyGame en Pywapi. Alle open bron / vrije software.
PyGame is gebruikt om te doen van alle spullen van de GUI. Echt geweldig spul. Met behulp van PyGame, is het gehele scherm herbouwd één keer per seconde. In de buurt van de bovenkant van mijn broncode vindt u een sectie waarmee tweaking voor verschillende weergaveformaten. Er is één sectie voor de kleine composiet video display en een tweede afdeling voor de grotere vertoning van HDMI. Ik commentaar gewoon uit een van de twee secties op basis van de weergavegrootte die van de ibehoefte.
Om mijn bron code uitgevoerd net unzip de bijlage en kopieer de hele map naar de Pi met behulp van bestand beheren. Zodra gekopieerd, start de code gebruik de volgende ssh commando's:
- cd weer
- sudo python weather.py
De sudo commando is nodig zodat de Python kunt controleren / Lees de GPIO pinnen. Er is waarschijnlijk een manier rond deze beperking, maar het ontgaat mij.
Zodra alles wordt werken met behulp van ssh is het tijd om weer automatisch wordt gestart bij een herstart te krijgen. Dit is ook echt makkelijk te doen.
- Met behulp van ssh, voer "sudo vi/etc/rc.local"
Net voordat de laatste regel, die zegt "exit 0", het volgende toevoegen aan lijnen.
- cd /home/pi/Weather
- sudo python weather.py & > err.log
Dit zal de toepassing van het weer op de Pi na een herstart automatisch gestart. Indien later wilt u dit uitschakelen, maar gebruik ssh het bestand bewerken en toevoegen van het karakter "#" van de commentaar voor beide lijnen en opnieuw opstarten.
Opmerking, mijn broncode is een grote hack en ik ben niet erg trots op het. Echter als ik wachtte totdat het presentabel was zou het nooit worden aangeboden. Dus, neem het of laat het gewoon niet huilen over want ik heb een zeer dunne huid.
Een paar andere dingen op te merken over mijn code. Begraven neer daar ziet u wat code om te praten met een X10 apparaat. Dit was mijn poging om mijn buiten paal lichten die op adres A3. Ik wilde er alleen de lampen op bij zonsondergang en uit bij zonsopgang. Lijkt eenvoudig genoeg en ik dacht dat ik had het werken. Met behulp van een USB-naar-RS232-dongle op de Pi had ik een CM11A X 10 module aangesloten. De CM11A is een oude X10 macromodule. De CM11A heeft ook een RS232-poort waarmee controle over de X10 bus. Lijkt dat er zijn nog een aantal bugs omdat de lamp pole lichten zijn niet getting naar de depêche!
Ook van de nota is op de grotere vertoning er een mooie open gat langs de rechterkant van het scherm. Mijn plan is toevoegen sommige status lampen in dat gebied. Ik ben spelen met sommige IEEE802.15.4 Radio's en hun uitgangen een dag verschijnen op deze open plek.
Bezoek mijn website op ph-elec.comvoor de nieuwste en beste updates.
Nou, laat me weten in de reacties hieronder alle vragen die u kan hebben.
Bedankt, Jim.
Oh, en vergeet niet te stemmen voor mij! Nogmaals bedankt.
BTW: Er is altijd meer info op