[Raspberry Pi] Matrice à LED Pi-Lite

La société Ciseco vient de sortir une gamme de matrices à LED rouges ou blanches pour Raspberry Pi.
matrice_PiLite

La Pi-Lite avec son grand affichage (85 x 55 mm) et ses 14 x 9 LED se connecte directement sur le port GPIO de la Raspberry Pi.

La matrice est pilotée par un microcontrôleur ATMega328P (le même que celui qui équipe la carte Arduino de base). La communication entre le RPi et le Pi-Lite s’effectue par la liaison série classique à 9600 bds (compatible TTL) ce qui rend la Pi-Lite compatible avec n’importe quelle carte/microcontrôleur utilisant ce média.
Un logiciel préchargé permet, dès le déballage, de faire défiler du texte, dessiner des graphiques à barres ou un vumètre, d’allumer/éteindre des LED individuellement, etc. Il suffit d’y envoyer les bonnes commandes série.

Le constructeur donne un lien vers un guide pour débuter avec Pi-Lite avec les commandes de base à envoyer sur le port série.
Si vous voulez gagner du temps en vous affranchissant des configurations parfois fastidieuses de votre distribution Linux, vous pouvez installer une distribution adaptée à la Pi-Lite sur une carte SD (en téléchargeant son image : Ciseco Wheezy image).
Vous disposez également d’un émulateur (écrit en Python) pour faire quelques tests de commandes série.

Des exemples d’utilisation en Python sont disponibles ici.

Exemple de code Python, d’après Pi-Lite LED Matrix Board Python ‘Hello World’ Example :

#!/usr/bin/env python
 
import serial
import time
import sys
 
# Define message complete with
# carriage return at the end
message1 = "Hello World!\r"
message2 = "Pi-Lite messages are easy!\r"
 
# Configure Pi serial port
s = serial.Serial()
s.baudrate = 9600
s.timeout = 0
s.port = "/dev/ttyAMA0"
 
try:
    # Open serial port
    s.open()
except serial.SerialException, e:
    # There was an error
    sys.stderr.write("could not open port %r: %s\n" % (s.port, e))
    sys.exit(1)
 
print "Serial port ready"
 
# Clear display
s.write("$$$ALL,OFF\r")
 
# Send message 1 to the Pi-Lite
print message1
s.write(message1)
 
# Short delay to allow the
# 12 character message to finish
time.sleep(6)
 
# Send message 2 to the Pi-Lite
print message2
s.write(message2)
 
# Short delay to allow the
# 26 character message to finish
time.sleep(12)
 
print "Good bye"

Laisser un commentaire