Raspberrypi Current and Temperature Sensor Adaptor: Difference between revisions

From lechacal
Jump to navigation Jump to search
(48 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Image:IMG_1125_small.png | right | 300px]]
[[Image:IMG_1125_small.png | right | 300px]]
[[Image:IMG_1128_small.png | right | 300px]]


=RPICT Series=
=RPICT Series=


RPICT series are a set of Raspberrypi adaptor for current sensor (CT) and temperature sensor. This page will introduce generalities concerning the RPICT series. Information for each individual board can be found below.
RPICT series are a set of Raspberrypi hat for AC current sensor (CT) and temperature sensor. This page will introduce generalities concerning the RPICT series. Information for each individual board can be found below.
 
All RPICT board connect to the GPIO connector and provide data via the '''serial''' port. An Arduino programmable microcontroller (ATtiny84 or Atmega328) operates the board. Source code for the microcontroller is freely available and can be modified for adaptation.


There are several options for logging and viewing the data. Python or Emoncms or anything able to read a serial port.




'''Raspberrypi'''
* [[RPICT3T1]]  - 3 CT 1 Temperature.
* [[RPICT3T1]]  - 3 CT 1 Temperature.
* [[RPICT3V1]] - 3 CT 1 AC Voltage.
* [[RPICT3V1]] - 3 CT 1 AC Voltage.
Line 14: Line 20:
* [[RPICT7V1_v2.0]] - 7 CT 1 AC Voltage.
* [[RPICT7V1_v2.0]] - 7 CT 1 AC Voltage.
* [[RPICT8]] - 8 CT.
* [[RPICT8]] - 8 CT.
* [[RPIZCT4V3T1]] - Rpi Zero 4 CT 3 AC Voltage 1 Temperature
* [[RPI_T8]] - 8 temperatures.
 
* [[RPICT7V1 Version 4]]


'''Raspberrypi & 400A or more CT'''
* [[RPI LCT3V1]] - 3CT 1 Voltage for large CT.
* [[RPI LCT3V1]] - 3CT 1 Voltage for large CT.
* [[RPI LCT4V3]] - 3CT 3 Voltage for large CT.
* [[RPI LCT4V3]] - 3CT 3 Voltage for large CT.
* [[RPI_LCT8]] - 8CT for large CT.
'''Raspberrypi Zero'''
* [[RPIZ_CT3V1]] - 3 CT 1 AC Voltage. Raspberrypi Zero.
* [[RPIZ_CT3T1]] - 3 CT 1 Temperature. Raspberrypi Zero.
* [[RPIZCT4V3T1]] - Rpi Zero 4 CT 3 AC Voltage 1 Temperature




Line 29: Line 44:
!#Temp
!#Temp
!Stackable
!Stackable
!Config over serial**
!
!
!
|-
|-
| [[RPICT3T1]]
| [[RPICT3T1]]
| 3
| 3
| 0
| -
| 1
| 1
| No
| No
| Yes
|
|  
|  
|-
|-
Line 43: Line 58:
| 3
| 3
| 1
| 1
| 0
| -
| No
| No
| Yes
|
|
|
|-
|-
| [[RPICT4T4]]
| [[RPICT4T4]]
| 4
| 4
| 0
| -
| 4
| 4
| No
| No
| Yes
|
|
|
|-
|-
Line 59: Line 74:
| 4
| 4
| 3
| 3
| 0
| -
| No
| No
| No
|
|
|
|-
|-
Line 67: Line 82:
| 4
| 4
| 3
| 3
| 0
| -
| Yes
| Yes
| Yes
|
|
|
|-
|-
Line 75: Line 90:
| 7
| 7
| 1
| 1
| 0
| -
| Yes
| Yes
| Yes
|
|
|
|-
|-
| [[RPICT8]]
| [[RPICT8]]
| 8
| 8
| 0
| -
| 0
| -
| Yes
| Yes
| Yes
|
|
|
|-
|-
Line 93: Line 108:
| 1
| 1
| n/a
| n/a
| Yes
|  
|
|-
| [[RPI_T8]]
| -
| -
| 8
| Slave 1 only
|
|
|-
|
|
|
|
|
|
|
|-
| [[RPI_LCT4V3]]
| 4
| 3
| -
| One board stack only
|
|
|-
| [[RPI_LCT8]]
| 8
| -
| -
| One board stack only
|
|
|
|}
|}


\* AC Voltage<br>
\* AC Voltage<br>
\** Configuration over serial - The board can be configured from the serial port of the Raspberrypi (no need for an avr programmer).


