{"id":16914791,"url":"https://github.com/simonseo/garmin-otp-generator","last_synced_at":"2025-12-22T19:30:16.610Z","repository":{"id":71513871,"uuid":"128190878","full_name":"simonseo/garmin-otp-generator","owner":"simonseo","description":"Simple OTP Generator for Garmin watches in Monkey C","archived":false,"fork":false,"pushed_at":"2018-04-13T07:16:13.000Z","size":22,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-13T19:17:47.907Z","etag":null,"topics":["garmin-watch","otp"],"latest_commit_sha":null,"homepage":"","language":null,"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/simonseo.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-05T10:25:30.000Z","updated_at":"2018-04-13T07:16:14.000Z","dependencies_parsed_at":"2023-02-23T04:15:41.918Z","dependency_job_id":null,"html_url":"https://github.com/simonseo/garmin-otp-generator","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/simonseo%2Fgarmin-otp-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonseo%2Fgarmin-otp-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonseo%2Fgarmin-otp-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonseo%2Fgarmin-otp-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simonseo","download_url":"https://codeload.github.com/simonseo/garmin-otp-generator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239704169,"owners_count":19683398,"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":["garmin-watch","otp"],"created_at":"2024-10-13T19:15:36.682Z","updated_at":"2025-12-22T19:30:16.521Z","avatar_url":"https://github.com/simonseo.png","language":null,"funding_links":[],"categories":["Device Apps"],"sub_categories":["Older resources"],"readme":"# Garmin Watch OTP Generator widget\nSimple OTP Generator widget for Garmin watches\n\nUser should be able to\n1. Download the app from Garmin Express\n1. Input their secret code \u0026 current counter through Garmin Connect/App itself\n1. Use Garmin watch thereafter to generate OTPs\n1. Choose one of multiple accounts (able to generate OTPs for multiple several occasions)\n1. Developers should find it easy to port the same functionalities by changing a few resources\n\nUse case: Generate OTP\n1. Scroll through widget until otpGen widget shows up\n1. Enter the widget\n1. Scroll through list of accounts for which to generate OTP\n1. Select account\n1. New and unique OTP shows up\n1. Exit widget\n\nUse case: Add account on widget\n1. Scroll through widget until otpGen widget shows up\n1. Enter the widget\n1. Scroll to top/bottom of list of accounts to find the \"Add Account\" option\n1. Type in secret key and counter (This must be painful. Should be able to do the same on a computer/ConnectIQ program)\n\nTODO:\n- [ ] Learn Monkey C syntax\n- [ ] Create HMAC library / Find Crypto Monkey Barrel\n- [ ] Make data stucture/DB to save secret keys and counter that can safely store keys (only able to write, never read)\n- [ ] See if there is a HSM (hardware security module) on a Garmin watch\n- [ ] Make identifiable logo for widget face\n\n\n[Garmin Developer Reference](https://developer.garmin.com/connect-iq/programmers-guide/getting-started/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonseo%2Fgarmin-otp-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimonseo%2Fgarmin-otp-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonseo%2Fgarmin-otp-generator/lists"}