M5Paper 作業メモとリンク集
2021-05-05
2021-05-12
自分で見返す用。
M5Paper
売り切れていることが多い。
本家。
Web IDE
GitHub - m5stack/M5EPD: M5Paper Arduino LibraryM5Paper Arduino Library. Contribute to m5stack/M5EPD development by creating an account on GitHub.
github.com

本家の M5Paper 向けリポジトリ。
examples 以下に Arduino での参考実装がある。
M5Stack Library
GitHub - m5stack/M5Stack: M5Stack Arduino LibraryM5Stack Arduino Library. Contribute to m5stack/M5Stack development by creating an account on GitHub.
github.com

M5Stack のAPI情報など。 M5Paper とは少し違うが参考になる部分も多い。
開発
VSCode + Arduino IDE
Arduino IDE でライブラリなどインストールしておいて、 VSCode から呼び出すかたちにするのが楽。
呼び出しは拡張がある。 (vscode-arduino)
ただ、現在はシリアルモニタが使えないバグが発生中。(2021/05/12現在)
Failed to open serial port due to error on VSC `v1.56.0` · Issue #1257 · microsoft/vscode-arduinoIssue Type: Bug Failed to open serial port /dev/ttyUSB0 due to error: + Error: The module '/home/oskar/.vscode/extensions/vsciot-vscode.vscode-arduino-0.4.2/out/node_modules/usb-detection/build/Rel...
github.com

作業に役立つリンク
【M5paper】M5paperでUIFlowの設定をする タッチ操作もしてみたよ【UIFlow】|けんけんM5paperを買ったので、開発環境を構築します。 M5Paper - スイッチサイエンス タッチ操作可能な電子ペーパーを搭載したM5Stackのコアデバイスです。Espressif社の無線モジュールESP32-D www.switch-science.com
私はプログラミング未経験者ということと、子供にいつか教えたいので、ブロックプログラミングのUIFlowを使います。 ファームウェア更新 M5paperのファームウェアをUIFlow用に更新します ◆USBドライバのインストール Download TUTORIAL M
note.com


M5Burner から UiFlow の設定の流れが紹介されている。
M5Stack UIFlowでHTTP(GET)通信 - QiitaM5Stack UIFlowでのHTTP(GET)通信についてメモ##参考にしたサイトこちらを参考にさせてもらいました。ありがとうございました。第9回 - インターネット 編【PLEN5Sta…
qiita.com


