{"id":21059377,"url":"https://github.com/a-dubs/smart-alarm-clock-mat","last_synced_at":"2026-05-05T08:36:35.694Z","repository":{"id":180564889,"uuid":"445275281","full_name":"a-dubs/smart-alarm-clock-mat","owner":"a-dubs","description":"Alarm clock on smartphone that is turned off only by standing on a pressure sensitive mat for 10 minutes","archived":false,"fork":false,"pushed_at":"2024-04-16T00:05:30.000Z","size":61,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-20T19:51:55.413Z","etag":null,"topics":["expressjs","nodejs","raspberry-pi","rest-api"],"latest_commit_sha":null,"homepage":"","language":null,"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/a-dubs.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}},"created_at":"2022-01-06T18:43:00.000Z","updated_at":"2022-12-03T17:48:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"3701678f-51e8-4656-a987-7c2ff62a19a0","html_url":"https://github.com/a-dubs/smart-alarm-clock-mat","commit_stats":null,"previous_names":["a-dubs/smart-alarm-clock-mat"],"tags_count":0,"template":false,"template_full_name":"a-dubs/github-project-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a-dubs%2Fsmart-alarm-clock-mat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a-dubs%2Fsmart-alarm-clock-mat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a-dubs%2Fsmart-alarm-clock-mat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a-dubs%2Fsmart-alarm-clock-mat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/a-dubs","download_url":"https://codeload.github.com/a-dubs/smart-alarm-clock-mat/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243505953,"owners_count":20301617,"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":["expressjs","nodejs","raspberry-pi","rest-api"],"created_at":"2024-11-19T17:10:46.033Z","updated_at":"2026-05-05T08:36:30.670Z","avatar_url":"https://github.com/a-dubs.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Smart Mat Alarm Clock \n\nAlarm clock on smartphone that is turned off only by standing on a pressure sensitive mat for 10 minutes\n\n\u003cbr\u003e\n\n## Summary\n - This project had 3 different pieces\n   - The smart mat  \n     - Pressure sensitive mat that acts as button of sorts - when stepped on, its resistance drops to nearly zero and allows current to flow through.\n     - Raspberry Pi Zero W that runs a python script which sends HTTP requests to the API hosted on my server\n       - Sends periodic \"heartbeat\" POST request every 30 seconds\n       - Sends POST request whenever the state of that mat changes\n       - Has ghosting/accidental step off prevention - mat's state must change for \u003e5 seconds before POST request gets send to API \n   - The alarm clock software and automation on my phone  \n     - \"Wake me up!\" Android app provides the alarms that are monitored and triggered by \"Tasker\"  \n     - \"Tasker\" Android app monitors and triggers alarms provided \"Wake me up!\"   \n     - The Tasker app is where all of the logic lives:\n         - Request current state of the mat (stood on / not stood on) every minute\n         - If mat is not being stood on, retrigger the alarm and reset the minutes stood on counter  \n         - If 10 consecutive iterations (each 1 minute long) occur where the mat is stood on, then disable the alarm\n   - The public API hosted on my server \n     - Node.Js with Express \n     - Receives the mat's current state and filters out false positives\n\n\u003cbr\u003e\n\n\u003c!-- ## Image Gallery\n\n### Placeholder Image (This is the image's caption/label)\n![Please end my suffering... (This is the image's alt text)](/image_gallery/Please%20replace%20me%20I%20am%20begging%20you.jpg)\n\u003cbr\u003e --\u003e\n\n\n\u003cbr\u003e\n\n## Project Metadata\n\n**Project Status** : Archived  \n**Project Progress** : Completed  \n**Project dates** : Dec '21 - March '22  \n\u003c!-- portfolio.alecwarren.com position priority = 7 (-1 is lowest, 0 is default, 10 is highest) --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fa-dubs%2Fsmart-alarm-clock-mat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fa-dubs%2Fsmart-alarm-clock-mat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fa-dubs%2Fsmart-alarm-clock-mat/lists"}