{"id":16964191,"url":"https://github.com/martinwoodward/pumpkinpi","last_synced_at":"2025-03-22T14:31:00.848Z","repository":{"id":141776320,"uuid":"153767287","full_name":"martinwoodward/PumpkinPi","owner":"martinwoodward","description":"Spooky build status indicator","archived":false,"fork":false,"pushed_at":"2021-10-23T18:39:46.000Z","size":13095,"stargazers_count":76,"open_issues_count":0,"forks_count":10,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-15T15:48:12.210Z","etag":null,"topics":["hacktoberfest","raspberry-pi"],"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/martinwoodward.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}},"created_at":"2018-10-19T10:38:27.000Z","updated_at":"2025-01-16T22:16:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"1061e354-8191-4637-9e0f-340ce1eba65e","html_url":"https://github.com/martinwoodward/PumpkinPi","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/martinwoodward%2FPumpkinPi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/martinwoodward%2FPumpkinPi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/martinwoodward%2FPumpkinPi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/martinwoodward%2FPumpkinPi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/martinwoodward","download_url":"https://codeload.github.com/martinwoodward/PumpkinPi/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244971763,"owners_count":20540850,"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":["hacktoberfest","raspberry-pi"],"created_at":"2024-10-13T23:27:31.194Z","updated_at":"2025-03-22T14:31:00.837Z","avatar_url":"https://github.com/martinwoodward.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PumpkinPi\nSpooky build status indicator.\n\n\u003cimg src=\"images/pumpkinpi-title.png\" alt=\"Pumpkin Pi\" width=\"640\" border=\"0\" /\u003e\n\n## Hardware Requirements:\nThis project makes use of the following:\n - Pumpkin - Carve a real one or you can always [3D print one](#3d-printed-pumpkin)\n - Raspberry Pi Zero WH  ([UK](https://amzn.to/33rmXEc), [US](https://amzn.to/3lcQLul))\n - Pimoroni Unicorn pHat  ([UK](https://amzn.to/3l8rPnR), [US](https://amzn.to/30wEWaG)). Note discountinued now so you might want to try the [Unicorn HAT Mini instead](https://shop.pimoroni.com/products/unicorn-hat-mini)\n - Micro SD Card  ([UK](https://amzn.to/2SoRagP), [US](https://amzn.to/2GeMWWT))\n - USB power - I used the official Raspberry Pi Charger ([UK](https://amzn.to/33qvreN), [US](https://amzn.to/36yKkh4)) but you can also power with a USB battery pack.\n\n ### 3d Printed Pumpkin\n For the [3d printed pumpkin case](stl/), you will need:\n  - Glow in the Dark PLA Filament for body  ([UK](https://amzn.to/2SmQzwj), [US]())\n  - Green PLA Filament for top  ([UK](https://amzn.to/2GeMlo7), [US](https://amzn.to/30vuAHX))\n  - Adafruit Panel Mount Extension USB Cable - Micro B Male to Micro B Female [ADA3258] ([UK](https://amzn.to/3irYgf9), [US](https://amzn.to/34pR51V))\n  - 4 x M2.5 threaded brass inserts ([UK](https://amzn.to/3ixudCK), [US](https://amzn.to/33rnYw0))\n  - 4 x M2.5 male PCB standoffs \u0026 screws - keep a kit of these handy if you don't have some. ([UK](https://amzn.to/3cYGkYE), [US](https://amzn.to/3l8VDk8))\n\nWhen ordering online, while Amazon ([US](https://amzn.to/2CUGild)) and Amazon ([UK](https://amzn.to/2PbHDtz)) are always handy places (especially if you are a Prime member) I also highly recommend [AdaFruit](https://www.adafruit.com/) for electronics purchases in the US and [PiHut](https://thepihut.com/) in the UK. They basically should just park a truck at my house and take all my money.\n\n\u003cimg src=\"images/pumpkin-parts.jpg\" alt=\"Pumpkin Pi\" width=\"640\" border=\"0\" /\u003e\n\n## Getting Started\n\nFormat the micro SD Card and [install Raspberry Pi OS Lite](https://www.raspberrypi.org/downloads/raspberry-pi-os/). If installing onto a Pi Zero you might not have the keyboard and HDMI adapters lying around so you probably want to do a [headless install](https://www.raspberrypi.org/documentation/configuration/wireless/headless.md), configuring SSH and WiFi by dropping an `ssh` file and a `wpa_supplicant.conf` file onto the root of the SD card after copying over the Raspbian files.\n\nYou'll need to install the [Unicorn HAT](https://github.com/pimoroni/unicorn-hat) software but they have a cool one-line installer that takes care of all the dependencies including Python and Git.\n\n``\\curl -sS https://get.pimoroni.com/unicornhat | bash``\n\nIn addition, we'll be using the ``requests`` module in python so after installing the Unicorn HAT software, install the ``requests`` module with the following command\n\n``sudo pip install requests``\n\nNext you want to clone this git repo. I have it at the root of the standard ``pi`` user\n\n``git clone https://github.com/martinwoodward/PumpkinPi.git``\n\nYou need to modify the settings to point at your build badge. First of all copy the sample settings provided in the repo:\n\n``cp ~/PumpkinPi/src/local_settings.sample ~/PumpkinPi/src/local_settings.py``\n\nThen edit the ``BADGE_LINK`` variable and point at the URL of your Build badge.\n\n```python\n# Build Badge for the build you want to monitor\nBADGE_LINK = \"https://github.com/martinwoodward/calculator/workflows/CI/badge.svg?branch=main\"\n# How often to check (in seconds). Remember - be nice to the server. Once every 5 minutes is plenty.\nREFRESH_INTERVAL = 300\n```\n\nFinally you can run the script as root\n\n```\nsudo python ~/PumpkinPi/src/pumpkinpi.py \u0026\n```\n\nOnce you are happy everything is running how you want, don't forget you can run the script at boot time. The easiest way to do this is to use crontab. See this [cool video from Estefannie over on the Raspberry Pi blog](https://www.raspberrypi.org/blog/how-to-run-a-script-at-start-up-on-a-raspberry-pi-using-crontab/) to learn more.  But basically do ``sudo crontab -e`` then add the following:\n\n```\n@reboot /bin/sleep 10 ; /usr/bin/python /home/pi/PumpkinPi/src/pumpkinpi.py \u0026\n\n```\n\nNote that we are pausing for 10 seconds before running the python script. This is to allow the network to come up. We could make the python script more resilient to network outages and/or start up the script using [systemd](https://www.raspberrypi.org/documentation/linux/usage/systemd.md).\n\n\u003cimg src=\"images/pumpkin-orange.gif\" alt=\"Pumpkin Pi\" width=\"640\" border=\"0\" /\u003e\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmartinwoodward%2Fpumpkinpi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmartinwoodward%2Fpumpkinpi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmartinwoodward%2Fpumpkinpi/lists"}