Please ⭐ this repo if you find it useful
The thermal
implementation allows you to integrate your thermal sensor to Home Assistant.
(Me saying hello)
There is currently support for the following device types within Home Assistant:
For the integration to work with a thermal sensor, the thermal sensor device should respond to the following HTTP API requests:
API | Type | Response | Example |
---|---|---|---|
/raw | GET | JSON | {"sensor":AMG8833","rows":8,"cols":8,"data":"23.00,22.75,22.25,23.25,23.25,23.50,23.50,23.50,22.75,23.00,23.00,23.00,23.00,22.75,22.75,22.75,23.25,22.75,23.00,22.75,22.50,23.25,23.50,23.25,22.50,22.75,22.75,22.75,23.00,23.00,22.50,22.50,22.00,22.50,22.75,22.25,22.75,22.75,23.25,22.50,21.75,22.50,22.50,22.75,22.50,22.50,22.50,23.00,22.50,22.25,21.75,21.75,22.50,22.50,22.75,23.00,21.75,22.50,22.00,21.50,22.25,22.00,22.50,23.00"} |
See the GridEye example in the examples folder.
- Download the
thermal.zip
file from the latest release. - Unpack the release and copy the
custom_components/thermal
directory into thecustom_components
directory of your Home Assistant installation. - Configure the
thermal
camera / sensor. - Restart Home Assistant.
- Ensure that HACS is installed.
- Search for and install the "thermal" integration.
- Configure the
thermal
camera / sensor. - Restart Home Assistant.
# Example configuration.yaml entry
camera:
platform: thermal
host: http://192.168.0.10
Main Options
Parameter | Required | Description |
---|---|---|
platform |
Yes | Platfrom name |
name |
No | Friendly name Default: Thermal |
host |
Yes | IP address of your Thermal sensor server |
width |
No | Image width in pixels Default: 640 |
height |
No | Image height in pixels Default: 640 |
rotate |
No | Rotate image Default: 0 |
mirror |
No | Mirror image true / false Default: false |
format |
No | Camera image format (jpeg , png ) Default: jpeg |
min_temp |
No | Min temperature Default: 26 |
max_temp |
No | Max temperature Default: 32 |
sensor |
No | Sensor related configurations |
interpolate |
No | Interpolation related configurations |
cold_color |
No | Cold color Default: indigo |
hot_color |
No | Hot color Default: red |
Interpolate
Parameter | Required | Description |
---|---|---|
method |
No | Interpolation method (bicubic , linear ) Default bicubic |
rows |
No | Number of rows in interpolated data Default: 32 |
cols |
No | Number of columns of interpolated data Default: 32 |
Sensor
Parameter | Required | Description |
---|---|---|
rows |
Yes | Number of rows in sensor data Default: 8 |
cols |
Yes | Number of columns in sensor data Default: 8 |
The camera attributes are:
- FPS
# Example configuration.yaml entry
sensor:
- platform: thermal
host: http://192.168.0.10
Main Options
Parameter | Required | Description |
---|---|---|
platform |
No | Platfrom name |
name |
No | Friendly name Default: Thermal |
host |
Yes | IP address of your Thermal sensor server |
scan_interval |
No | Get raw data interval Default: 60 seconds |
sensor |
No | Sensor related configurations |
roi |
No | Sensor region of interest |
state |
No | Sensor state type (average , max , min ) Default: max |
Sensor
Parameter | Required | Description |
---|---|---|
rows |
Yes | Number of rows in sensor data Default: 8 |
cols |
Yes | Number of columns in sensor data Default: 8 |
ROI
Parameter | Required | Description |
---|---|---|
left |
Yes | Left pixel index [0:cols-1] Default: 0 |
top |
Yes | Top pixel index [0:rows-1] Default: 0 |
right |
Yes | Right pixel index [0:cols-1] Default: 7 |
bottom |
Yes | Bottom pixel index [0:rows-1] Default: 7 |
The sensor state can be one of the following values (all values relates to configured roi):
- Average temperature
- Max temperature
- Min temperature
The sensor attributes are (all values relates to configured roi):
- Average temperature
- Max temperature
- Min temperature
- Min index - The index where the min temperature was detected (1D)
- Max index - The index where the max temperature was detected (1D)
You can also use this more advanced configuration example:
# Example configuration.yaml entry
sensor
- platform: thermal
name: My Thrermal
host: http://192.168.0.10
scan_interval: 2
sensor:
rows: 8
cols: 8
roi:
left: 3
top: 3
right: 5
bottom: 5
state: max
# Example configuration.yaml entry
camera:
platform: thermal
name: My Camera
host: http://192.168.0.10
min_temp: 20
max_temp: 30
mirror: True
TBI
The following thermal sensors are known to work with the integration
Sensor | Image |
---|---|
AMG8833 |
I put a lot of work into making this repo and component available and updated to inspire and help others! I will be glad to receive thanks from you — it will give me new strength and add enthusiasm: