{"id":16219963,"url":"https://github.com/sago35/tinygobook","last_synced_at":"2025-06-23T13:35:50.363Z","repository":{"id":64953238,"uuid":"523937890","full_name":"sago35/tinygobook","owner":"sago35","description":"Support site for book (基礎から学ぶ TinyGoの組込み開発) released in Japan","archived":false,"fork":false,"pushed_at":"2025-05-03T00:54:48.000Z","size":589,"stargazers_count":16,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-21T16:23:21.768Z","etag":null,"topics":["embedded","go","tinygo","wioterminal"],"latest_commit_sha":null,"homepage":"https://www.c-r.com/book/detail/1477","language":"Go","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/sago35.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":"2022-08-12T03:01:38.000Z","updated_at":"2025-05-03T00:54:52.000Z","dependencies_parsed_at":"2024-03-12T14:20:39.960Z","dependency_job_id":null,"html_url":"https://github.com/sago35/tinygobook","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sago35/tinygobook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sago35%2Ftinygobook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sago35%2Ftinygobook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sago35%2Ftinygobook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sago35%2Ftinygobook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sago35","download_url":"https://codeload.github.com/sago35/tinygobook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sago35%2Ftinygobook/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261487435,"owners_count":23166085,"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":["embedded","go","tinygo","wioterminal"],"created_at":"2024-10-10T11:56:40.648Z","updated_at":"2025-06-23T13:35:45.350Z","avatar_url":"https://github.com/sago35.png","language":"Go","readme":"# 基礎から学ぶ TinyGoの組込み開発\n\n高砂正哲が執筆した「基礎から学ぶ TinyGoの組込み開発」 (C\u0026R研究所) のサポートサイトです。\n質問や誤記などがある場合は本ページの Issue もしくは Twitter で受け付けています。\n\n## 書籍情報\n\n* C\u0026R (紙) : https://www.c-r.com/book/detail/1477\n* Amazon (紙、Kindle) : https://www.amazon.co.jp/dp/4863544006\n* 本の森 (紙、PDF、EPUB) : https://book.mynavi.jp/manatee/c-r/books/detail/id=134168\n\n![](./img/tinygobook.png)\n\n各節まで含めた目次はこちら。\n\n* [目次](./toc.md)\n\n## Twitter\n\nTwitter に投稿する時の hashtag は `#tinygo` と `#tinygobook` を使ってください。\n\n* Twitter : [tinygo OR #tinygo OR @tinygolang OR #tinygobook](https://twitter.com/search?q=tinygo%20OR%20%23tinygo%20OR%20%40tinygolang%20OR%20%23tinygobook\u0026src=typed_query\u0026f=live)\n\n## よくある質問と回答\n\n### tinygo flash に失敗します\n\n2 章 P.31 に従い (リセット x 2 で) ブートローダーに入れてから `tinygo flash` してみてください。\nそれでも改善しない場合は、 `tinygo build -o out.uf2` のようにして uf2 ファイルを作ってから手動で書き込みしてください。\n\n## 正誤表\n\n誤記等を見つけた場合は、 Issue もしくは Twitter で教えてください。\n\n\n* [正誤表](./correct.md)\n\n### 注意\n\nネットワーク部 (RTL8720DN) のファームウェアアップデート方法の修正があるため必ず確認してください。\n具体的には、\n\n```\n$ git clone https://github.com/Seeed-Studio/ambd_flash_tool\n```\n\nではなく\n\n```\n$ git clone https://github.com/Seeed-Studio/ambd_flash_tool --branch JP\n```\n\nを使うようにしてください。\n\n### TinyGo と Go の組み合わせ\n\n| TinyGo | Go | 備考 |\n| --- | --- | --- |\n| 0.31.0 | 1.21 - 1.22 | net package が大幅更新 (※2) |\n| 0.28.1 | 1.19 - 1.20 | Wio Terminal の動作について一部問題あり(※1) |\n| 0.27.0 | 1.19 - 1.20 | |\n| 0.26.0 | 1.18 - 1.19 | 書籍執筆時 Version (脱稿直前のリリース) |\n| 0.25.0 | 1.18 - 1.19 | 書籍執筆時 Version |\n\n※1  \nTinyGo 0.28.1 で Wio Terminal に搭載されている ATSAMD51 マイコンの Cache を有効化する変更が入り、 I2C などが一部動作不良となるケースがあります。\n本件については [正誤表](./correct.md) に記載しています。\n\n※2  \nTinyGo 0.31.0 で net や net/http package 関連が大幅更新されました。\nこの辺りについては後日まとめる予定ですが、さしあたりは [正誤表](./correct.md) を確認してください。\n\n\n## Demos\n\nデモアプリケーションはこちら。\nWio Terminal + TinyGo 0.26 で動作を確認しています。\n\n### Wio Terminal Tracker\n\nLIS3DH から得た情報を用いて、パソコン上の画像の傾きを制御する Demo です。\n\n![](./img/tracker.png)\n\n* [./wioterminal/tracker/](./wioterminal/tracker/)\n\n```\n$ tinygo flash --target wioterminal --size short ./wioterminal/tracker/\n   code    data     bss |   flash     ram\n  54496    1500    6260 |   55996    7760\n```\n\n注意) `-opt z` 以外でビルドすると、I2Cデータの受け取りに失敗します  \n\n### Gopher福笑い\n\n十字キーなどを使って目と口の位置を自由に動かすことができる Demo です。\n面白い顔を作って Twitter に投稿してください。\n\n![](./img/fukuwarai.png)\n\n* [./wioterminal/fukuwarai](./wioterminal/fukuwarai/)\n\n```shell\n$ tinygo flash --target wioterminal --size short --opt 2 ./wioterminal/fukuwarai/\n   code    data     bss |   flash     ram\n 447876     356  180480 |  448232  180836\n```\n\n注意) 実行速度を高速化するため `-opt 2` でビルドすることを推奨します  \n\n## Chapter 7 ネットワークに接続する\n\nサポートサイトにて、 chap07 のコードを公開しています。\n以下のようにして chap07 ディレクトリに移動してから書き込むことができます。\nssid や password が必要となるコードについては P.235 を参考に設定してください。\nTinyGo 0.26 以降は `tinygo flash` 時に `--monitor` を指定することが出来ます。\n多くの場合、 minicom や Tera Term を使わなくてもうまくやり取りできるはずです。\n\n```\n$ cd chap07/\n\n$ tinygo flash --target wioterminal --size short --monitor ./update_test/\n   code    data     bss |   flash     ram\n  57452    1528    9004 |   58980   10532\nConnected to COM5. Press Ctrl-C to exit.\nRTL8270DN Firmware Version: 2.1.2\n```\n\n\n### 各種リンク\n\n* https://tinygo.org/\n    * https://tinygo.org/docs/reference/microcontrollers/wioterminal/\n* Seeed\n    * https://wiki.seeedstudio.com/Wio-Terminal-Getting-Started/ (TinyGo ではなく Arduino 情報)\n    * https://wiki.seeedstudio.com/jp/Wio-Terminal-Getting-Started/ (TinyGo ではなく Arduino 情報)\n* [sago35の日記 - Hatena Blog](https://sago35.hatenablog.com/)\n    * [TinyGo 0.26 で遊べるマイコンボード一覧 - Hatena Blog](https://sago35.hatenablog.com/entry/2022/10/05/083000)\n* [github.com/sago35/tinygo-workshop](https://github.com/sago35/tinygo-workshop)\n    * Go Conference 2021 Autumn 内の Wio Terminal を使った TinyGo ハンズオン用の記事\n    * ハンズオン時の動画: https://gocon.jp/2021autumn/sessions/workshop_a/\n* [Wio Terminal で TinyGo プログラミングを始めよう - Qiita](https://qiita.com/sago35/items/92b22e8cbbf99d0cd3ef)\n* Twitter : [tinygo OR #tinygo OR @tinygolang OR #tinygobook](https://twitter.com/search?q=tinygo%20OR%20%23tinygo%20OR%20%40tinygolang%20OR%20%23tinygobook\u0026src=typed_query\u0026f=live)\n\n## 著者紹介\n\n* 高砂正哲\n    * GitHub: https://github.com/sago35\n    * Twitter: [@sago35tk](https://twitter.com/sago35tk)\n\n## about Gopher\n\nThe Gopher character is based on the Go mascot designed by [Renée French](https://reneefrench.blogspot.com/).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsago35%2Ftinygobook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsago35%2Ftinygobook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsago35%2Ftinygobook/lists"}