{"id":13802665,"url":"https://github.com/crdietrich/meerkat","last_synced_at":"2025-05-13T13:32:37.378Z","repository":{"id":73820321,"uuid":"66391939","full_name":"crdietrich/meerkat","owner":"crdietrich","description":"Data acquisition for Raspberry Pi and Micropython","archived":false,"fork":false,"pushed_at":"2023-03-19T07:27:02.000Z","size":6914,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":7,"default_branch":"main","last_synced_at":"2024-11-18T18:46:04.268Z","etag":null,"topics":["data-science","drivers","micropython","raspberrypi"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/crdietrich.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"docs/roadmap.md","authors":null}},"created_at":"2016-08-23T18:18:21.000Z","updated_at":"2024-06-12T14:52:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"c6484f72-aa53-4787-831d-63100bada4b3","html_url":"https://github.com/crdietrich/meerkat","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crdietrich%2Fmeerkat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crdietrich%2Fmeerkat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crdietrich%2Fmeerkat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crdietrich%2Fmeerkat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/crdietrich","download_url":"https://codeload.github.com/crdietrich/meerkat/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253950284,"owners_count":21989334,"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":["data-science","drivers","micropython","raspberrypi"],"created_at":"2024-08-04T00:01:49.830Z","updated_at":"2025-05-13T13:32:37.076Z","avatar_url":"https://github.com/crdietrich.png","language":"Python","funding_links":[],"categories":["Frameworks"],"sub_categories":["Utilities"],"readme":"# Meerkat - Data Acquisition for Raspberry Pi or MicroPython\n\n### Features  \n\n* Support for Raspberry Pi and MicroPython\n* Pure Python API to I2C devices\n* Data output to JSON or CSV with JSON header\n* Standardized timestamps string formats\n* Data timestamping and GPS tagging of data  \n* Metadata description of devices in JSON\n* Parser to convert CSV output to Pandas DataFrame\n* Object oriented class structure for REPL use\n\n* Base methods separated from device drivers for reusability and extension\n\n### Getting Started with Examples\n\nThe `examples` directory contains usage in Jupyter Notebooks and the `tests` folder contains scripts that will run on MicroPython or Linux.\n\n### Supported Sensors and Devices  \n| Device Type | Example Notebook | Driver File | I2C Address |\n| ----------- | ---------------- | ----------- | ----------- |\n| 1 Channel Relay        | [Sparkfun Qwiic Single Relay](/notebooks/relay_example.ipynb) | relay.py    | 0x18 |\n| 8 Channel Relay        | [Peter Jakab 8 Channel Relay](/notebooks/mcp23008_example.ipynb) | mcp23008.py | 0x20 |\n| DC \u0026 Stepper Motor     | [Grove Motor Driver v1.3](/notebooks/motor_example.ipynb) | motor.py   | 0x0F |\n| Ambient Temperature    | [MCP9808](/notebooks/mcp9808_example.ipynb)   | mcp9808.py | 0x18 |\n| DC Current \u0026 Power     | [INA219](/notebooks/ina219_example.ipynb)     | ina219.py  | 0x40 |\n| Acceleration \u0026 Gyro    | [MPU6050](/notebooks/mpu6050_example.ipynb)   | mpu6050.py | 0x68 |\n| Analog to Digital      | [ADS1115](/notebooks/ads_example.ipynb)   | ads.py     | 0x48 |\n| Digital to Analog      | [MCP4728](/notebooks/mcp4728_example.ipynb)  | mcp4728.py | 0x60 |\n| pH                     | [Atlas Sensors](/notebooks/atlas_pH.ipynb) | atlas.py   | 0x63 |\n| Conductivity           | [Atlas Sensors](/notebooks/atlas_conductivity.ipynb) | atlas.py   | 0x64 |\n| Temperature, Humidity, Pressure, VOC Gas | [Bosch BME680](/notebooks/bme_680_example.ipynb) | bme680.py  | 0x77 |\n| GPS                    | [PA1010D](/notebooks/pa1010d_example.ipynb)   | pa1010d.py | 0x10 |\n| RTC                    | [DS3221](/notebooks/ds3231_example.ipynb)    | ds3231.py  | 0x68 |\n\n### Supported Python Platforms\nPython 3, Jupyter and Pandas\n\n* Raspberry Pi Model 3\n* Raspberry Pi Model 4\n\nMicroPython\n\n* FiPy (should work on all PyCom boards)\n* OpenMV Cam M7 (tested with OV7725)\n\n### Contributing  \n\nContributions are welcome! Please read our [Code of Conduct](https://www.contributor-covenant.org/version/1/4/code-of-conduct/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrdietrich%2Fmeerkat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcrdietrich%2Fmeerkat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrdietrich%2Fmeerkat/lists"}