SF Innovations

Modules for the Raspberry Pi and Home Automation

This website is maintained by SF Innovations Ltd, 9 The Pastures, York, YO24 2JE.  

Contact sales@sf-innovations.co.uk if you have any queries.

Home.Home Automation.Custard Pi.Resources.Kits.

Sign up for e-mail alerts

Custard Pi range of accessories for the Raspberry Pi

Follow us on Facebook



Terms and Conditions of Sale

Shipping costs and options outside the UK



(All the downloads here have a .txt extension. Use a left mouse click to open the file in a new window to view. Right click and select ‘save as’ or ‘save link as’ to download the file. After downloading a listing to the Raspberry Pi with an internet connection, please change the extension from .txt to .py  Alternatively use a USB memory stick to transfer the program from a PC to the Raspberry Pi.)


Custard Pi 1


Flashing an LED - sample Python code

Reading a switch - sample Python code

LCDdemo - writing to an LCD (Project 12)

LCD routines using I2C bus (Project 12)


Custard Pi 2


Testing Digital outputs - sample Python code

Testing Digital inputs - sample Python code

Testing Analogue outputs - sample Python code

Testing Analogue inputs - sample Python code

Sample code for battery voltage measurement (Project 13)

Function for reading analogue inputs (Project 13)



Custard Pi 3


Testing the 8 analogue inputs and printing the results

Function for reading analogue inputs (Projects 11,& 14)

Sample code for temperature measurement (Project 11)

Sample code for current measurement (Project 14)


Custard Pi 4


Function for setting up the I2C buffer (MCP23008)

Test routine for CPi4


Custard Pi 5


Demonstrating the 8 digital I/O of Custard Pi 5

Python code for writing digits to a 7 segment display (Project 10)


Custard Pi 6


Function for controlling Custard Pi 6 using I2C utilities (cpi6x.py)


Custard Pi 7


Functions for controlling Custard Pi 7 Relays, Open Collector outputs and switch inputs

Test Routine for Relays, Open Collector Outputs and switch inputs

Function for driving the LCD

Testing the LCD

Function for controlling the bi-directional I/O port

Testing the bi-directional I/O port

Testing the analogue inputs and output


Sample code for reading keypad (Project 15)


Mains Switch Widget


Switching an appliance ON and OFF with an e-mail


Remote Temperature Measurement, Logging and Alarm