{"id":22196666,"url":"https://github.com/parmaster/htu21","last_synced_at":"2025-07-18T08:37:27.241Z","repository":{"id":68957176,"uuid":"604280037","full_name":"parMaster/htu21","owner":"parMaster","description":"Access HTU21 (SHT21, SI7021) environmental sensor over I²C with this GoLang package. Periph.io driver?","archived":false,"fork":false,"pushed_at":"2023-03-30T23:46:31.000Z","size":7,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-04T23:19:10.230Z","etag":null,"topics":["gpio","htu21","i2c","i2c-sensors","peripheral-driver-library","peripheral-drivers","periphio","raspberry-pi","raspberrypi","rpi-gpio","sht21","si7021"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/parMaster.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2023-02-20T18:06:41.000Z","updated_at":"2024-10-30T20:23:33.000Z","dependencies_parsed_at":"2024-06-20T05:59:17.542Z","dependency_job_id":null,"html_url":"https://github.com/parMaster/htu21","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/parMaster/htu21","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parMaster%2Fhtu21","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parMaster%2Fhtu21/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parMaster%2Fhtu21/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parMaster%2Fhtu21/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/parMaster","download_url":"https://codeload.github.com/parMaster/htu21/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parMaster%2Fhtu21/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265728981,"owners_count":23818733,"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","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":["gpio","htu21","i2c","i2c-sensors","peripheral-driver-library","peripheral-drivers","periphio","raspberry-pi","raspberrypi","rpi-gpio","sht21","si7021"],"created_at":"2024-12-02T14:16:01.541Z","updated_at":"2025-07-18T08:37:27.215Z","avatar_url":"https://github.com/parMaster.png","language":"Go","readme":"# HTU21 (SHT21, SI7021) golang package\n\nThis package allows you to connect and read environmental data from HTU21 (SHT21, SI7021) sensor. I guess it could be qualified as a Periph.io driver, because it tries to comply with periph.io sensors interface like [bmxx80](https://periph.io/device/bmxx80/) in terms of the ways to access I²C, function calls and data returned.\n\n## Example\nYou can find an example in cmd folder, it works on RPi 4 with HTU21 connected to 4-th I²C bus, sensor address is 0x40. List of I²C buses can be obtained with \n\n`i2cdetect -l`\n\nOnce you know the bus number, connected devices can be enumerated with\n\n`i2cdetect -y 4`\n\n## Additional links\n\nSome links you can find useful working with this sensor, RPi GPIO and I²C:\n\n- Sensor datasheet is here - https://www.te.com/usa-en/models/4/00/028/790/CAT-HSC0004.html\n- Wonderful Raspberry Pi pinout guide - https://pinout.xyz/\n- How to define additional/alternative I²C buses on RPi GPIO - https://www.instructables.com/Raspberry-PI-Multiple-I2c-Devices/\n- *\"Access GPIO pins without root. No access to /dev/gpiomem. Try running as root!\"* problem solution - https://raspberrypi.stackexchange.com/questions/40105/access-gpio-pins-without-root-no-access-to-dev-mem-try-running-as-root\n\n## Why does this package exist?\n\nThis package is a heavily rewritten [idahoakl/HTU21D-sensor](https://github.com/idahoakl/HTU21D-sensor/) library. Main differences are:\n\n-  [periph.io i2c](http://periph.io/x/conn/v3/i2c) package to access I²C instead of proprietary one, idahoakl used\n- [periph.io physic](http://periph.io/x/conn/v3/physic) package for environmental data (temperature and relative humidity)\n- one function *Sense()* instead of separate functions for each measurement \n- no proprietary logging package\n- no write/read user registry functions **for now**\n  \nI'd really like to get rid of proprietary CRC checking dependency as well.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparmaster%2Fhtu21","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fparmaster%2Fhtu21","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparmaster%2Fhtu21/lists"}