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
360
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
72
PiHome – home automation done with Raspberry PI and Python
sznapka
0
390
Big data in the trenches
sznapka
1
360
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
200
Smart development environments
sznapka
2
1.6k
Automated tests - facts and myths
sznapka
1
1.7k
Other Decks in Programming
See All in Programming
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
780
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
640
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
130
PipeCDのプラグイン化で目指すところ
warashi
1
280
A full stack side project webapp all in Kotlin (KotlinConf 2025)
dankim
0
120
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
0
170
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
220
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
5
7.4k
Result型で“失敗”を型にするPHPコードの書き方
kajitack
5
660
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1k
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
12
4.5k
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
820
Featured
See All Featured
Building Adaptive Systems
keathley
43
2.7k
Documentation Writing (for coders)
carmenintech
72
4.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
740
Being A Developer After 40
akosma
90
590k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Site-Speed That Sticks
csswizardry
10
690
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Designing for Performance
lara
610
69k
RailsConf 2023
tenderlove
30
1.1k
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]