homebridge / homebridge/plugins
Verification Request: homebridge-rpi-temperature
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 369
- Forks
- 24
- PR merge metrics
- No merged PRs in 30d
Description
Plugin Name
homebridge-rpi-temperature
Link To GitHub Repo
https://github.com/chris188/homebridge-rpi-temperature
Plugin Icon (Optional)
Plugin Name
homebridge-rpi-temperature
Repository
https://github.com/chris188/homebridge-rpi-temperature
NPM
https://www.npmjs.com/package/homebridge-rpi-temperature
Description
homebridge-rpi-temperature is a lightweight Homebridge plugin that exposes the Raspberry Pi CPU temperature as a native HomeKit temperature sensor.
The plugin is specifically designed for Raspberry Pi systems and reads the CPU temperature directly from the Linux thermal zone interface.
No external services, cloud APIs, or additional system software are required.
Features
Raspberry Pi CPU temperature sensor
Automatic thermal zone detection
Automatic detection of the cpu-thermal thermal zone when available
Fallback to thermal_zone0
Automatic Raspberry Pi model detection
Automatic Raspberry Pi serial number detection
Raspberry Pi manufacturer and hardware information exposed through HomeKit
Plugin version exposed as the HomeKit firmware revision
Configurable temperature update interval
Update interval configurable from 1 to 3600 seconds
Homebridge UI configuration
Homebridge 2.x support
Node.js 22+ support
Local operation without cloud services or external APIs
HomeKit Integration
The plugin creates a native HomeKit TemperatureSensor service.
The Raspberry Pi CPU temperature is read from the Linux thermal zone and provided to HomeKit as the CurrentTemperature characteristic.
Apple Home can then display the temperature according to the user's configured temperature unit.
Raspberry Pi Detection
The plugin automatically searches /sys/class/thermal/ for available thermal zones and prefers a zone identified as cpu-thermal.
If no cpu-thermal zone is found, the plugin falls back to thermal_zone0 when a temperature sensor is available.
The Raspberry Pi model and serial number are read locally from /proc/cpuinfo.
Configuration
The plugin provides a Homebridge Plugin Settings GUI.
Available configuration options include:
Sensor name
Temperature update interval
The default update interval is 10 seconds.
The update interval can be configured between 1 and 3600 seconds.
Error Handling
The plugin handles errors when accessing the Linux thermal zone or Raspberry Pi system information and logs appropriate error messages through the Homebridge logger.
Invalid or unavailable temperature readings are rejected rather than being passed to HomeKit.
The temperature update timer is also cleaned up when Homebridge shuts down.
Privacy
The plugin does not collect telemetry or analytics.
It does not communicate with external servers and does not track users.
All information is obtained locally from the Raspberry Pi.
Compatibility
Raspberry Pi
Homebridge 2.x
Node.js 22 or newer
Plugin Type
The plugin currently uses the Homebridge accessory plugin architecture.
Existing Raspberry Pi Plugins
The purpose of this plugin is specifically focused on exposing the Raspberry Pi CPU temperature as a native HomeKit temperature sensor.
It is intentionally lightweight and does not attempt to provide GPIO, relay, switch, or other Raspberry Pi hardware-control functionality.
The plugin is intended for users who want a dedicated Raspberry Pi CPU temperature sensor in Apple Home.
Verification Request
I would like to request that homebridge-rpi-temperature be reviewed for Homebridge Verified status.
The plugin is publicly available on GitHub and npm and includes Homebridge UI configuration, GitHub releases, local Raspberry Pi temperature detection, and error handling.
Thank you for reviewing the plugin and for any feedback or changes required for verification.
The plugin does not offer the same nor less functionality than that of any existing verified plugin.
🟠 No (please explain in the more information box at the end)
The plugin successfully installs and does not start unless it is configured.
🟢 Yes
The plugin does not require the user to run Homebridge in a TTY or with non-standard startup parameters, even for initial configuration.
🟢 Yes
The plugin does not contain any analytics or calls that enable you to track the user.
🟢 Yes
If the plugin needs to write files to disk (cache, keys, etc.), it stores them inside the Homebridge storage directory.
🟢 Yes
The plugin does not throw unhandled exceptions, the plugin must catch and log its own errors.
🟢 Yes
More Information
I selected "No" because the verified homebridge-rpi plugin also provides Raspberry Pi temperature information.
However, homebridge-rpi-temperature has a much narrower and specific purpose: it exposes the Raspberry Pi CPU temperature as a dedicated, native HomeKit TemperatureSensor accessory.
The plugin is intentionally designed for users who want the Raspberry Pi CPU temperature to appear directly as a standard temperature sensor in Apple Home, without the additional Raspberry Pi hardware functionality provided by homebridge-rpi.
I understand that there is some functional overlap, but I believe the dedicated HomeKit temperature sensor implementation provides a distinct and useful use case.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or repository entry points; start by reviewing the verification checklist and the linked plugin repository. Compare its CPU-temperature scope with the existing homebridge-rpi plugin, then determine whether the stated overlap meets the project's Verified criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- nodejs, raspberry-pi, typescript
- Domain
- documentation, embedded-iot
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100