{"id":15043632,"url":"https://github.com/kelnos/sen0177-rs","last_synced_at":"2025-04-15T00:44:38.953Z","repository":{"id":39635779,"uuid":"290100493","full_name":"kelnos/sen0177-rs","owner":"kelnos","description":"Rust library for reading air quality data from the SEN0177 sensor","archived":false,"fork":false,"pushed_at":"2024-01-10T01:46:38.000Z","size":43,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-15T00:44:16.770Z","etag":null,"topics":["air-quality","air-quality-sensor","raspberry-pi","rust","sen0177","sensor"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/kelnos.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}},"created_at":"2020-08-25T03:15:20.000Z","updated_at":"2025-02-24T10:53:31.000Z","dependencies_parsed_at":"2023-12-18T01:07:13.253Z","dependency_job_id":"ef538574-5592-44a9-8275-71940118e5ef","html_url":"https://github.com/kelnos/sen0177-rs","commit_stats":{"total_commits":33,"total_committers":1,"mean_commits":33.0,"dds":0.0,"last_synced_commit":"34d929fbf189b0af6f443e5d17e61a333a709e91"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kelnos%2Fsen0177-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kelnos%2Fsen0177-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kelnos%2Fsen0177-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kelnos%2Fsen0177-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kelnos","download_url":"https://codeload.github.com/kelnos/sen0177-rs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248986274,"owners_count":21194024,"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":["air-quality","air-quality-sensor","raspberry-pi","rust","sen0177","sensor"],"created_at":"2024-09-24T20:49:21.750Z","updated_at":"2025-04-15T00:44:38.933Z","avatar_url":"https://github.com/kelnos.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# sen0177\n\n[![crates.io][crates-shield]][crates-url]\n[![Documentation][docs-shield]][docs-url]\n[![Apache 2.0][license-shield]][license-url]\n[![Build Status][build-shield]][build-url]\n\n`sen0177` is a Rust library/crate that reads air quality data from the\nSEN0177 air quality sensor.\n\n## Prerequisites\n\n* You've connected the sensor to a UART or I2C bus on your device, and\n  your device has a crate implementing the applicable [`embedded_hal`]\n  traits.\n* For a UART-based sensor, you've configured the UART for 9600 baud, 8\n  data bits, no parity, 1 stop bit, and no flow control.\n\n## Setup\n\nInclude the following in your `Cargo.toml` file:\n\n```toml\n[dependencies]\nsen0177 = \"0.6\"\n```\n\nIf you are in a `no_std` environment, you may depend on this crate like so:\n\n```toml\n[dependencies]\nsen0177 = { version = \"0.6\", default-features = false }\n```\n\n## Usage\n\nSee the `examples/` directory.\n\nNote that `linux-embedded-hal` does not (as of this writing) have a\nrelease supporting the stable 1.x series of `embedded-hal`, so the Linux\nexample has to pull `linux-embedded-hal` from GitHub.\n\nNote that the serial device occasionally returns bad data.  If you\nreceive [`SensorError::BadMagic`] or [`SensorError::ChecksumMismatch`]\nfrom the [`AirQualitySensor::read`] call, a second try will usually succeed.\n\n## Gotchas\n\n### Raspberry Pi\n\nIf you're using this with a Raspberry Pi, note that by default the\nprimary UART is set up as a Linux serial console.  You will need\nto disable that (by editing `/boot/cmdline.txt`) before this will work.\nInstead of using a specifiy TTY device node, you should use\n`/dev/serial0`, which is a symlink to the proper device.\n\nAlternatively, you can use the second UART, but you'll need to load an\noverlay to assign it to GPIO pins.  See [UART\nconfiguration](https://www.raspberrypi.org/documentation/configuration/uart.md)\nand the [UART-related\noverlays](https://www.raspberrypi.org/documentation/configuration/uart.md)\nfor more information.\n\n[crates-shield]: https://img.shields.io/crates/v/sen0177.svg\n[crates-url]: https://crates.io/crates/sen0177\n[docs-shield]: https://docs.rs/sen0177/badge.svg\n[docs-url]: https://docs.rs/sen0177\n[license-shield]: https://img.shields.io/crates/l/sen0177.svg\n[license-url]: https://github.com/kelnos/sen0177-rs/blob/maim/LICENSE\n[build-shield]: https://img.shields.io/github/workflow/status/kelnos/sen0177-rs/CI\n[build-url]: https://github.com/kelnos/sen0177-rs/actions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkelnos%2Fsen0177-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkelnos%2Fsen0177-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkelnos%2Fsen0177-rs/lists"}