{"id":17586991,"url":"https://github.com/lovyan03/m5stack_onscreenkeyboard","last_synced_at":"2025-07-19T22:35:39.478Z","repository":{"id":110701951,"uuid":"164316726","full_name":"lovyan03/M5Stack_OnScreenKeyboard","owner":"lovyan03","description":"M5Stack OnScreenKeyboard オンスクリーン キーボード ","archived":false,"fork":false,"pushed_at":"2019-12-30T01:56:35.000Z","size":73,"stargazers_count":47,"open_issues_count":1,"forks_count":10,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-29T15:54:20.673Z","etag":null,"topics":["m5stack","onscreen-keyboard"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lovyan03.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,"publiccode":null,"codemeta":null}},"created_at":"2019-01-06T14:50:03.000Z","updated_at":"2025-04-10T12:35:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"92d24cee-946f-4221-8152-174f5e6b337c","html_url":"https://github.com/lovyan03/M5Stack_OnScreenKeyboard","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/lovyan03/M5Stack_OnScreenKeyboard","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lovyan03%2FM5Stack_OnScreenKeyboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lovyan03%2FM5Stack_OnScreenKeyboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lovyan03%2FM5Stack_OnScreenKeyboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lovyan03%2FM5Stack_OnScreenKeyboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lovyan03","download_url":"https://codeload.github.com/lovyan03/M5Stack_OnScreenKeyboard/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lovyan03%2FM5Stack_OnScreenKeyboard/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266032697,"owners_count":23866984,"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":["m5stack","onscreen-keyboard"],"created_at":"2024-10-22T03:43:05.213Z","updated_at":"2025-07-19T22:35:39.420Z","avatar_url":"https://github.com/lovyan03.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"M5Stack OnScreenKeyboard library. (for ASCII code)\n===\n\nAdd Keyboard for your M5Stack project.\n\nあなたのM5Stackプロジェクトにキーボードを！  \n\n## Description\n\nOnScreenKeyboard which can be operated with 3 button.  \n\nM5Stack本体の３ボタンで操作できるオンスクリーンキーボード。  \n簡単な文字入力にお使いいただけます。  \n\nSupport FACES Keyboard and GameBoy and Encoder unit.  \nSupport PLUS Encoder unit.  \nSupport JoyStick unit.  \nSupport CardKB unit.  \nSupport morse code input.  \n\nM5Stackの各種ユニットでの操作にも対応。\nA+C 2ボタン同時押しでモールス入力モードに切替可能。  \n\n![image](https://user-images.githubusercontent.com/42724151/52710266-45ab4280-2fd2-11e9-9897-f0b001cb0edf.png)  \n\nCommon operation:  \n `BtnA click` : キーボードパネル切替  Keyboard panel switches.  \n `BtnA and B hold and BtnC click` : 全消去  Clear all strings.  \n `BtnA hold and BtnC click` : モールス入力／フォーカス入力 モード切替  Switch between Morse code mode and focus selection mode.  \n  \nin focus mode:  \n `BtnA hold` :  左(上)に移動  The focus moves to the left (or up).  \n `BtnB click(or hold)` : 選択決定、行/列選択切替  The focused target is entered. Then switch the row/column selection.  \n `BtnC click(or hold)` : 右(下)に移動  The focus moves to the right (or down).  \n `BtnA hold and BtnB click` : 入力完了(または列選択に戻る)  Finish keyboard input. (or back to column selection.)  \n  \n![image](https://user-images.githubusercontent.com/42724151/51086670-c0dbc780-178c-11e9-8c97-bc415042c09c.png)  \nin morse code mode:  \n `BtnB click` : モールス短音入力 Input a short pulse.  \n `BtnC click` : モールス長音入力 Input a long pulse.  \n `Release BtnB and C for 700 msec` : 入力確定  Fix input.  \n `BtnA hold and BtnB click` : 入力完了  Finish keyboard input.  \n\n\n Morse code is GBoard morse compliant.  \n[GBoard morse code list](https://gist.github.com/natevw/0fce6b56c606632f8ee780b5d493f94e)\n\n## Usage\n\n```\n#include \u003cM5OnScreenKeyboard.h\u003e\n\nM5OnScreenKeyboard m5osk;\n\n  m5osk.useFACES = true;       // FACES unit support.\n  m5osk.useCardKB = true;      // CARDKB unit support.\n  m5osk.useJoyStick = true;    // JoyStick unit support.\n  m5osk.usePLUSEncoder = true; // PLUS Encoder unit support.\n  m5osk.useFACESEncoder = true;// FACES Encoder unit support.\n  // m5osk.swapBtnBC = true;   // BtnB/BtnC KeyAssign swap.\n\n  m5osk.setup();\n//m5osk.setup(\"Hello World.\"); // You can also set default text\n\n  while (m5osk.loop()) {\n    // You can write your code here.\n    delay(1);\n  }\n  String text = m5osk.getString();\n  m5osk.close();\n```\n\n## Licence\n\n[MIT](https://github.com/lovyan03/M5Stack_OnScreenKeyboard/blob/master/LICENSE)  \n\n## Author\n\n[lovyan03](https://twitter.com/lovyan03)  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flovyan03%2Fm5stack_onscreenkeyboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flovyan03%2Fm5stack_onscreenkeyboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flovyan03%2Fm5stack_onscreenkeyboard/lists"}