Now that I’ve got my hands on a Raspberry Pi 3 Model B Motherboard, I decided nows a good time to play around with the 16×2 LCD Module Controller HD44780 I had laying around (I’ve had this thing since December 2015).
A live NFL (National Football League) score board seemed fitting as the season just started.
I found a really good write up on raspberrypi-spy.co.uk about wiring up the controller and Pi, here is the diagram I used:
The code to power this controller is simple Python (pushed to Github):
#!/usr/bin/env python import time import Adafruit_CharLCD as LCD import requests # Raspberry Pi pin configuration: lcd_rs = 7 lcd_en = 8 lcd_d4 = 25 lcd_d5 = 24 lcd_d6 = 23 lcd_d7 = 18 # Define LCD column and row size for 16x2 LCD. lcd_columns = 16 lcd_rows = 2 # Initialize the LCD using the pins above. lcd = LCD.Adafruit_CharLCD( lcd_rs, lcd_en, lcd_d4, lcd_d5, lcd_d6, lcd_d7, lcd_columns, lcd_rows ) # Start fetch / display loop while True: # fetch current score from NFL api res = requests.get('http://www.nfl.com/liveupdate/scorestrip/ss.json') if res: for game in res.json().get('gms', ): # parse our teams and scores home_team = '%s %s' % (game['h'], game['hnn']) home_team = home_team[:13] home_team_score = game['hs'] away_team = '%s %s' % (game['v'], game['vnn']) away_team = away_team[:13] away_team_score = game['vs'] # clear lcd screen lcd.clear() # write results to lcd screen lcd.message('%s %s\n%s %s' % ( home_team, home_team_score, away_team, away_team_score ) ) time.sleep(5)