<br>
<br>
All RPICT board connect to the GPIO connector and provide data via serial interface. An Arduino programmable microcontroller (ATtiny84 or Atmega328) operates the board. Source code for the microcontroller is freely available and can be modified for adaptation.
There are several options for logging and viewing the data. Python or Emoncms or anything able to read a serial port.


=Insert on Raspberrypi=
=Insert on Raspberrypi=
Note all RPICT series boards are compatible with all Raspberrypis.


[[Image:Insert_board_here.png]]
[[Image:Insert_board_here.png]]
Line 123: Line 161:


Recommended sensor:  
Recommended sensor:  
* SCT-013-000 50mA/100A
* SCT-013-000 100A/50mA
* SCT-019-000 33mA/200A
* SCT-019     200A/33mA
* SCT-006      20A/25mA


Connector: 3.5mm Jack
Connector: 3.5mm Jack


==Measured range==
==Measured range==
Line 134: Line 172:


The default range is 100A on all RPICT series which correspond to a burden resistor of 24 Ohm. The table below shows alternative ranges with their associated burden resistor values.
The default range is 100A on all RPICT series which correspond to a burden resistor of 24 Ohm. The table below shows alternative ranges with their associated burden resistor values.
The range is for rms value.


{| class="wikitable"  
{| class="wikitable"  
Line 148: Line 187:
| 181.82
| 181.82
|-
|-
| rowspan=9 | '''SCT-013-000'''
| rowspan=6 | '''SCT-013-000'''
| 100
| 100
| 24
| 24
Line 172: Line 211:
| 120
| 120
| 16.67
| 16.67
|-
| 15
| 160
| 12.5
|-
| 10
| 240
| 8.333
|-
| 5
| 470
| 4.255
|-
|-
| '''SCT-006-000'''
| '''SCT-006-000'''
Line 192: Line 219:
|}
|}


SCT-013-xxx other than SCT-013-000 are not supported. Likewise for any voltage output CT. Use the current output SCT with adequate burden resistor instead.
'''SCT-013-xxx other than SCT-013-000 are not supported'''. Likewise for any voltage output CT. Use the current output SCT with adequate burden resistor instead.


==Notes==
==Notes==
Line 199: Line 226:


Do not be tempted to use voltage output SCT sensor like SCT-013-030 or similar. All these SCT are SCT-013-000 with a burden resistor fitted inside them. However this is clearly not the best option as they are scaled for 1V output. Arduino microcontroller use 3.3V or 5V. We fit the burden resistor on the RPICT series for optimum scaling.
Do not be tempted to use voltage output SCT sensor like SCT-013-030 or similar. All these SCT are SCT-013-000 with a burden resistor fitted inside them. However this is clearly not the best option as they are scaled for 1V output. Arduino microcontroller use 3.3V or 5V. We fit the burden resistor on the RPICT series for optimum scaling.
=Temperature Sensor=
Connector: 3.5mm Jack
The intended temperature sensor is the DS18B20 which can be configured in either parasite or normal mode.
Temperature sensors come with various connectors.
==3 pin Molex==
This applies for board RPIZCT4V3T1.
==Bare wires==
This applies for boards RPICT3T1 and RPICT4T4. Connectors are screw terminals. Temperature probe should present bare wires for connecting.


=Voltage Sensor=
=Voltage Sensor=
Line 227: Line 240:
To evaluate the power of an installation it is not strictly necessary to use the voltage sensor. Power can be estimated using an estimated fixed voltage (usually 240 or 110V).  
To evaluate the power of an installation it is not strictly necessary to use the voltage sensor. Power can be estimated using an estimated fixed voltage (usually 240 or 110V).  
Voltage sensor becomes necessary if you wish to measure more accurately Real Power, Apparent Power and Power Factor. In addition the combination of a voltage sensor with a CT sensor will provide the direction of power (import/export).
Voltage sensor becomes necessary if you wish to measure more accurately Real Power, Apparent Power and Power Factor. In addition the combination of a voltage sensor with a CT sensor will provide the direction of power (import/export).
=Temperature Sensor=
[[File:Waterproof-temperature-sensor-ds18b20-1.jpg | right| 300px]]
The temperature sensor is the DS18B20.
Temperature sensors come with various connectors.
==3 pin Molex==
This applies for board RPIZCT4V3T1.
==Bare wires==
This applies for boards RPICT3T1 and RPICT4T4. Connectors are screw terminals. Temperature probe should present bare wires for connecting.