UiFlow で HTTP通信。Link、Mapを良い感じに使っていく。
M5Paper のサンプルプロジェクトへのリンクが載っている。
M5Stack M5Paper発売概要2020年11月27日にM5Stack社よりM5Paperが発売されたので購入してみました。すこし触ってみたので商品を紹介したいと思います。商品M5Paper(スイッチサイエンス)M5PaperESP32DevelopmentKit(公
lang-ship.com


Arduino IDE を使う流れが紹介されている。
源真ゴシック (げんしんゴシック)源真ゴシック (げんしんゴシック) は、Adobeのオープンソースフォント「源ノ角ゴシック」を TrueType 形式に変換し、普段使いにおける使い勝手を重視したカスタマイズを施したフリーフォントです。
jikasei.me

源真ゴシック
NTP使うスケッチ
M5Paper RTC set from NTPM5Paper RTC set from NTP. GitHub Gist: instantly share code, notes, and snippets.
gist.github.com


HTTPS通信
基本は標準のサンプルスケッチ参照。
Let’s Encrypt サイトにうまく繋げられていないので、集約した情報提供APIを個人で用意するならそこのやり方も調査必要。
JSON
ArduinoJson というライブラリが使えるらしい。(未実施)
M5Stick-CでJsonをPOSTする - QiitaM5Stick-Cを使って、HTTP POSTします。当然、BodyにJSONを入れて、JSONが返ってくるやつです。今回は、Arduino IDEを使います。いろんな人が使っているので情報がた…
qiita.com


ESP32-WROOM-32でJSONを扱うのは難しくない | DevelopersIOこんにちはAIソリューション部のさかじです。 ESP32-WROOM-32のようにネットワークに接続できる場合サーバとデータをやりとりする場合にJSONを扱うことがあると思います。しかし、組込みでは文字列の扱いはライブラ …
dev.classmethod.jp


使いたい情報
気象庁|天気予報").html(t.text.replace(/\n/g,"")).appendTo(o),a.make().addClass("forecast-table").appendTo(e))})}}}("object"==typeof window?window:"object"==typeof global?global:this); !function(e){"use strict";var l=JMAWebUtility.date.strftime;e.Forecast=e.Forecast||{},e.Forecast.WarningComment={insert:function(e,a,t,n){var d=$("").addClass("contents-block"),o=new SimpleTable,s=t.offices[n].name,t=s+"の注意警戒事項",n=l(new Date(a.reportDatetime),"%Y年%m月%d日%H時%M分");ContentsCommon.makeCloseBox(e,d,{title:t}),o.appendRow().addClass("contents-title"),o.appendHeader(s+"の警報・注意報(注意警戒事項)").attr("colspan",2),o.appendRow().addClass("contents-header"),o.appendHeader(n+" "+a.publishingOffice+" 発表").attr("colspan",2),o.appendRow(),o.appendHeader("注意警戒事項"),o.appendCell(a.headlineText).addClass("warning-summary-sentence"),o.addWidths(130,null),o.make().addClass("warning-table").appendTo(d)}}}("object"==typeof window?window:"object"==typeof global?global:this); !function(e){"use strict";function A(e,a,n,t){return a="japan"===a?n:C.area.convertCode(e,n,a,"offices"),t+"data/forecast/"+Forecast.Common.getPathCode(a)+".json"}function p(t,r,o,s,c,i,l,f,m,w,p){var e,a,n,d,k=$("#forecast-area-buttons").empty(),u=$("#short-table-container").empty(),v=$("#warning-comment-container").empty(),y=$("#short-overview-container").empty(),_=$("#short-explain-container").empty(),j=$("#week-table-container").empty(),h=($("#week-overview-container").empty(),$("#week-explain-container").empty()),b=A(t,m,w,p),g=(e=t,a=w,n=p,"japan"===(g=m)?null:n+"/../../warning/data/warning/"+C.area.convertCode(e,a,g,"offices")+".json"),b={fweek:b};g&&(b.warning=g),C.parallelRequest(b,function(e){var a=e.fweek,n=C.date.getHours(new Date(a[0].reportDatetime));ContentsCommon.makeBreadCrumbs(m,w,F.tr("天気予報"),t).appendTo(k),"japan"!==m&&(Forecast.Short.Table.insert(u,t,r,i,l,a,m,w,p),F.isJapanese()&&(e.warning&&Forecast.WarningComment.insert(v,e.warning,t,C.area.convertCode(t,w,m,"offices")),Forecast.Overview.insert(y,t,m,w)),n&&(d=11
www.jma.go.jp


気象庁の天気予報。上記リンクは札幌市(石狩地方)。
JSON でデータを取得する場合は
https://www.jma.go.jp/bosai/forecast/data/forecast/016000.json
このような形式。
NTPサーバ
pool.ntp.org: プールを利用するためにNTPを設定する方法は? join the pool
use the pool
manage servers どうやったらpool.ntp.orgを利用出来るのでしょうか?
単にあなたのコンピュータをネットワークに同期させたい場合は、設定ファイルは非常に簡単です。
(ntp.org ディストリビューションにあるntpdもしくは、他にNTPをサポートする Linux、*BSD、WindowsやあまりなじみのないOSなどでも)
www.ntppool.org


SPAMにならないように、呼び方は工夫。loop
で呼ばないのは絶対。開発中の setup
も気をつける。