Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Flutterでもシリアルコンソール通信 できるもん!
Search
Ryotaro Onoue
September 29, 2023
Programming
0
1k
Flutterでもシリアルコンソール通信 できるもん!
YOUTRUST x ゆめみ Flutter LT会@渋谷 #3
https://yumemi.connpass.com/event/294763/
Ryotaro Onoue
September 29, 2023
Tweet
Share
More Decks by Ryotaro Onoue
See All by Ryotaro Onoue
Terraform+cloud-initで自宅サーバのLXDをIaCするお話
yumnumm
2
110
FlutterKaigi 2024における開発チームの取り組み と 2025への展望
yumnumm
0
55
Dart WebAssemblyを使ったWeb API on Cloudflare Workers
yumnumm
0
69
Apple Walletでパスを作るお話
yumnumm
0
180
私がやってきたアウトプット集
yumnumm
0
150
俺/私のこだわりデスク大大大自慢LT大会 (LTFes #12)
yumnumm
0
81
仕事以外で作成したプロダクトの自慢大会
yumnumm
0
100
Cloudflare Workers でプリントシール機の画像共有システムを制作したお話 @serverlessF
yumnumm
0
250
Flutter × Jetpack Composeの相互運用 @ GDG Tokyo 2023
yumnumm
0
1.2k
Other Decks in Programming
See All in Programming
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
860
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
330
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
150
Ruby Parser progress report 2025
yui_knk
1
440
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
180
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
760
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
540
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
310
Rancher と Terraform
fufuhu
2
550
Processing Gem ベースの、2D レトロゲームエンジンの開発
tokujiros
2
130
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Code Reviewing Like a Champion
maltzj
525
40k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
How GitHub (no longer) Works
holman
315
140k
Writing Fast Ruby
sferik
628
62k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Balancing Empowerment & Direction
lara
3
620
The Language of Interfaces
destraynor
161
25k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Why Our Code Smells
bkeepers
PRO
339
57k
Transcript
2023.9.29 FlutterͰγϦΞϧίϯιʔϧ௨৴ Ͱ͖ΔΜ! YUMEMI Inc. Flutter Engineer - Onoue Ryotaro
YOUTRUST × ΏΊΈ Flutter LTձ@ौ୩ #3
0. whoami
1. Today’s topic γϦΞϧίϯιʔϧ௨৴ × Flutter
γϦΞϧ .. . ? ίϯιʔϧ…? 1-1. γϦΞϧίϯιʔϧͬͯͳΜͧ?
γϦΞϧ .. . ? ίϯιʔϧ…? 1-1. γϦΞϧίϯιʔϧͬͯͳΜͧ?
γϦΞϧ .. . ? ίϯιʔϧ…? 1-1. γϦΞϧίϯιʔϧͬͯͳΜͧ?
γϦΞϧ .. . ? ίϯιʔϧ…? 1-1. γϦΞϧίϯιʔϧͬͯͳΜͧ? 71/ϧʔλͱεΠον
γϦΞϧ .. . ? ίϯιʔϧ…? 1-1. γϦΞϧίϯιʔϧͬͯͳΜͧ? Oracle
Cloud Infrastructure ͷ Compute InstanceʹγϦΞϧίϯιʔϧଓ
γϦΞϧ .. . ? ίϯιʔϧ…? 1-1. γϦΞϧίϯιʔϧͬͯͳΜͧ? 0SBDMF$MPVE*OGSBTUSVDUVSFͷ
$PNQVUF*OTUBODFʹγϦΞϧίϯιʔϧଓ
γϦΞϧ .. . ? ίϯιʔϧ…? 1-1. γϦΞϧίϯιʔϧ௨৴ͬͯͳΜͧ? -
γϦΞϧίϯιʔϧ / γϦΞϧϙʔτͱ? 1ʹ1bitͣͭσʔλΛૹड৴͢ΔΠϯλʔϑΣʔεύϥϨϧଓ σΟεϓϨΠϚεͷೖग़ྗΠϯλʔϑΣʔεΛ࣋ͨͳ͍αʔό ΈࠐΈγεςϜʹଓ͢Δͷʹར༻͞Ε͍ͯΔ
CO2ηϯαʔ UD-CO2S 1-2. ۩ମతͳσόΠε
EQIS-1 1-2. ۩ମతͳσόΠε
Ճηϯαʔ EQIS-1 1-2. ۩ମతͳσόΠε (ࠨ): https: // quake.one/sense/
ΑΓ
GNSSड৴ػ 1-2. ۩ମతͳσόΠε https: / / prioris.jp/gnss/
2. FlutterͰγϦΞϧίϯιʔϧ ωΠςΟϒ͡Ό
ԿΛ࡞͍͖͍͔ͬͯͨ 2-0. ඪ - ֓ཁ - CO2ηϯαʔͷΛදࣔɾάϥϑදࣔ -
൚༻ੑͷߴ͍γϦΞϧίϯιʔϧؔ࿈ΫϥεΛ࡞Δ - ϓϥοτϑΥʔϜ - Android, macOS, Linux - iOSOSͷ੍্ݫ͍͠ - ঢ়ଶཧ - riverpod, flutter_hooks
Flutterͷ֎ͷੈքΞΫηε 2-1. ϓϥάΠϯௐࠪ
Flutterͷ֎ͷੈքΞΫηε 2-1. ϓϥάΠϯௐࠪ AndroidͰ࣮ߦ͢ΔͱɺݖݶෆͰౖΒΕΔ - > ΘΓʹusb_serial pluginΛ͏͜ͱͰճආͰ͖Δ
IUUQTHJUIVCDPNKQOVSNJ fl VUUFS@MJCTFSJBMQPSUJTTVFT IUUQTHJUIVCDPNKQOVSNJ fl VUUFS@MJCTFSJBMQPSUJTTVFT
Android ͱ ͦΕҎ֎Ͱར༻͢ΔϓϥάΠϯΛ͚Δ 2-2. ϓϥάΠϯ͚Δ࡞ઓ Android ↑ macOS,
Linux, Windows ↑
Android ͱ ͦΕҎ֎Ͱར༻͢ΔϓϥάΠϯΛ͚Δ 2-2. ϓϥάΠϯ͚Δ࡞ઓ
Android ͱ ͦΕҎ֎Ͱར༻͢ΔϓϥάΠϯΛ͚Δ 2-2. ϓϥάΠϯ͚Δ࡞ઓ usb_serial (Android)
Android ͱ ͦΕҎ֎Ͱར༻͢ΔϓϥάΠϯΛ͚Δ 2-2. ϓϥάΠϯ͚Δ࡞ઓ flutter_libserialport (AndroidҎ֎)
Android ͱ ͦΕҎ֎Ͱར༻͢ΔϓϥάΠϯΛ͚Δ 2-2. ϓϥάΠϯ͚Δ࡞ઓ Android͔Ͳ͏͔ΛνΣοΫ࣮ͯ͠ΛΓସ͑Δ 👍: ࣮࣌ʹϓϥοτϑΥʔϜͷੈքͷ͜ͱΛߟ͑ͳͯ͘OK!
ڞ௨Խͨ͠SerialConsoleProviderΛୟ͘ 2-3. දࣔ·Ͱͷ࣮ ը໘ߏ - σόΠεબը໘ (deviceSelectorPage) -
ηϯαʔͷใΛදࣔ͢Δը໘ (monitoringPage)
RiverpodͰΰγΰγ͢Δ 2-3-1. σόΠεબը໘ serialConsoleDeviceΛҰཡ͢ΔFutureProviderΛ࡞ͬͯ͋͛ͯ switchࣜ(ύλʔϯϚονϯά)Ͱ [σόΠεແ͠ɾσόΠεҰཡɾ ಡΈࠐΈதɾΤϥʔ]ঢ়ଶͰग़͚͠
RiverpodͰΰγΰγ͢Δ 2-3-1. σόΠεબը໘ σόΠεҰཡͰListTileΛදࣔͯ͠ λοϓ͞ΕͨΒ MonitoringPage ભҠ
RiverpodͰΰγΰγ͢Δ 2-3-2. ϞχλϦϯάը໘ CO2SensorProvider: ଌఆͷอ࣋ɾ։࢝ॲཧ ʮCO2=489,HUM=46.4,TMP=28.6ʯͰྲྀΕͯ͘Δଌఆͷύʔε
RiverpodͰΰγΰγ͢Δ 2-3-2. ϞχλϦϯάը໘ CO2SensorProvider: ଌఆͷอ࣋ɾ։࢝ॲཧ ʮCO2=489,HUM=46.4,TMP=28.6ʯͰྲྀΕͯ͘Δଌఆͷύʔε
< - Starbucks ԣͦ͝͏ళ ࠓ͜͜·ͰདྷΔ·Ͱͷిं(ΓΜ͔͍ઢ) ↓
3. Live Demo PixelͰಈ͔ͯ͠Έ·͢ʙ
FlutterͰγϦΞϧίϯιʔϧ௨৴Ͱ͖ΔΜ! 4. ·ͱΊ ͱ Φν - Flutter͔ͩΒωΠςΟϒ৮Δػೳ͑ͳ͍ΜͰ͠ΐ? -
> ͍͍͑ Plugin͕͋Γ·͢ (વྫ֎͋Γ·͕͢) - γϦΞϧίϯιʔϧ௨৴ͰཧతͳσόΠεͱଓͯ͠ ใΛૹड৴͢Δ͜ͱ͕Ͱ͖Δ - ࠓޙ ՃηϯαʔGNSSड৴ػͷApp࡞͍ͬͯͭ͘ΓͰ͢
FlutterͰγϦΞϧίϯιʔϧ௨৴Ͱ͖ΔΜ! - Flutter͔ͩΒωΠςΟϒ৮Δػೳ͑ͳ͍ΜͰ͠ΐ? - > ͍͍͑ Plugin͕͋Γ·͢ (વྫ֎͋Γ·͕͢)
- γϦΞϧίϯιʔϧ௨৴ͰཧతͳσόΠεͱଓͯ͠ ใΛૹड৴͢Δ͜ͱ͕Ͱ͖Δ - ࠓޙ ՃηϯαʔGNSSड৴ػͷApp࡞͍ͬͯͭ͘ΓͰ͢ 4. ·ͱΊ ͱ Φν pub.devʹग़͍ͯͳ͍͚ͩͰ ίʔυ ͢ͰʹରԠ͞Εͯͨ!!!
FlutterͰγϦΞϧίϯιʔϧ௨৴Ͱ͖ΔΜ! 4. ·ͱΊ ͱ Φν - Flutter͔ͩΒωΠςΟϒ৮Δػೳ͑ͳ͍ΜͰ͠ΐ? -
> ͍͍͑ Plugin͕͋Γ·͢ (વྫ֎͋Γ·͕͢) - γϦΞϧίϯιʔϧ௨৴ͰཧతͳσόΠεͱଓͯ͠ ใΛૹड৴͢Δ͜ͱ͕Ͱ͖Δ - ࠓޙ ՃηϯαʔGNSSड৴ػͷApp࡞͍ͬͯͭ͘ΓͰ͢ - IssueͪΌΜͱಡΈ·͠ΐ͏ - ਂͰஅྗ͕Լ͍ͯ͠Δͱ͖ʹॏཁͳஅΛ͠ͳ͍ํ͕ྑ͍
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠! ࣭ɾؾʹͳΔ͜ͱ͕͋Ε ͍ͭͰ࿈བྷ͍ͩ͘͞! Follow me on X: @YumNumm https:
/ / github.com/YumNumm/CO2SensorViewer