This page is for board specific information. More information can be found on the generic page for RPICT series.
The RPICT3T1 measures AC Power and Temperature.
- 3x AC current sensor
- 1x DS18B20 Temperature Sensor
- Attiny84 Microcontroller
Power is computed using a fixed estimated Voltage. This estimated voltage can be configured. Default value is 240V. You will be able to change this to 110 or 230 depending on the country where it is used.
If you require more accurate power measurement then use the RPICT3V1 board instead. This will also read Voltage and calculate Real Power. A voltage sensor will be required in this case.
|Raspberrypi 1 A||Yes|
|Raspberrypi 1 B+||Yes|
|Raspberrypi 2 B||Yes|
|Raspberrypi 3 B||Yes|
|Raspberrypi 3 B+||Yes|
|Raspberrypi 4 B||Yes|
|Raspberrypi Zero||Use RPIZ_CT3T1 instead|
- Asus Tinkerboard has been reported to work with RPICT units. Note we wont be able to provide support for the Tinkerboard.
- AC Current sensor:
- SCT-024 400A/100mA
- SCT-031 600A/100mA
The DS18B20 temperature sensor can be connected directly to the screw terminal connector.
Connection is as follow:
Vcc - Red
Din - Yellow
Gnd - Black
Using the latest sketch 3.3 up to 8 temperature sensors can be connected.
See also the DS18B20 Junction Board for sale here.
See general instructions for
If calibration is required only ICAL has any effect on the calibration.
VCAL and PHASECAL might be present in the config but have no effect. These should be ignored.
Default Data Output
Using the manufacture firmware the data output is:
NodeID P1 P2 P3 Temperature
P1 P2 P3 in Watt. Temperature in Celsius. P1 being the estimated Power using CT1. `Estimated Power` computes power multiplying Irms by Vest. Where Vest is the estimated Voltage setup in the config. By default Vest=240V we recommend to change this to 220V or 110V if your local voltage supply differ.
If you prefer having current in Amperes rather than Power in Watt set VEST=1 in the configuration. In the same manner you can set VEST=1000 to get milliAmperes.
Emoncms Config (Emonhub)
For default configuration. Used as single board only (not stacked).
[] nodename = RPICT1T1 firmware = RPICT3T1_V1_1.ino hardware = RPICT3T1 [[[rx]]] names = Power1,Power2,Power3,Temperature datacode = 0 scales = 1,1,1,1 units = W,W,W,C
Python demo script
First of all make sure you have python-serial package installed
$ sudo apt-get install python-serial
Then copy the following into an executable file and run it.
#!/usr/bin/python2 import serial ser = serial.Serial('/dev/ttyAMA0', 38400) try: while 1: # Read one line from the serial buffer line = ser.readline() # Remove the trailing carriage return line feed line = line[:-2] # Create an array of the data Z = line.split(' ') # Print it nicely print ("----------") for i in range(len(Z)): if i==0: print ("NodeID: %s" % Z) elif i in [1,2,3]: print ("Power %d: %s W" % (i, Z[i])) elif i==4: print ("Temperature: %s C" % (Z[i])) except KeyboardInterrupt: ser.close()
Please verify which board version is yours. This is written on the circuit board itself.