{"id":17661609,"url":"https://github.com/djthorpe/sensors","last_synced_at":"2025-07-29T02:06:22.638Z","repository":{"id":144204971,"uuid":"115711260","full_name":"djthorpe/sensors","owner":"djthorpe","description":"Hardware sensor interfaces through GPIO, I2C \u0026 SPI including BME280, TSL2561, ENER314, RFM69","archived":false,"fork":false,"pushed_at":"2023-02-25T00:39:00.000Z","size":7419,"stargazers_count":11,"open_issues_count":2,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-14T14:44:35.704Z","etag":null,"topics":["bme280","energenie","gopi","hardware-sensors","i2c","i2c-sensors","iot","rfm69","sensor","sensor-interfaces","spi","tsl2561"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/djthorpe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-12-29T10:03:52.000Z","updated_at":"2024-02-01T18:26:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"afbd0a4c-6628-41fb-87cb-00d954eb4db4","html_url":"https://github.com/djthorpe/sensors","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/djthorpe/sensors","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djthorpe%2Fsensors","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djthorpe%2Fsensors/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djthorpe%2Fsensors/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djthorpe%2Fsensors/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/djthorpe","download_url":"https://codeload.github.com/djthorpe/sensors/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djthorpe%2Fsensors/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267617643,"owners_count":24116208,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-29T02:00:12.549Z","response_time":2574,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bme280","energenie","gopi","hardware-sensors","i2c","i2c-sensors","iot","rfm69","sensor","sensor-interfaces","spi","tsl2561"],"created_at":"2024-10-23T17:22:37.230Z","updated_at":"2025-07-29T02:06:22.600Z","avatar_url":"https://github.com/djthorpe.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sensors\n\nThis repository contains sensor interfaces for hardware sensors which\nare interfaced through GPIO, SPI and/or I2C. There are also protocols \nfor communicating between sensors and RPC microservices for accessing sensor\ndata remotely.\n\nIn order to use these interfaces, the GOPI application \nframework (http://github.com/djthorpe/gopi) is used, and the associated\nset of modules for interfacing hardware and remote procedure calls.\n\nThe interfaces and definitions for the sensors are in the package\nroot: `sensors.go`, `rfm69.go`, `ads1x15.go`, `bme680.go`, `energenie.go`\nand `protocol.go`. You can check the examples in the `cmd` directory for more\ninformation on using the drivers.\n\nFor more information on using the drivers, the documentation is in the `doc` folder:\n\n  * For Bosch BME280 and BME680 temperature, humidity, pressure and air quality\n    sensors please see [`doc/BMEx80.md`](https://github.com/djthorpe/sensors/blob/master/doc/BMEx80.md);\n  * For the TAOS TSL2561 luminosity sensor, please see  [`doc/TSL2561.md`](https://github.com/djthorpe/sensors/blob/master/doc/TSL2561.md);\n  * For the HopeRF RFM69 radio transceiver series, please see [`doc/RFM69.md`](https://github.com/djthorpe/sensors/blob/master/doc/RFM69.md);\n  * For the Texas Instruments ADS1015 and ADS1115 analog-to-digital converters,\n    please see [`doc/ADS1x15.md`](https://github.com/djthorpe/sensors/blob/master/doc/ADS1x15.md);\n  * For the ENER314 OOK transmitter and OOK/FSK transciever boards,\n    please see [`doc/ENER314.md`](https://github.com/djthorpe/sensors/blob/master/doc/ENER314.md);\n  * For the implementation of the wire protocol for Energenie MiHome series,\n    please see [`doc/mihome.md`](https://github.com/djthorpe/sensors/blob/master/doc/mihome.md).\n\n## Building the examples\n\nThere is a makefile which will test and make all the example commands for both MacOS and Raspberry Pi \ntarget. On MacOS, only the client command-line utility which allows you to connect to a remote\n`mihome-service` is built. On the Raspberry Pi, all the examples are built.\n\nOn MacOS:\n\n```bash\n% make -f Makefile.darwin\n```\n\nOn Raspberry Pi:\n\n```bash\n% make -f Makefile.rpi\n```\n\n# License\n\nCopyright 2016-2019 David Thorpe All Rights Reserved\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjthorpe%2Fsensors","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdjthorpe%2Fsensors","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjthorpe%2Fsensors/lists"}