{"id":24620116,"url":"https://github.com/etherkit/EtherKeyerMini","last_synced_at":"2025-10-06T12:31:08.077Z","repository":{"id":217017710,"uuid":"742208193","full_name":"etherkit/EtherKeyerMini","owner":"etherkit","description":"A simple Morse Code keyer that does the basic functions you need","archived":false,"fork":false,"pushed_at":"2024-09-06T17:43:51.000Z","size":15689,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-07T19:40:20.882Z","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":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/etherkit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2024-01-12T01:15:32.000Z","updated_at":"2024-09-06T17:43:54.000Z","dependencies_parsed_at":"2024-01-14T05:59:15.366Z","dependency_job_id":"64b35bcd-08e2-44bd-98df-dbbb4d41f8f0","html_url":"https://github.com/etherkit/EtherKeyerMini","commit_stats":null,"previous_names":["etherkit/etherkeyermini"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etherkit%2FEtherKeyerMini","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etherkit%2FEtherKeyerMini/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etherkit%2FEtherKeyerMini/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etherkit%2FEtherKeyerMini/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/etherkit","download_url":"https://codeload.github.com/etherkit/EtherKeyerMini/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235524154,"owners_count":19003817,"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":[],"created_at":"2025-01-25T01:02:45.221Z","updated_at":"2025-10-06T12:31:08.065Z","avatar_url":"https://github.com/etherkit.png","language":"C++","readme":"# EtherKeyer Mini\n\nA simple keyer that does the basic functions that you need.\n\n![](PCB/EtherKeyerMini.png)\n\n## Requirements\n\nIn order to program the message memories, change parameters other than the keyer speed, and update the firmware, you'll need a serial terminal that can connect to the 5 V TTL UART on EtherKeyer Mini via the 3.5 mm TRRS paddle jack. The Etherkit UART Adapter board has a USB-C connection for your PC and the requisite 3.5 mm TRRS jack, so that all that you need to connect to EtherKeyer Mini is a 3.5 mm TRRS cable.\n\nA CR2032 lithium coin cell is required for powering EtherKeyer Mini.\n\n## Functions\n\n### Speed Potentiometer\n\nThe knob control on the right side of the front of EtherKeyer Mini controls the keyer speed, from a minimum of 5 WPM to a maximum of 40 WPM. This control can be adjusted at any time and responds immediately.\n\n### Pushbuttons\n\n#### Short Press\n\nCancel any message playback by pressing any button or paddle.\n\n- 1 - Play Message Memory 1\n- 2 - Play Message Memory 2\n- 3 - Play Message Memory 3\n\n#### Long Press\n\n- 1 - Tune Mode (press any key to exit)\n- 2 - Toggle Internal Sidetone\n- 3 - Enter/Exit UART Mode\n\n### UART Mode\n\nThe format for interacting with EtherKeyer Mini via the UART is very simple. In order to place EtherKeyer Mini into UART mode, press and hold button 3 for at least one second. If your serial terminal is open when you do this, you'll get a greeting from EtherKeyer Mini to let you know it is ready for commands.\n\nEach message memory has a maximum size of 40 characters.\n\nExit UART mode by pressing and holding button 3 again for at least one second, or issue the ```X:``` command in the serial terminal.\n\n#### Serial Terminal Parameters\n\n19200 baud, send New Line only, no flow control.\n\n#### Query\n\n- ```W?``` - Keyer speed\n- ```1?``` - Message memory 1\n- ```2?``` - Message memory 2\n- ```3?``` - Message memory 3\n\n#### Parameter Set\n\n- ```1:\u003cmessage\u003e``` - Message memory 1\n- ```2:\u003cmessage\u003e``` - Message memory 2\n- ```3:\u003cmessage\u003e``` - Message memory 3\n- ```X:``` - Exit UART Mode\n- ```R:``` - Reverse Paddle Terminals\n- ```N:``` - Normal Paddle Terminals\n- ```A:``` - Set Iambic A Mode\n- ```B:``` - Set Iambic B Mode\n- ```S:``` - Sidetone On\n- ```O:``` - Sidetone Off\n\n## Firmware Updates\n\n__Please see the Requirements section above for the hardware necessary for the UART adapter.__\n\nEtherKeyer Mini uses an ATtiny3226 microcontroller with the Optiboot bootloader pre-installed. You can use load new firmware onto EtherKeyer Mini via a UART adapter connected to the paddle jack (the easiest way to do so is using the Etherkit UART Adapter board with a 3.5 mm TRRS cable). You can also use a standard USB-UART adapter connected to jack J3 to program the ATtiny3226 via UPDI protocol.\n\nProgramming via the paddle jack is accomplished using the Arduino IDE using the [megaTinyCore](https://github.com/SpenceKonde/megaTinyCore) board support package. Use [this link](https://github.com/SpenceKonde/megaTinyCore/blob/master/Installation.md) for instructions on how to add this board support package to your Arduino IDE. Once you have added the board support package, connect your UART adapter to your PC. In Arduino IDE, select the \"ATtiny3226/1626/826/426 w/Optiboot\" as your board and port corresponding to your programming UART adapter. Make sure to set all of the specific board settings in the Tools menu of Arduino IDE to those shown below:\n\n![](docs/megaTinyCoreSettings.png)\n\nOnce you have all of these settings correct, you can load the EtherKeyerMini.ino sketch into the Arduino IDE and then use the Sketch \u003e Upload menu command or use the upload button on the toolbar.\n","funding_links":[],"categories":["C++"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetherkit%2FEtherKeyerMini","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fetherkit%2FEtherKeyerMini","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetherkit%2FEtherKeyerMini/lists"}