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
PiHome – home automation done with Raspberry PI...
Search
Wojciech Sznapka
May 26, 2015
Programming
400
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PiHome – home automation done with Raspberry PI and Python
Presented at PyWaw Summit in Warsaw
Wojciech Sznapka
May 26, 2015
More Decks by Wojciech Sznapka
See All by Wojciech Sznapka
Getting started with Firebase in Angular
sznapka
1
110
PiHome – home automation done with Raspberry PI and Python
sznapka
0
450
Big data in the trenches
sznapka
1
440
Domain-Driven Design in PHP
sznapka
4
2.2k
Map-Reduce patterns
sznapka
3
310
An introduction to AngularJS
sznapka
0
260
Achieving wise architecture with Symfony2 @ SPUG#5
sznapka
2
260
Smart development environments
sznapka
2
1.6k
Automated tests - facts and myths
sznapka
1
1.7k
Other Decks in Programming
See All in Programming
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
210
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
240
OSもどきOS
arkw
0
480
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
320
スマートグラスで並列バイブコーディング
hyshu
0
120
Inside Stream API
skrb
1
680
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.3k
AIエージェントの隔離技術の徹底比較
kawayu
0
470
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
250
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
5.2k
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
780
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
3.5k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
150
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Test your architecture with Archunit
thirion
1
2.3k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
230
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
140
Raft: Consensus for Rubyists
vanstee
141
7.5k
It's Worth the Effort
3n
188
29k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
250
How to train your dragon (web standard)
notwaldorf
97
6.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Transcript
PiHome – home automation done with Raspberry PI and Python
Wojciech Sznapka Head of Development @ Cherry Poland Twitter: @sznapka PyWaw Summit. Warsaw 2015
None
Features • Steering (switches): – Floor heating steering (on /
off / delayed) – Hot water pump steering – Lights • Sensors: – Current temperature – Draw charts • History: – switches state – temperatures
Hardware • Raspberry PI B • Switches module (230V) controlled
via Ethernet (ready-made board) • Dallas ds18b20 one wire temperature sensors • Bread-board and bunch of wires
None
None
None
Software • Raspbian – with GPIO modules – Supervisord –
Apache + WSGI • Pihome-api – Python – Flask – JSON • PiHome – AngularJS as a SPA frontend – Twitter Bootstrap – optimized for mobile – Grunt, Bower, Yeoman • CLI tasks – Queue consumers – Celery tasks
Software • RabbitMQ – relay “store” requests (failover) • Celery
- “delayed” on / off • MongoDB (hosted at compose.io) – history of sensors and switches • Memcached
None
Future • Predict time when user wants to use hot
water* • More switches (door, window blinds) • Connect to alarm to know where users are (PIR sensors) * Machine learning
Lesson learned • Don't rely much on WiFi (have fallback
/ queue) • Don't play around with higher voltages unless you're pretty sure what're you doing... • Be prepared for frequent and random restarts • There plenty of ready made components, soldering is often last thing, if you want to get things fast
Thanks :-) https://github.com/wowo/pihome https://github.com/wowo/pihome-api
[email protected]