{"id":50405315,"url":"https://github.com/othmar52/table-soccer-speedometer","last_synced_at":"2026-05-31T01:04:38.962Z","repository":{"id":181397478,"uuid":"666283998","full_name":"othmar52/table-soccer-speedometer","owner":"othmar52","description":"Arduino based measuring and displaying ball speed on a table soccer","archived":false,"fork":false,"pushed_at":"2023-08-01T16:25:14.000Z","size":27,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2023-08-26T20:51:34.273Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/othmar52.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-07-14T06:23:19.000Z","updated_at":"2023-07-15T09:59:56.000Z","dependencies_parsed_at":"2023-07-15T10:51:39.741Z","dependency_job_id":null,"html_url":"https://github.com/othmar52/table-soccer-speedometer","commit_stats":null,"previous_names":["othmar52/table-soccer-speedometer"],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/othmar52/table-soccer-speedometer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othmar52%2Ftable-soccer-speedometer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othmar52%2Ftable-soccer-speedometer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othmar52%2Ftable-soccer-speedometer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othmar52%2Ftable-soccer-speedometer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/othmar52","download_url":"https://codeload.github.com/othmar52/table-soccer-speedometer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othmar52%2Ftable-soccer-speedometer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33715214,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-30T02:00:06.278Z","response_time":92,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2026-05-31T01:04:38.330Z","updated_at":"2026-05-31T01:04:38.952Z","avatar_url":"https://github.com/othmar52.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Table Soccer Speedometer\n```\n  ████████╗ █████╗ ██████╗ ██╗     ███████╗    ███████╗ ██████╗  ██████╗ ██████╗███████╗██████╗ \n  ╚══██╔══╝██╔══██╗██╔══██╗██║     ██╔════╝    ██╔════╝██╔═══██╗██╔════╝██╔════╝██╔════╝██╔══██╗\n     ██║   ███████║██████╔╝██║     █████╗      ███████╗██║   ██║██║     ██║     █████╗  ██████╔╝\n     ██║   ██╔══██║██╔══██╗██║     ██╔══╝      ╚════██║██║   ██║██║     ██║     ██╔══╝  ██╔══██╗\n     ██║   ██║  ██║██████╔╝███████╗███████╗    ███████║╚██████╔╝╚██████╗╚██████╗███████╗██║  ██║\n     ╚═╝   ╚═╝  ╚═╝╚═════╝ ╚══════╝╚══════╝    ╚══════╝ ╚═════╝  ╚═════╝ ╚═════╝╚══════╝╚═╝  ╚═╝\n\n   ███████╗██████╗ ███████╗███████╗██████╗  ██████╗ ███╗   ███╗███████╗████████╗███████╗██████╗  \n   ██╔════╝██╔══██╗██╔════╝██╔════╝██╔══██╗██╔═══██╗████╗ ████║██╔════╝╚══██╔══╝██╔════╝██╔══██╗ \n   ███████╗██████╔╝█████╗  █████╗  ██║  ██║██║   ██║██╔████╔██║█████╗     ██║   █████╗  ██████╔╝ \n   ╚════██║██╔═══╝ ██╔══╝  ██╔══╝  ██║  ██║██║   ██║██║╚██╔╝██║██╔══╝     ██║   ██╔══╝  ██╔══██╗ \n   ███████║██║     ███████╗███████╗██████╔╝╚██████╔╝██║ ╚═╝ ██║███████╗   ██║   ███████╗██║  ██║ \n   ╚══════╝╚═╝     ╚══════╝╚══════╝╚═════╝  ╚═════╝ ╚═╝     ╚═╝╚══════╝   ╚═╝   ╚══════╝╚═╝  ╚═╝ \n```\n\n\n\nThis Arduino (ESP32)-based project measures and displays the speed of a ball on a table soccer game. By using light barriers, it calculates the flight height of the ball and then determines its speed based on that information.\n\n## Features\n\n- Calculates ball speed based on flight height\n- Uses light barriers to measure the interruption time\n- Displays speed and flight height on an LCD screen\n\n## Assumptions\n\n- The ball is assumed to approach the goal surface at a 90-degree angle, disregarding different impact angles such as left, right, ascending, or descending.\n- Acceleration or deceleration of the ball during the measurement process is ignored.\n\n## Prototype Image\n\n![Prototype Image](https://github.com/othmar52/table-soccer-speedometer/assets/7056051/3d830197-5aec-4e9f-9297-603be98f3aab)\n\n## Getting Started\n\nTo build and run this project, follow these steps:\n\n1. Clone the repository: `git clone https://github.com/othmar52/table-soccer-speedometer.git`\n2. Connect the ESP32 Arduino board to the computer.\n3. Upload the sketch to the board using the Arduino IDE.\n4. Set up the light barriers and ensure they are properly aligned.\n5. Power on the system and observe the speed and flight height measurements on the LCD screen.\n\n## Libraries used\nhttps://github.com/MajicDesigns/MD_Parola  \nhttps://github.com/MajicDesigns/MD_MAX72XX  \n\n## Components Used\n\n- Arduino board ESP32\n- Light barriers (e.g., SFH 309)\n- Matrix display MAX7219\n- Jumper wires\n\n## wiring\n### ESP32-S Dev Kit C\nhttps://www.azdelivery.de/products/esp32-dev-kitc-v2-ai-thinker-soldered  \n```\n                                  ESP32\n                         ┌────────────────────┐\n                         │◎ 3V3          GND ◎│\n                         │◎ EN           G23 ●│────\u003e display MAX7219 MOSI [label:DIN]\n       sensor input \u003c────│● SVP/36       G22 ●│────\u003e sensor input\n       sensor input \u003c────│● SVN/39       TXD ◎│\n       sensor input \u003c────│● G34          RXD ◎│\n       sensor input \u003c────│● G35          G21 ●│────\u003e sensor input\n       sensor input \u003c────│● G32          GND ◎│\n       sensor input \u003c────│● G33          G19 ●│────\u003e sensor input\n       sensor input \u003c────│● G25          G18 ●│────\u003e display MAX7219 SCK [label:CLK]\n       sensor input \u003c────│● G26          G5  ●│────\u003e display MAX7219 CS [label:CS]\n       sensor input \u003c────│● G27          G17 ●│────\u003e sensor input\n       sensor input \u003c────│● G14          G16 ●│────\u003e button input\n       sensor input \u003c────│● G12          G4  ●│────\u003e button input\n                         │◎ GND          G0  ◎│\n       sensor input \u003c────│● G13          G2  ●│────\u003e button input\n                         │◎ SD2          G15 ●│────\u003e button input\n                         │◎ SD3          SD1 ◎│\n                         │◎ CMD          SD0 ◎│\n                         │◎ 5V           CLK ◎│\n                         └────────────────────┘\n\n```\n### Photo transistors SFH 309\nhttps://www.conrad.at/de/p/osram-sfh-309-fototransistor-3-mm-1080-nm-12-sfh-309-153870.html\n```\n                                     SHORT       LONG\n                                      LEG         LEG\n                                           ◎  ◎\n                ┌───────────┐            ◎      ◎\n     3V3 ●──────┤    670K   ├─────┬─────◎ SFH309 ◎────────● GND\n                └───────────┘     │      ◎      ◎\n                                  │        ◎  ◎\n                                  ●\n                              to ESP32\n                            digital pin\n```\n\n### circuit schematics\n![image](https://github.com/othmar52/table-soccer-speedometer/assets/7056051/a0d9bf40-dd66-452d-9ae6-8fcefb3113f2)\n\n\n\n## Troubleshooting\nhttps://aur.archlinux.org/ch34x-dkms-git.git  \n\n\n## Contributing\n\nContributions to this project are welcome! If you have any ideas, improvements, or bug fixes, please open an issue or submit a pull request.\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fothmar52%2Ftable-soccer-speedometer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fothmar52%2Ftable-soccer-speedometer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fothmar52%2Ftable-soccer-speedometer/lists"}