Upgrade to Pro — share decks privately, control downloads, hide ads and more …

M5Paperでスケジューラを 作ってみた

akatsukinewgrad
December 14, 2021
1.4k

M5Paperでスケジューラを 作ってみた

akatsukinewgrad

December 14, 2021
Tweet

Transcript

  1. M5Paper スペック コントローラ: ESP32 2 Core CPU (@160/240MHz) Wi-Fi /

    Bluetooth搭載 16MB FlashROM 8MB RAM 16階調 960x540 EPD (電子ペーパー) タッチスクリーン付き M5Paper

  2. 仕組み - (1)予定を取得 • Google Calendar API ...OAuth認証? アプリ作成? ...めんどくさい

    ◦ セキュリティ管理が面倒なのでカレンダー読めるアプリを紐づけたくない ◦ RasPiとか外部機器を使ったら負けかなと思っている • iCal 形式エクスポート! https なURLにアクセスするだけ → 10MBくらいの全予定が入った .ics ファイルが降ってくる
  3. M5Paper スペック コントローラ: ESP32 2 Core CPU (@160/240MHz) Wi-Fi /

    Bluetooth搭載 16MB FlashROM 8MB RAM 16階調 960x540 EPD (電子ペーパー) タッチスクリーン付き M5Paper

  4. 仕組み - (1)予定を取得 (続き) 大丈夫です、そう、ストリーム処理ならね ダウンロードしながら .ics (テキストです) を パースして直近の予定だけ抽出すればいい

    C++(Arduino向け)でparserを書いた BEGIN:VEVENT
 DTSTART:20210914T020000Z
 DTEND:20210914T090000Z
 DTSTAMP:20210724T041053Z
 ORGANIZER;[email protected]:mailto:[email protected]
 UID:[email protected]
 ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT =NEEDS-ACTION;CN=ha
 ckers;X-NUM-GUESTS=0:mailto:[email protected]
 ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT =NEEDS-ACTION;[email protected];X-NUM-GUESTS=0:mailto :[email protected]
 ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT =ACCEPTED;[email protected];X-NUM-GUESTS=0:mailto:yuto.koma [email protected]
 CREATED:20210721T030115Z
 DESCRIPTION:
 LAST-MODIFIED:20210724T022342Z
 LOCATION:
 SEQUENCE:0
 STATUS:CONFIRMED
 SUMMARY:テスト予定
 TRANSP:OPAQUE
 END:VEVENT
 タイトル
 この辺にZoomのURLとかが入ったりする 
 開始・終了時刻
 なんだ、楽勝じゃん😸
  5. 仕組み - (2) Zoomを開く 直近の予定を表示 → Zoomリンクを含む予定がタップされたら、Zoomを開く (1) Macにシリアル(USB)かWiFi経由でURLを送信 (2)

    open "zoommtg://zoom.us/join?confno=123..&pwd=abc..."   でZoomミーティングを(確認とかスキップして)開けます