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
0
370
PiHome – home automation done with Raspberry PI and Python
Presented at PyWaw Summit in Warsaw
Wojciech Sznapka
May 26, 2015
Tweet
Share
More Decks by Wojciech Sznapka
See All by Wojciech Sznapka
Getting started with Firebase in Angular
sznapka
1
78
PiHome – home automation done with Raspberry PI and Python
sznapka
0
400
Big data in the trenches
sznapka
1
380
Domain-Driven Design in PHP
sznapka
4
2.1k
Map-Reduce patterns
sznapka
3
270
An introduction to AngularJS
sznapka
0
240
Achieving wise architecture with Symfony2 @ SPUG#5
sznapka
2
210
Smart development environments
sznapka
2
1.6k
Automated tests - facts and myths
sznapka
1
1.7k
Other Decks in Programming
See All in Programming
複雑なドメインに挑む.pdf
yukisakai1225
5
1.2k
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
780
為你自己學 Python - 冷知識篇
eddie
1
350
AI Coding Agentのセキュリティリスク:PRの自己承認とメルカリの対策
s3h
0
240
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
170
旅行プランAIエージェント開発の裏側
ippo012
2
930
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
540
基礎から学ぶ大画面対応(Learning Large-Screen Support from the Ground Up)
tomoya0x00
0
4.3k
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
460
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
320
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
2.8k
Reading Rails 1.0 Source Code
okuramasafumi
0
250
Featured
See All Featured
KATA
mclloyd
32
14k
For a Future-Friendly Web
brad_frost
180
9.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Embracing the Ebb and Flow
colly
87
4.8k
Documentation Writing (for coders)
carmenintech
74
5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
BBQ
matthewcrist
89
9.8k
Why Our Code Smells
bkeepers
PRO
339
57k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
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]