Paso 4: Código de fuente
Todo el código fuente para esta pequeña pantalla de tiempo se basa en Python, PyGame y Pywapi. Todo open source / software libre.
PyGame es utilizado para hacer todas las cosas de la GUI. Cosas realmente increíbles. Utilizando PyGame, la pantalla se reconstruye una vez por segundo. Cerca de la parte superior de mi código fuente encontrarás una sección que permite trucar para tamaños de pantalla diferentes. Hay una sección para la pequeña pantalla de video compuesta y una segunda sección de la pantalla HDMI más grande. Yo simplemente comente una de las dos secciones según el tamaño de pantalla que necesito.
Que mi fuente de código ejecutar sólo descomprimir el archivo adjunto y copiar el directorio completo en el Pi usando el archivo de gestión. Una vez copiado, iniciar el uso de código la siguiente ssh órdenes:
- CD el tiempo
- sudo python weather.py
El comando sudo es necesario para que Python puede controlar leer los pines GPIO. Hay probablemente alguna forma alrededor de esta restricción, pero me escapa.
Una vez que todo lo consigue trabajando con ssh es hora de obtener tiempo para iniciarse automáticamente en el reinicio. Esto también es muy fácil de hacer.
- Uso de ssh, ejecuta "sudo vi /etc/rc.local"
Justo antes de la última línea que dice "exit 0", agregue las siguientes líneas.
- CD /home/pi/Weather
- sudo python weather.py & > err.log
Esto iniciará automáticamente la aplicación del tiempo en el Pi después de reiniciar. Si más adelante quieres hacer esto, use ssh para editar el archivo y agregar el carácter de comentario '#' delante de ambas líneas y reiniciar.
Tenga en cuenta, mi código fuente es un gran hack y no estoy muy orgulloso de él. Sin embargo, si esperé hasta que fuera presentable jamás se presentaría. Por lo tanto, tomar o dejar solo no llores sobre como tengo una piel muy fina.
Un par de cosas a destacar en mi código. Enterrado por ahí te darás cuenta de algun codigo para hablar con un X10 dispositivo. Este fue mi intento controlar mis luces de poste exterior en dirección A3. Simplemente quería las lámparas en el crepúsculo y apagándose al amanecer. Parece fácil que bastante y yo pensamos que tenía trabajo. Usando un dongle USB a RS232 en el Pi que había conectado un CM11A X módulo 10. El CM11A es un X10 antiguo módulo de macro. El CM11A también tiene un puerto RS232 que permite el control sobre el X10 bus. Parece que todavía hay algunos errores debido a las luces de poste de la lámpara no están recibiendo el mensaje!
También de la nota, en la pantalla más grande hay un agradable espacio abierto por el lado derecho de la pantalla. Mi plan es añadir algunas lámparas de estado en esa zona. Estoy jugando con algunos radios IEEE802.15.4 y sus salidas de un día aparecerán en ese lugar abierto.
Para obtener las actualizaciones más recientes y más por favor visite mi sitio web en elec.com ph.
Bueno, me dejan saber en la sección de comentarios debajo de cualquier pregunta que pueda tener.
Gracias, Jim.
Oh y no olvides votar por mi! Gracias de nuevo.
Por cierto: Siempre hay más información en