{"id":18688319,"url":"https://github.com/jrcichra/smartcar","last_synced_at":"2025-04-12T05:35:49.778Z","repository":{"id":36745373,"uuid":"196863223","full_name":"jrcichra/smartcar","owner":"jrcichra","description":"Transfer dashcam footage when you get home","archived":false,"fork":false,"pushed_at":"2023-02-21T04:00:48.000Z","size":13710,"stargazers_count":11,"open_issues_count":3,"forks_count":3,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-03-26T01:01:36.573Z","etag":null,"topics":["car","dashcam","docker-containers","framework","hacktoberfest","microservices","python3","smartcar"],"latest_commit_sha":null,"homepage":"","language":"Python","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/jrcichra.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-14T17:09:01.000Z","updated_at":"2023-05-21T04:12:29.000Z","dependencies_parsed_at":"2024-11-07T10:39:26.252Z","dependency_job_id":"94070ed5-0337-4f86-b900-00f93b580c67","html_url":"https://github.com/jrcichra/smartcar","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrcichra%2Fsmartcar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrcichra%2Fsmartcar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrcichra%2Fsmartcar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrcichra%2Fsmartcar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrcichra","download_url":"https://codeload.github.com/jrcichra/smartcar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248523986,"owners_count":21118606,"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":["car","dashcam","docker-containers","framework","hacktoberfest","microservices","python3","smartcar"],"created_at":"2024-11-07T10:36:17.650Z","updated_at":"2025-04-12T05:35:49.748Z","avatar_url":"https://github.com/jrcichra.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SmartCar ![Actions Status](https://github.com/jrcichra/smartcar/workflows/smartcar%20CI/CD/badge.svg) [![Docker Hub](https://img.shields.io/badge/docker-hub-blue.svg)](https://hub.docker.com/r/jrcichra/)\n\n## A collection of [karmen](https://github.com/jrcichra/karmen) containers to build a distributed car container network\n\n### Smartcar footage:\n![smartcar gif](./smartcar.gif)\n\n## Current Functionality\n+ Starts and stops recording with ignition\n+ Transfers footage to NAS when you come home\n+ Collects obdii sensor data locally on an interval\n\n# Current containers\n+ [Karmen](https://github.com/jrcichra/karmen) \n  + Controller for managing all other containers\n+ [Dashcam](./containers/dashcam)\n  + Interfaces with the Raspberry Pi Camera\n+ [GPIO](./containers/gpio)\n  + Interfaces with the GPIO pins (for ignition)\n+ [Transfer](./containers/transfer)\n  + Transfers footage to NAS when you get home\n+ [OBDII](./containers/obdii)\n  + Collect car sensor data (Speed, RPM, Throttle)\n  + Uses standard libarary: https://python-obd.readthedocs.io/en/latest/\n\nMore containers on the way (OBDII) - make new containers and make a pull request!\n\n\n## Getting started\nYou need some hardware and handywork to get this started in your car.\n1. Look at your car's wiring diagram. Find out where you can tap into 12V (w/ a buck converter and a fuse)\n2. Also see what wire corelates to your ignition\n3. (I used wires going to my car radio (12V \u0026 ignition on/off))\n4. You'll need a latch relay that is triggered with ignition on. This powers the Pi\n5. Once the Pi is on, smartcar will emit \"key_on\" by default, starting the recording process\n6. You'll need another relay system to determine when the ignition went off, but on a different pin, that does not turn off the Pi (remember, your Pi is on because of the former latch relay)\n\nNOTE: as of writing the pin numbers are hardcoded in [gpio.py](./containers/gpio/gpio.py)\n\n## Configuration\n### config.yml\nSee [my example RPi config](./test_config_rpi.yml). TLDR; [karmen](https://github.com/jrcichra/karmen) takes a declarative mapping of container events to container actions\n\n### docker-compose.yml\nSee [my example RPi compose](./docker-compose-test-rpi.yml). \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjrcichra%2Fsmartcar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjrcichra%2Fsmartcar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjrcichra%2Fsmartcar/lists"}