{"id":19542455,"url":"https://github.com/dr-mod/tiny-system-monitor","last_synced_at":"2025-04-09T21:18:34.894Z","repository":{"id":56709228,"uuid":"523756232","full_name":"dr-mod/tiny-system-monitor","owner":"dr-mod","description":"External system performance monitor","archived":false,"fork":false,"pushed_at":"2022-08-31T14:56:05.000Z","size":434,"stargazers_count":288,"open_issues_count":2,"forks_count":11,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-04-09T21:18:29.540Z","etag":null,"topics":["activity-monitoring","system-performance"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dr-mod.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}},"created_at":"2022-08-11T14:33:22.000Z","updated_at":"2025-03-13T18:37:44.000Z","dependencies_parsed_at":"2022-08-15T23:50:29.291Z","dependency_job_id":null,"html_url":"https://github.com/dr-mod/tiny-system-monitor","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/dr-mod%2Ftiny-system-monitor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dr-mod%2Ftiny-system-monitor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dr-mod%2Ftiny-system-monitor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dr-mod%2Ftiny-system-monitor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dr-mod","download_url":"https://codeload.github.com/dr-mod/tiny-system-monitor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248111973,"owners_count":21049578,"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":["activity-monitoring","system-performance"],"created_at":"2024-11-11T03:14:45.043Z","updated_at":"2025-04-09T21:18:34.872Z","avatar_url":"https://github.com/dr-mod.png","language":"Python","funding_links":["https://www.buymeacoffee.com/drmod"],"categories":[],"sub_categories":[],"readme":"# Tiny System Monitor\n\nAn external system monitor for your computer.\n\n![](docs/screenshot.jpg)\n[Demo video](https://twitter.com/dr2mod/status/1557773285022203904)\n\n## Hardware\n\n### Bill of materials\n\n* Raspberry Pi Pico\n* Pico Display Pack\n* Optional: LED + Resistor\n\n### Print\n\nThe 3d model can be downloaded from my Printables [here](https://www.printables.com/social/306904-dmytro-panin/models).\n\n## Software\n\nThe software is written in CircuitPython and tested with the version 7.3.1\n\n### Installing CircuitPython\n\n1. Download the CircuitPython UF2 from the official website [here](https://circuitpython.org/board/raspberry_pi_pico/).\n2. Push and hold the BOOTSEL button and plug your Pico into the USB port of your computer. Release the BOOTSEL button\n   after your microcontroller is connected.\n3. It will mount as a Mass Storage Device called RPI-RP2.\n4. Drag and drop the CircuitPython UF2 file onto the RPI-RP2 volume.\n\n### Software installation\n1. Clone the git repository\n2. Copy the git repository to the Raspberry Pi Pico\n\n\n```shell\ncd ~\ngit clone https://github.com/dr-mod/tiny-system-monitor.git\ncp tiny-system-monitor/src/pico/* \u003cCIRCUITPY DRIVE\u003e\n```\n\n### The host part\n\nFor the system to work it requires a process to be running in your system collecting the necessary data and sending it to\nyour _Tiny System Monitor_. It makes use of the psutil library that's mostly cross-platform, but you might want to tweak the configuration.\n\n```shell\npip3 install psutil\n```\n\nTo get the data about your GPU load and CPU Temperature, you need to create your own implementation as to how to fetch it. I've provided with my example for GPU. \n\nMake sure to change the port your _Tiny System Monitor_ is connected to before running the host, otherwise no data will be updated on the device.\n```shell\npython3 tiny-system-monitor/src/host/run.py\n```\n\n### Support the project\n\nIf you would like to support what I do and keep me caffeinated, you can do it here:\n\n[![\"Buy Me A Coffee\"](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/drmod)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdr-mod%2Ftiny-system-monitor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdr-mod%2Ftiny-system-monitor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdr-mod%2Ftiny-system-monitor/lists"}