=Power Supply=
=Power Supply=
Line 239: Line 267:
We offer below various way to achieve this.
We offer below various way to achieve this.
* Using cat command.
* Using cat command.
* Using Influxdb and Grafana.
* Using a Json request.
* Using a Json request.
* Using Emonhub tool from Emoncms.
* Using Emonhub tool from Emoncms.
* Using a Python scrypt.
* Using a Python scrypt.
* Using Influxdb.
 


==Using plain Linux terminal - CAT command==
==Using plain Linux terminal - CAT command==
Line 249: Line 278:
Note: This is the most basic usage. We highly recommend to make use of this first before anything else.  
Note: This is the most basic usage. We highly recommend to make use of this first before anything else.  


Before hand make sure you have followed  [[Howto setup Raspbian for serial read |this guide]] if you are using the rasbian image.<br>
Before hand make sure you have followed  [[Howto setup Raspbian for serial read |this guide]] if you are using the Rasbian image.<br>


As an example the output from the RPICT3T1 adaptor board will be in the format below. power in kw. temperature in deg celsius.
As an example the output from the RPICT3T1 adaptor board will be in the format below. power in kw. temperature in deg celsius.
Line 267: Line 296:
  11 48.90 53.88 131.22 19.89
  11 48.90 53.88 131.22 19.89


 
To figure out which channel correspond to which measured value refer to the specific board dedicated page.


