{"id":21178071,"url":"https://github.com/reynico/dtmfduino","last_synced_at":"2025-07-09T22:31:10.653Z","repository":{"id":6504790,"uuid":"7745355","full_name":"reynico/DTMFDuino","owner":"reynico","description":"DTMFDuino receives DTMF tones through a MT8870 integrated circuit who converts the analog audio of tones to a binary code understandable by the microcontroller. The microcontroller runs Arduino bootloader and converts the received codes to actions (turn on and off some outputs), also the system has the option to know the current state of each output.","archived":false,"fork":false,"pushed_at":"2013-01-31T03:38:48.000Z","size":442,"stargazers_count":17,"open_issues_count":0,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-05T08:02:56.888Z","etag":null,"topics":["analog-audio","arduino","automation","dtmf","dtmf-tones","microcontroller"],"latest_commit_sha":null,"homepage":null,"language":"Arduino","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/reynico.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}},"created_at":"2013-01-22T03:24:31.000Z","updated_at":"2024-12-09T03:44:37.000Z","dependencies_parsed_at":"2022-08-26T04:01:41.265Z","dependency_job_id":null,"html_url":"https://github.com/reynico/DTMFDuino","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/reynico/DTMFDuino","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reynico%2FDTMFDuino","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reynico%2FDTMFDuino/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reynico%2FDTMFDuino/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reynico%2FDTMFDuino/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/reynico","download_url":"https://codeload.github.com/reynico/DTMFDuino/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reynico%2FDTMFDuino/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264504591,"owners_count":23618825,"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":["analog-audio","arduino","automation","dtmf","dtmf-tones","microcontroller"],"created_at":"2024-11-20T17:19:38.297Z","updated_at":"2025-07-09T22:31:10.354Z","avatar_url":"https://github.com/reynico.png","language":"Arduino","funding_links":[],"categories":[],"sub_categories":[],"readme":"DTMFDuino receives DTMF tones through a MT8870 integrated circuit who converts the analog audio of tones to a binary code understandable by the microcontroller. The \nmicrocontroller runs Arduino bootloader and converts the received codes to actions (turn on and off some outputs), also the system has the option to know the current state \nof each output.\n\n\nFirst Release Candidate?\n------------------------\nI think this version can be easily a Release Candidate of the project. I've added a simple timer who counts seconds between the sent digits. If there is a timeout greater than 3 seconds, the array is reseted to 0 to do all the stuff again, this is very important because if you make a mistake when sending digits the system goes in a weird state because the counter was 'moved' one or more places. To avoid this, I reset the counter when the timeout reachs 3 secs.\n\nFeatures\n--------\n\nDTMFDuino allows to manage up to 10 digital-two-state outputs. The workflow of commands are:\nFirst char: *, to initialize parsing.\nSecond char: 0,1 or 2: 0 disables an output, 1 enables it and 2 checks the state (off/on)\nThird char: The number of the output.\n\nSo, to power up the second output you need to send: *12. To power off it, *02 and to check if it's on or off: *22.\n\nTo-Do\n-----\nThere is too much work to do, but this beta is also very functional.\n\nI need to remove some bugs in the Arduino code to improve the reliability of the system, as you can see, the commands to control the outputs are a three character code, so I'm using a simple counter to count the three characters before send the data to the controller. At this moment I need to add some particular cases when the code is misspelled or is erroneous.\n\nAt the electronics part I think is all good, but maybe it needs some improvements.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freynico%2Fdtmfduino","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Freynico%2Fdtmfduino","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freynico%2Fdtmfduino/lists"}