{"id":23693326,"url":"https://github.com/kylos101/prusa-connect-pi-camera","last_synced_at":"2026-04-30T13:32:10.997Z","repository":{"id":269626063,"uuid":"908013728","full_name":"kylos101/prusa-connect-pi-camera","owner":"kylos101","description":"A utility for uploading to Prusa Connect for Raspberry Pi using rpicam-still","archived":false,"fork":false,"pushed_at":"2025-01-03T21:44:29.000Z","size":94,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-23T04:53:31.427Z","etag":null,"topics":["go","golang","openapi","openapi3-1","prusa-connect"],"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/kylos101.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,"zenodo":null}},"created_at":"2024-12-24T21:45:13.000Z","updated_at":"2025-01-08T15:20:05.000Z","dependencies_parsed_at":"2025-05-22T10:45:12.085Z","dependency_job_id":"1c49b1d3-1a98-4799-a8f0-d18f408ea059","html_url":"https://github.com/kylos101/prusa-connect-pi-camera","commit_stats":null,"previous_names":["kylos101/prusa-connect-pi","kylos101/prusa-connect-pi-camera"],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/kylos101/prusa-connect-pi-camera","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kylos101%2Fprusa-connect-pi-camera","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kylos101%2Fprusa-connect-pi-camera/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kylos101%2Fprusa-connect-pi-camera/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kylos101%2Fprusa-connect-pi-camera/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kylos101","download_url":"https://codeload.github.com/kylos101/prusa-connect-pi-camera/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kylos101%2Fprusa-connect-pi-camera/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32466333,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["go","golang","openapi","openapi3-1","prusa-connect"],"created_at":"2024-12-30T03:51:29.848Z","updated_at":"2026-04-30T13:32:10.979Z","avatar_url":"https://github.com/kylos101.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# prusa-connect-pi-camera\n\n## dependencies\n\nA Raspberry Pi with a camera, where `rpicam-still -n -o test.jpg` just works.\n\n## Instructions\n\n1. Add a 3rd party camera in [Prusa Connect](https://connect.prusa3d.com/), copy the token, and set it as a `CONNECT_TOKEN` environment variable on your pi\n2. Download and run the binary (see below instructions to setup a service)\n3. Print something, pictures will be taken on an interval (5m is the default, set `CONNECT_INTERVAL` to override)\n4. Observe the first and last images via the Print History from Prusa Connect\n\n### Run the binary as a service\n\nSetup a service in `/etc/systemd/system/prusa-connect-pi-camera.service` like so:\n\n```\n[Unit]\nDescription=Prusa Connect Pi Camera Service\nAfter=network-online.target\nWants=network-online.target\n\n[Service]\nType=simple\nUser=your_user\nWorkingDirectory=/home/your_user\nExecStart=/usr/local/bin/prusa-connect-pi-camera\nRestart=on-failure\nRestartSec=10\nStandardOutput=syslog\nStandardError=syslog\nEnvironmentFile=/etc/prusa-connect-pi-camera/config.env\n\n[Install]\nWantedBy=multi-user.target\n```\n\nCreate a file containing environment variables in `/etc/prusa-connect-pi-camera/config.env`:\n\n```\nCONNECT_TOKEN=your_token\n#CONNECT_INTERVAL=1m\n#CONNECT_URL=some_other_url # Set to override the default url\n#ENABLE_PPROF=true # Enable pprof for debugging if needed\n#PPROF_PORT=6060 # Set port if you want other than 6060 for pprof\n#CONNECT_DEBUG=true # Set debug to troubleshoot API calls\n```\n\nSetup and inspect the service:\n\n```bash\nsudo systemctl daemon-reload\nsudo systemctl enable prusa-connect-pi-camera.service\nsudo systemctl start prusa-connect-pi-camera.service\nsudo systemctl status prusa-connect-pi-camera.service\nsudo journalctl -u prusa-connect-pi-camera.service\n```\n\n### Example\n\nHere you can see the image visible in Prusa Connect.\n\n![Sample from Prusa Connect](https://github.com/user-attachments/assets/62102ac6-7679-452c-83cd-a292ac4facc4 \"Sample from Prusa Connect\")\n\n## development\n\n### generate an API client using docker\n\n[Reference](https://openapi-generator.tech/docs/installation#docker)\n\n```bash\nsudo docker run --rm   -v ${PWD}:/local openapitools/openapi-generator-cli generate   -i /local/specs/prusaconnect.0.22.0.yaml   -g go   -o /local/pkg/openapi\n```\n\n\n### replacing the go.mod entry with the generated client\n\n```bash\ngo mod edit -replace github.com/kylos101/prusa-connect-pi-camera/v2/pkg/openapi=./pkg/openapi\n```\n\n### creating a manual release\n\nPrior to doing, you must have set a GITHUB_TOKEN environment variable.\n\n```bash\nsudo docker run --rm --privileged   -v $PWD:/go/src/github.com/kylos101/prusa-connect-pi-camera -v /var/run/docker.sock:/var/run/docker.sock -w /go/src/github.com/kylos101/prusa-connect-pi-camera -e GITHUB_TOKEN goreleaser/goreleaser release\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkylos101%2Fprusa-connect-pi-camera","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkylos101%2Fprusa-connect-pi-camera","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkylos101%2Fprusa-connect-pi-camera/lists"}