Note. If using the emonpi image run the command below before the stty command.
Note. If using the emonpi image run the command below before the stty command.
Line 274: Line 303:
See another alternative here. [[Using plink]]<br>
See another alternative here. [[Using plink]]<br>
See also. [[Recording RPICT Serial stream on local file]]
See also. [[Recording RPICT Serial stream on local file]]
==Using InfluxDB and Grafana==
[[File:GRAFANA_001.png | right | 450px]]
InfluxDB is an open source project backed by Influxdata. It is all free if you install on your own server. Only a hosted solution is payable.
InfluxDB on its own is just a database ready to store the data. Data can be viewed with Grafana.
See this guide proposing a solution to send data to an Influxdb database.<br>
[[Example Using InfluxDB]].
Also see<br>
[[Install an InfluxDB Grafana stack on a Raspberrypi]]
For a readily hosted solution with Influxdb/Grafana see [https://corlysis.com Corlysis].


==Using JSON request==
==Using JSON request==
Line 297: Line 341:
[[File:Json_req_emonwrt3_01.png]]
[[File:Json_req_emonwrt3_01.png]]


==Using InfluxDB==
[[File:Screenshot_2017-03-22_13-27-36.png | right | 300px]]
InfluxDB is an open source project backed by Influxdata. It is all free if you install on your own server. Only a hosted solution is payable.
InfluxDB on its own is just a database ready to store the data and avail them. One then need a graphing package to view the data. Influxdata proposes Chronograf but Grafana can be used too.


See this guide proposing a solution to send the data to Influxdb. [[Example Using InfluxDB]].
For a fully hosted solution with influxdb see [https://corlysis.com Corlysis].


==Using Emoncms==
==Using Emoncms==
Line 461: Line 496:
==RPICT8, RPICT7V1, RPICT4V3==
==RPICT8, RPICT7V1, RPICT4V3==
[[Upload Arduino sketch to Atmega328]].
[[Upload Arduino sketch to Atmega328]].
=Enclosures=
[[File:Enclosure-kit-for-rpict4v3.jpg |right | 300px]]
Some RPICT have enclosures available as 3D printed product.
See the shop item for<br>
[http://lechacalshop.com/gb/internetofthing/48-enclosure-kit-for-rpict3t1.html RPICT3T1 Enclosure]<br>
[http://lechacalshop.com/gb/internetofthing/44-enclosure-kit-for-rpict8.html RPICT8 Enclosure]<br>
[http://lechacalshop.com/gb/internetofthing/43-enclosure-kit-for-rpict7v1.html RPICT7V1 Enclosure]<br>
[http://lechacalshop.com/gb/internetofthing/41-enclosure-kit-for-rpict4v3.html RPICT4V3 Enclosure]<br>


=Related Howto=
=Related Howto=
Line 485: Line 530:


[[Transform a RPICT into a web scope]]
[[Transform a RPICT into a web scope]]
[[Noise level test RPICT V2&3]]
[[RPICT and Node-Red hosted on Raspberrypi]]
[[RPICT and MQTT]]
=External Resources=
[https://www.thingiverse.com/thing:3586158 An enclosure alternative for RPICT7V1]

Revision as of 19:41, 31 May 2019


RPICT Series

RPICT series are a set of Raspberrypi hat for AC current sensor (CT) and temperature sensor. This page will introduce generalities concerning the RPICT series. Information for each individual board can be found below.

All RPICT board connect to the GPIO connector and provide data via the serial port. An Arduino programmable microcontroller (ATtiny84 or Atmega328) operates the board. Source code for the microcontroller is freely available and can be modified for adaptation.

There are several options for logging and viewing the data. Python or Emoncms or anything able to read a serial port.


Raspberrypi

Raspberrypi & 400A or more CT

Raspberrypi Zero

  • RPIZ_CT3V1 - 3 CT 1 AC Voltage. Raspberrypi Zero.
  • RPIZ_CT3T1 - 3 CT 1 Temperature. Raspberrypi Zero.
  • RPIZCT4V3T1 - Rpi Zero 4 CT 3 AC Voltage 1 Temperature


Model #CT #Volt* #Temp Stackable
RPICT3T1 3 - 1 No
RPICT3V1 3 1 - No
RPICT4T4 4 - 4 No
RPICT4V3 v1 4 3 - No
RPICT4V3_v2.0 4 3 - Yes
RPICT7V1_v2.0 7 1 - Yes
RPICT8 8 - - Yes
RPIZCT4V3T1 4 3 1 n/a
RPI_T8 - - 8 Slave 1 only
RPI_LCT4V3 4 3 - One board stack only
RPI_LCT8 8 - - One board stack only

\* AC Voltage


Insert on Raspberrypi

Power is provided from the Raspberrypi. There is no need for extra power supply.

Current Sensor

Any current sensor with current output is compatible. Note there are considerations for the burden resistor which scales the range of measured current. We recommend the sensor below to start with.

Recommended sensor:

  • SCT-013-000 100A/50mA
  • SCT-019 200A/33mA
  • SCT-006 20A/25mA

Connector: 3.5mm Jack

Measured range

The range is determined by the burden resistor fitted on the RPICT unit.

The default range is 100A on all RPICT series which correspond to a burden resistor of 24 Ohm. The table below shows alternative ranges with their associated burden resistor values. The range is for rms value.

Sensor Range
(Rms Amps)
Burden Resistor
(Ohm)
Calibration Coefficient
(theoretical)
SCT-019-000 200 33 181.82
SCT-013-000 100 24 83.33
60 39 51.28
50 47 42.55
30 75 26.67
25 91 21.98
20 120 16.67
SCT-006-000 20 47 17.02

SCT-013-xxx other than SCT-013-000 are not supported. Likewise for any voltage output CT. Use the current output SCT with adequate burden resistor instead.

Notes

CT sensors only measures Alternative Currents (AC). Refer to sensor ACS715 for DC current.

Do not be tempted to use voltage output SCT sensor like SCT-013-030 or similar. All these SCT are SCT-013-000 with a burden resistor fitted inside them. However this is clearly not the best option as they are scaled for 1V output. Arduino microcontroller use 3.3V or 5V. We fit the burden resistor on the RPICT series for optimum scaling.

Voltage Sensor

An AC/AC adaptor is used to measure Voltage. We have a set of recommended adaptors:

  • UK: 77DB-06-09
  • EU: 77DE-06-09
  • US: 77DA-10-09

The RPICT series are shipped using a basic calibration for the voltage port. A calibration would be needed if you feel the measured voltage is not accurate enough against another well trusted measuring device (scope, multimeter). Use this page to calibrate the voltage port.


To evaluate the power of an installation it is not strictly necessary to use the voltage sensor. Power can be estimated using an estimated fixed voltage (usually 240 or 110V). Voltage sensor becomes necessary if you wish to measure more accurately Real Power, Apparent Power and Power Factor. In addition the combination of a voltage sensor with a CT sensor will provide the direction of power (import/export).


Temperature Sensor

The temperature sensor is the DS18B20.

Temperature sensors come with various connectors.

3 pin Molex

This applies for board RPIZCT4V3T1.

Bare wires

This applies for boards RPICT3T1 and RPICT4T4. Connectors are screw terminals. Temperature probe should present bare wires for connecting.

Power Supply

The raspberrypi should use the usual micro-usb PSU.

The RPICT series do not need any extra PSU. Power for the RPICT is taken from the Raspberrypi GPIO.

View/Record data

In the most basic use the RPICT series only output a serial string. It is down to the user to collect this data string and record/view as needed. We offer below various way to achieve this.

  • Using cat command.
  • Using Influxdb and Grafana.
  • Using a Json request.
  • Using Emonhub tool from Emoncms.
  • Using a Python scrypt.


Using plain Linux terminal - CAT command

This option reads data output from a linux terminal using the cat command. Direct reading of the serial port.

Note: This is the most basic usage. We highly recommend to make use of this first before anything else.

Before hand make sure you have followed this guide if you are using the Rasbian image.

As an example the output from the RPICT3T1 adaptor board will be in the format below. power in kw. temperature in deg celsius.

power1,power2,power3,temperature

Log in the Raspberrypi using ssh and issue the commands

stty -F /dev/ttyAMA0 raw speed 38400
cat /dev/ttyAMA0

The terminal should then show something like this below

pi@raspberrypi ~ $ cat /dev/ttyAMA0
11 46.23 52.25 126.56 19.46
11 47.43 52.28 129.60 19.54
11 48.90 53.88 131.22 19.89

To figure out which channel correspond to which measured value refer to the specific board dedicated page.

Note. If using the emonpi image run the command below before the stty command.

sudo /etc/init.d/emonhub stop

See another alternative here. Using plink
See also. Recording RPICT Serial stream on local file

Using InfluxDB and Grafana

InfluxDB is an open source project backed by Influxdata. It is all free if you install on your own server. Only a hosted solution is payable.

InfluxDB on its own is just a database ready to store the data. Data can be viewed with Grafana.

See this guide proposing a solution to send data to an Influxdb database.
Example Using InfluxDB.

Also see
Install an InfluxDB Grafana stack on a Raspberrypi

For a readily hosted solution with Influxdb/Grafana see Corlysis.

Using JSON request

The Raspberrypi can be setup to serve Json requests on http.

Preliminaries. This is for a Raspbian default image. This guide should be completed first.

Issue the commands below. This installs a http server. Configure it and setup the binary of emonwrt3. Emonwrt3 aims to save the data into a rolling database.

sudo apt-get install lighttpd
sudo wget lechacal.com/repo/emonwrt3/lighttpd.conf -O /etc/lighttpd/lighttpd.conf
sudo /etc/init.d/lighttpd restart
wget lechacal.com/repo/emonwrt3/emonwrt3_rpi_armhf_v1.0.1.deb
sudo dpkg -i emonwrt3_rpi_armhf_v1.0.1.deb

Once complete you should be able to request the json data using the address below.

http://raspberrypi/cgi-bin/emonwrt3-json?last=1

Modify last=1 to the number of records you need to acquire. Remove the variable altogether to obtain all data (default limit is 128 records).

The web browser will show the data as below. Number of channels will depend on the unit used. Our example here as 4 channels CH_00 to CH_03.


Using Emoncms

Emoncms is a very complete and user friendly interface. Emonhub is used to forward the data from the RPICT to the Emoncms service. We also show some alternatives below.

Using Emonhub format - Emonpi image [Recommended]

If you are using this option then you should download the emonpi image from this link below.

https://github.com/openenergymonitor/emonpi/wiki/emonSD-pre-built-SD-card-Download-&-Change-Log

Flash this image onto a SD card. Once the Raspberrypi powered up point your web browser to http://emonpi. Then modify the emonhub configuration as shown below.

Delete or backup the entire content of Emonhub configuration and replace with this one below.

[hub]
### loglevel must be one of DEBUG, INFO, WARNING, ERROR, and CRITICAL
### see here : http://docs.python.org/2/library/logging.html
loglevel = DEBUG #(default:WARNING)

[interfacers]

[[SerialDirect]] 
  Type = EmonHubSerialInterfacer
  [[[init_settings]]]
      com_port = /dev/ttyAMA0
      com_baud = 38400
    [[[runtimesettings]]]
     pubchannels = ToEmonCMS,

[[emoncmsorg]]
   Type = EmonHubEmoncmsHTTPInterfacer
   [[[init_settings]]]
   [[[runtimesettings]]]
       subchannels = ToEmonCMS,
       #url = http://localhost/emoncms #uncomment to save on local pi
       apikey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
       senddata = 1                    # Enable sending data to Emoncms.org
       sendstatus = 1                  # Enable sending WAN IP to Emoncms.org MyIP > https://emoncms.org/myip/list
       sendinterval= 30                # Bulk send interval to Emoncms.org in seconds
        

[nodes]

[[11]]
  nodename = my_RPICT7V1
  [[[rx]]]
     names = RP1, RP2, RP3, RP4, RP5, RP6, RP7, Irms1, Irms2, Irms3, Irms4,Irms5,Irms6,Irms7,Vrms
     scales = 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
     units =W,W,W,W,W,W,W,mA,mA,mA,mA,mA,mA,mA,V
     datacode = 0

Replace the apikey with the one given by your Emoncms account. Use the Read and Write key. Also modify the [[11]] entry as needed. See board specific page for this.

Refer to the board specific page to modify the last part of the config where it starts with node ID.

Using Emonhub format - Raspbian image [Not Recommended]

It is possible to use a native Rapbian image and install only emonhub to forward the data. In this case you will miss the web interface to the raspberrypi. For this follow the guide below.

Use Emonhub with RPICT

Using the gateway tool to forward the data [Not Recommended]

We are proposing a basic script template which can be installed as below.

wget lechacal.com/RPICT/tools/lcl-gateway.py.zip
unzip lcl-gateway.py.zip
wget lechacal.com/RPICT/tools/gateway.conf
sudo apt-get install python-requests

Edit the gateway.conf file to reflect your own setting. Content will be self explanatory.

nano gateway.conf

Insert the RPICT and run

./lcl-gateway.py

Using Python basic script

Using the same sketch as mentioned above a python script can be used to work with the data. The example script below will be a good starting point.

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/python
import serial
ser = serial.Serial('/dev/ttyAMA0', 38400)

try:
       while 1:
               response = ser.readline()
               z = response.split(" ")
               if len(z)>=3:
                       print "Power 1: %s Watts" % z[1]
                       print "Power 2: %s Watts" % z[2]
                       print "Power 3: %s Watts" % z[3]
                       print "Temperature: %s Degrees" % z[4][:-2]
except KeyboardInterrupt:
       ser.close()


The above example is for the RPICT3T1 board. If using a different RPICT refer to the page of that particular board.


Using SPIOT

Download and install SPIOT on a given server. This could be the raspberrypi itself.

From the downloaded archive there is a directory called rpi containing python scripts and configuration file. Copy all these files on the raspberrypi (if not already there).

Make sure all .py files are executable:

$ chmod 755 *.py

Open the spiot.config file and modify the csv_forward section. port and hostname variable will be the most important ones for a first test. Keep apikey and node as they are to follow this example.

[csv_forward]
port = /dev/ttyAMA0
hostname = myserver/spiot
apikey = qbG31dQxFlG55mNM8G5ZTFkF0mrUbWg5
node = 20
baud = 38400

Then run the spiot_csv.py utility.

$./spiot_csv.py

Then point your webbrowser to the link below:

http://myserver/spiot/realtime.html?apikey=qbG31dQxFlG55mNM8G5ZTFkF0mrUbWg5&node=20&fields=f001

The last 5 minutes of the first channel will be shown on a graph.

Flashing the firmware / Upload Sketch

The onboard microcontroller can be re-programmed using the Arduino IDE software and an AVR programmer.

There is no need to reflash the microcontroller if you wish to change parameters for the following boards: RPICT7V1 version 2, RPICT4V3 version 2, RPICT8, RPICT3T1, RPICT3V1, RPICT4T4.

For other type of boards such as RPICT7V1 model 1, RPICT4V3 model 1 the only way to modify parameters is to modify the sketch and upload it to the microcontroller. This would applies for changing output format (csv/emoncms) or calibration values.

RPICT4T4, RPICT3V1, RPICT3T1, RPICT4V3 version1

This link is a tutorial to upload Arduino sketches to the Attiny84. .

RPICT8, RPICT7V1, RPICT4V3

Upload Arduino sketch to Atmega328.

Enclosures

Some RPICT have enclosures available as 3D printed product.

See the shop item for
RPICT3T1 Enclosure
RPICT8 Enclosure
RPICT7V1 Enclosure
RPICT4V3 Enclosure

Related Howto

Frequently Asked

Howto setup Raspbian for serial read

Example Using InfluxDB

How to calibrate the Voltage Port

Calibration VCAL ICAL PHASECAL

Use Emonhub with RPICT

Burden Resistor calculation

How to program an Attiny85 or Attiny84

RPICT Online Config Generator

Playground

Transform a RPICT into a web scope

Noise level test RPICT V2&3

RPICT and Node-Red hosted on Raspberrypi

RPICT and MQTT

External Resources

An enclosure alternative for RPICT7V1