<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>sonoff-tasmota Archivy - blog.vyoralek.cz</title>
	<atom:link href="https://blog.vyoralek.cz/stitek/sonoff-tasmota/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.vyoralek.cz/stitek/sonoff-tasmota/</link>
	<description>Tech témata, které mě baví</description>
	<lastBuildDate>Sat, 17 Oct 2020 14:45:14 +0000</lastBuildDate>
	<language>cs</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.2</generator>

<image>
	<url>https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/cropped-512px-Circle-icons-pencil_2.svg_.png?fit=32%2C32&#038;ssl=1</url>
	<title>sonoff-tasmota Archivy - blog.vyoralek.cz</title>
	<link>https://blog.vyoralek.cz/stitek/sonoff-tasmota/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">133748570</site>	<item>
		<title>Jak nastavit časovač na zapínání vánočních světel (Tasmota, ESPHome)</title>
		<link>https://blog.vyoralek.cz/iot/jak-nastavit-casovac-na-zapinani-vanocnich-svetel-tasmota-esphome/</link>
					<comments>https://blog.vyoralek.cz/iot/jak-nastavit-casovac-na-zapinani-vanocnich-svetel-tasmota-esphome/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Tue, 24 Dec 2019 10:02:24 +0000</pubDate>
				<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[homeassistant]]></category>
		<category><![CDATA[Sonoff]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=3021</guid>

					<description><![CDATA[<p>Dnes se podíváme na velmi aktuální téma a to jak pomocí chytré domácnosti ovládat vánoční osvětlení.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/jak-nastavit-casovac-na-zapinani-vanocnich-svetel-tasmota-esphome/">Jak nastavit časovač na zapínání vánočních světel (Tasmota, ESPHome)</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Vánoční osvětlení je často jedním z druhů světel, které nemají žádný spínač, tj. můžeme je zapínat/vypínat jen vytažením z elektřiny. </p>



<p>V případě vánočního stromu se to na některých typech (zejména starších) světel dá řešit povytažením jedné žárovky &#8211; pokud jsou tedy zapojeny sériově, což je jinak poměrně zásadní nevýhoda. Často tomu tak, ale není a je potřeba světla vytahovat ze zásuvky. </p>



<p>Dnes se podíváme jak si tuhle činnost zjednodušit a přidat i benefit v podobě nastavení automatického zapnutí/vypnutí v definovaném čase.</p>



<h2 class="wp-block-heading">Vhodný hardware</h2>



<p>Možnosti jaký typ hardware pro ovládání vánočních světel můžeme použít máme v zásadě dvě:</p>



<ul><li><strong>chytrou zásuvku</strong> &#8211; já používám <a href="https://blog.vyoralek.cz/iot/wifi-zasuvka-blitzwolf-bw-shp6/">Blitzwolf BW-SHP6</a> a <a href="https://blog.vyoralek.cz/iot/domaci-automatizace-s-produkty-sonoff-2-cast/">Sonoff S20/S26</a></li><li><strong>chytrý spínač</strong> &#8211; ja používám <a href="https://blog.vyoralek.cz/iot/domaci-automatizace-s-produkty-sonoff/">Sonoff Basic</a></li></ul>



<p>Každý z typů má nějakou výhodu, ale zároveň i nevýhodu. Na modelovém příkladu níže si popíšeme detailněji řešení formou <strong>chytré prodlužovačky</strong>, tj. použijeme <a href="https://blog.vyoralek.cz/iot/sonoff-basic-r3-predstaveni-porovnani-a-nahrani-firmware-tasmota/">Sonoff Basic v revizi 3</a>, ke kterému si ze stran připojíme kabely se zástrčkou a zásuvkou.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img fetchpriority="high" decoding="async" width="770" height="514" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406.jpg?resize=770%2C514&#038;ssl=1" alt="" class="wp-image-2999" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=1536%2C1024&amp;ssl=1 1536w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=2048%2C1365&amp;ssl=1 2048w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=370%2C247&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=570%2C380&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?resize=740%2C493&amp;ssl=1 740w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2406-scaled.jpg?w=2310&amp;ssl=1 2310w" sizes="(max-width: 770px) 100vw, 770px" data-recalc-dims="1" /><figcaption>Sonoff Basic R3</figcaption></figure></div>



<p>Pokud to začnete řešit na poslední chvíli, může to dopadnout jako v mém případě <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f631.png" alt="😱" class="wp-smiley" style="height: 1em; max-height: 1em;" />v tzv. stylu co dům dal <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" />. Nicméně celá prodlužovačka je schovaná pod vánočním stromkem, takže to vlastně ani tak moc nevadí.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1800" height="1200" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?fit=770%2C514&amp;ssl=1" alt="" class="wp-image-3026" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?w=1800&amp;ssl=1 1800w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?resize=1536%2C1024&amp;ssl=1 1536w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?resize=370%2C247&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?resize=570%2C380&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2414.jpg?resize=740%2C493&amp;ssl=1 740w" sizes="(max-width: 770px) 100vw, 770px" /><figcaption>Sonoff Basic chytrá prodlužovačka</figcaption></figure>



<h2 class="wp-block-heading">Vhodný software</h2>



<p>Díky použití přepínače <strong>Sonoff Basic</strong> s čipem <strong>ESP8285</strong> je možností řešení opravdu hodně. My si ukážeme dvě přímo na úrovni firmware &#8211; <a href="https://blog.vyoralek.cz/iot/sonoff-produkty-nahrani-firmware-tasmota/">Tasmota</a> a <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">ESPHome</a>.</p>



<h3 class="wp-block-heading">1. Firmware Tasmota</h3>



<p>Jako nejvhodnějším řešením se mi jeví firmware <a href="https://blog.vyoralek.cz/iot/sonoff-produkty-nahrani-firmware-tasmota/">Tasmota</a> (dříve Sonoff-Tasmota). </p>



<p>Umí běžet úplně samostatně &#8211; nevyžaduje nějaké integrační prostředí jako např HomeAssistant.</p>



<p>Pro účely časovače je pak velkým benefitem vlastní webové rozhraní Tasmoty, které umožňuje přes prohlížeč časovač nastavit v poměrně hezkém uživatelském rozhraní. Není potřeba tedy psát žádný programový kód a nastavení po krátkém úvodu zvládne i laik.</p>



<p>O nahrávání firmware Tasmota jsem už napsal mnoho článků. Pokud ještě nevíte jak na to můžete se podívat na <a href="https://blog.vyoralek.cz/iot/sonoff-produkty-nahrani-firmware-tasmota/">obecnější článek</a> a nebo pro tenhle konkrétní případ mám i popis pro <a href="https://blog.vyoralek.cz/iot/sonoff-basic-r3-predstaveni-porovnani-a-nahrani-firmware-tasmota/">Sonoff Basic R3</a>.</p>



<p>Jakmile nám Tasmota běží připojíme se pomocí webového prohlížeče do webového rozhraní &#8211; stačí zadat IP adresu zařízení &#8211; a v hlavním menu vybereme <strong>Nastavení</strong> z kterého se dále přepneme do <strong>Nastavení Časovače</strong>.</p>



<a class="gridlove-popup" href='https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?ssl=1'><img decoding="async" width="740" height="1053" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?fit=740%2C1053&amp;ssl=1" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?w=786&amp;ssl=1 786w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?resize=211%2C300&amp;ssl=1 211w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?resize=720%2C1024&amp;ssl=1 720w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?resize=768%2C1092&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?resize=370%2C526&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?resize=270%2C384&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?resize=570%2C811&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-11.png?resize=740%2C1053&amp;ssl=1 740w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<a class="gridlove-popup" href='https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-12.png?ssl=1'><img loading="lazy" decoding="async" width="740" height="998" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-12.png?fit=740%2C998&amp;ssl=1" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-12.png?w=752&amp;ssl=1 752w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-12.png?resize=222%2C300&amp;ssl=1 222w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-12.png?resize=370%2C499&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-12.png?resize=270%2C364&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-12.png?resize=570%2C769&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-12.png?resize=740%2C998&amp;ssl=1 740w" sizes="(max-width: 740px) 100vw, 740px" /></a>



<p>V časovači máme k dispozici celkem <strong>16 slotů</strong>, kde každý z nichž může představovat jedno nastavení pro zapnutí, vypnutí nebo přepnutí spínače. </p>



<p>Nejprve je potřeba zapnout časovač pomocí zatržení volby <strong>Povol časovač</strong> a můžeme se vrhnout na nastavení jednotlivých slotů.</p>



<a class="gridlove-popup" href='https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?ssl=1'><img loading="lazy" decoding="async" width="740" height="906" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?fit=740%2C906&amp;ssl=1" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?w=1016&amp;ssl=1 1016w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?resize=245%2C300&amp;ssl=1 245w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?resize=836%2C1024&amp;ssl=1 836w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?resize=768%2C940&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?resize=370%2C453&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?resize=270%2C331&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?resize=570%2C698&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-9.png?resize=740%2C906&amp;ssl=1 740w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<a class="gridlove-popup" href='https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?ssl=1'><img loading="lazy" decoding="async" width="740" height="884" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?fit=740%2C884&amp;ssl=1" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?w=1038&amp;ssl=1 1038w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?resize=251%2C300&amp;ssl=1 251w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?resize=857%2C1024&amp;ssl=1 857w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?resize=768%2C917&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?resize=370%2C442&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?resize=270%2C323&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?resize=570%2C681&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-10.png?resize=740%2C884&amp;ssl=1 740w" sizes="(max-width: 740px) 100vw, 740px" /></a>



<p>Ve většině případů nám budou stačit sloty dva &#8211; jeden na zapnutí a jeden na vypnutí &#8211; nastaví se pomocí volby <strong>Napájení</strong>.</p>



<p>Dále zatrhneme volbu <strong>aktivní</strong> + <strong>opakovat</strong> (pokud nechceme časovač použít jen jednou) a vybereme si z<strong>působ definice času</strong>, kdy má k dané akci dojít. K  dispozici máme tři možnosti:</p>



<ol><li><strong>čas</strong> &#8211; nastavíme čas, kdy má k akci dojít</li><li><strong>svítání</strong> &#8211; použije se aktuální čas svítání</li><li><strong>soumrak</strong> &#8211; použije se aktuální čas západu</li></ol>



<p>Následující sekce s nastavením času má trochu jiný význam v závislosti na způsobu definice času:</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-14.png" alt="" class="wp-image-3046" width="350" height="42" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-14.png?w=654&amp;ssl=1 654w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-14.png?resize=300%2C37&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-14.png?resize=370%2C45&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-14.png?resize=270%2C33&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-14.png?resize=570%2C70&amp;ssl=1 570w" sizes="(max-width: 350px) 100vw, 350px" /></figure>



<ol><li>pokud vybereme <strong>volbu čas,</strong> tak první dvě číselná políčka označují hodiny a minuty a poslední pole +/- určuje interval v minutách, kdy se náhodná hodnota přičte/odečte od zadaného času &#8211; díky tomu můžeme mít v určitém směru nepravidelný interval časovače +/- až 15 minut</li><li>pokud vybereme <strong>volbu svítání a nebo soumrak</strong> pak můžeme nastavit první pole na hodnotu + a nebo &#8211; v následně pak definovat hodiny a minuty, které se od svítání/soumraku odečtou &#8211; chceme-li například spustit zařízení X minut před svítáním. Stejně jako u předchozího typu pak můžeme nechat Tasmotu přičíst/odečíst náhodné číslo v intervalu +/- až 15 minut</li></ol>



<p>Jestliže jsme použili svítání a/nebo soumrak pro nastavení časovače, pak je potřeba nastavit ještě <strong>souřadnice lokace</strong> &#8211; výchozí nastavení je Eiffelovka v Paříži. To provedeme pomocí dvojice příkazu do konzoly Tasmoty:</p>



<pre class="wp-block-code"><code>Latitude 50.091065
Longitude 14.400538</code></pre>



<p> Tyto hodnoty jsou pro změnu pro Katedrálu svatého Víta v Praze <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>



<p>Poslední volbou je pak <strong>definice dnů</strong> po které má být pravidlo aktivní. Pokud chceme, aby se tak dělo každý den pak zatrhneme všechny dny a nastavení uložíme.</p>



<p>Pokud nechceme klikat pak můžeme použít i příkaz pro konzolu Tasmoty, který vše nastaví najednou (hodí se zejména pokud chceme nastavit více zařízení stejně).</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?fit=770%2C996&amp;ssl=1" alt="" class="wp-image-3036" width="339" height="438" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?w=976&amp;ssl=1 976w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?resize=232%2C300&amp;ssl=1 232w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?resize=792%2C1024&amp;ssl=1 792w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?resize=768%2C993&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?resize=370%2C478&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?resize=270%2C349&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?resize=570%2C737&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-13.png?resize=740%2C957&amp;ssl=1 740w" sizes="(max-width: 339px) 100vw, 339px" /></figure></div>



<p>Pro stejné nastavení jako výše tak budeme potřebovat dva příkazy:</p>



<pre class="wp-block-code"><code>Timer1 {"Arm":1,"Mode": 1,"Window":0,"Days":"SMTWTFS","Repeat":1,"Output":1,"Action":1}</code></pre>



<p>&#8230; pro zapínání a jeden pro vypínání:</p>



<pre class="wp-block-code"><code>Timer2 {"Arm":1,"Mode": 2,"Window":0,"Days":"SMTWTFS","Repeat":1,"Output":1,"Action":0}</code></pre>



<p>Kompletní popis možností nastavení časovače najdete na <a href="https://tasmota.github.io/docs/#/Timers">webu Tasmoty</a>.</p>



<h3 class="wp-block-heading">2. Firmware ESPHome</h3>



<p>Druhou možností je použití firmware <strong>ESPHome</strong>, které stejně jak <strong>Tasmota</strong> má možnost nastavení časovače přímo v zařízení, tj. bez nutnosti mít integrační centrum jako <strong>HomeAssistant</strong>.</p>



<p>O způsobu jak nahrát firmware <strong>ESPHome</strong> si můžeme přečíst v <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">tomto článku</a>.</p>



<p>Bohužel na rozdíl od <strong>Tasmoty</strong> nemá <strong>ESPHome</strong> tak hezky propracované webové rozhraní a časovač přes něj nemůžeme nastavit. Budeme tak muset použít konfiguraci pomocí kódu. </p>



<p>V případě použití <strong>východu/západu slunce</strong> je to komponenta <a href="https://esphome.io/components/sun.html">sun</a> a v případě použití <strong>přesného času</strong> komponenta <a href="https://esphome.io/components/time.html">time</a>.</p>



<p>Nejprve si tedy ukážeme konfiguraci s <strong>východem/západem slunce</strong>:</p>



<pre class="wp-block-code"><code>sun:
  latitude: &lt;VYPLNIME_DLE_MISTA>
  longitude: &lt;VYPLNIME_DLE_MISTA>

  on_sunrise:
    - then:
        - switch.turn_on: my_switch

  on_sunset:
    - then:
        - switch.turn_off: my_switch</code></pre>



<p> &#8230; a druhá možnost pomocí <strong>přesného času</strong>:</p>



<pre class="wp-block-code"><code>time:
  - platform: sntp
    # ...
    on_time:
      - seconds: 0
        minutes: 30
        hours: 7
        then:
          - switch.turn_on: my_switch

      - seconds: 0
        minutes: 30
        hours: 21
        then:
          - switch.turn_off: my_switch</code></pre>



<p>Pokud vás napadá nějaké další fajn řešení dejte vědět v komentářích. Tasmota je opravdu fajn, že má ono webové rozhraní, ale je trochu škoda, že to může být stále příliš složité pro běžné smrtelníky.</p>



<p>Na závěr přeji všem krásné a klidné prožití vánočních svátků a vstupu do Nového roku 2020. Už nyní mám hromady nápadů na další články a blog bude určitě dál pokračovat. Děkuji všem zároveň za podporu a zpětnou vazbu. Snad příští rok posuneme společně domácí IoT zase o kus dále.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/jak-nastavit-casovac-na-zapinani-vanocnich-svetel-tasmota-esphome/">Jak nastavit časovač na zapínání vánočních světel (Tasmota, ESPHome)</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/jak-nastavit-casovac-na-zapinani-vanocnich-svetel-tasmota-esphome/feed/</wfw:commentRss>
			<slash:comments>10</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3021</post-id>	</item>
		<item>
		<title>Sonoff Basic R3 &#8211; chytrý WiFi spínač  &#8211; představení, porovnání a nahrání firmware Tasmota</title>
		<link>https://blog.vyoralek.cz/iot/sonoff-basic-r3-predstaveni-porovnani-a-nahrani-firmware-tasmota/</link>
					<comments>https://blog.vyoralek.cz/iot/sonoff-basic-r3-predstaveni-porovnani-a-nahrani-firmware-tasmota/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Sun, 15 Dec 2019 16:44:50 +0000</pubDate>
				<category><![CDATA[Recenze]]></category>
		<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[Sonoff]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=2978</guid>

					<description><![CDATA[<p>Je to už nějaký čas co byla uvedena na trh poslední revize Sonoff Basic a konečně přišel čas, abych se i já na ni trochu podíval.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/sonoff-basic-r3-predstaveni-porovnani-a-nahrani-firmware-tasmota/">Sonoff Basic R3 &#8211; chytrý WiFi spínač  &#8211; představení, porovnání a nahrání firmware Tasmota</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">Přestavení R3 a porovnání s předchozími verzemi</h2>



<p>Zatím poslední verze (revize) produktu <a class="thirstylink" title="AliExpress - Sonoff Basic R3" href="https://blog.vyoralek.cz/go/aliexpress-sonoff-basic-r3/" data-shortcode="true">Sonoff Basic</a> s označením <strong>R3</strong> se oproti předchozím verzím poměrně zásadně změnila jak ve vzhledu, tak i v provedení samotné desky.</p>



<p>Nově máme k dispozici <strong>dvě stavové diody</strong> &#8211; červenou a modrou &#8211; tak jak jsme to doposud znali z větších přepínačů &#8211; např. <a class="thirstylink" title="AliExpress - Sonoff TH10/16" href="https://blog.vyoralek.cz/go/aliexpress-sonoff-th10-16/" data-shortcode="true">TH10/TH16</a> a nebo verze <a class="thirstylink" title="Banggood - Sonoff POW R2" href="https://blog.vyoralek.cz/go/banggood-sonoff-pow-r2/" data-shortcode="true">POW</a>.</p>



<p>Ještě větší změnou je pak <strong>rozdělení samotné desky na dva moduly</strong>. Jednu větší část tvoří vše okolo samotného přepínače a menší horní část pak obsahuje samotný čip ESP8285, piny pro komunikaci, LED diody, tlačítko a anténu WiFi. </p>



<p>Nejprve jsem moc nechápal, co vedlo Sonoff k tomuto kroku, ale vše se vyjasnilo uvedením úplně nového <strong>Sonoff Basic BASICZBR3</strong>, který namísto WiFi používá technologii <strong>Zigbee</strong> &#8211; o této variantě si můžete přečíst v <a href="https://blog.vyoralek.cz/iot/recenze-sonoff-basic-r3-zigbee-a-smarthome-integrace/">samostatném článku</a>.</p>



<p>Poslední větší změnou je pak podpora tzv. <strong>DIY</strong>, což znělo skvěle &#8211; idea je, že můžete zařízení lokálně integrovat nebo přeflashovat bez nutnosti použít sériovou linku. Bohužel realita je o dost smutnější a celý proces je zejména pro přefleshování kompikovanější než použití seriového rozhraní.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="2560" height="1707" src="https://i1.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?fit=770%2C514&amp;ssl=1" alt="" class="wp-image-2982" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?w=2560&amp;ssl=1 2560w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=1536%2C1024&amp;ssl=1 1536w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=2048%2C1365&amp;ssl=1 2048w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=370%2C247&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=570%2C380&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?resize=740%2C493&amp;ssl=1 740w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/DSCF2407-scaled.jpg?w=2310&amp;ssl=1 2310w" sizes="(max-width: 770px) 100vw, 770px" /><figcaption>Sonoff Basic R3 vs R1/2</figcaption></figure>



<p>Nabízí se otázka, zda <strong>má smysl upgradovat</strong> z verze R1/R2 a novější verzi? Za mě určitě nikoliv. Funkční rozdíly nejsou téměř žádné a změny jsou spíše vzhledové. Pokud však uvažujete o koupi nového Sonoff Basic, pak není příliš velký důvod se poslední verzi vyhnout. Nejvíce oblíbená však stále zůstává verze R2 &#8211; má 220V vedeno v samostatných drátech, namísto přímo na desce a poskytuje více možností rozšíření přes GPIO.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1276" height="863" src="https://i2.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?fit=770%2C521&amp;ssl=1" alt="" class="wp-image-2985" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?w=1276&amp;ssl=1 1276w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?resize=300%2C203&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?resize=1024%2C693&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?resize=768%2C519&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?resize=370%2C250&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?resize=270%2C183&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?resize=570%2C386&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-compare.jpg?resize=740%2C500&amp;ssl=1 740w" sizes="(max-width: 770px) 100vw, 770px" /><figcaption>Sonoff Basic &#8211; porovnání jednotlivých revizí</figcaption></figure>



<p>Jednotlivé verze můžete koupit např. na:</p>



<ul><li><strong>Sonoff Basic R1 </strong>&#8211; <a class="thirstylink" title="AliExpress - Sonoff Basic" href="https://blog.vyoralek.cz/go/aliexpress-sonoff-basic/" data-shortcode="true">AliExpress</a> <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f1e8-1f1f3.png" alt="🇨🇳" class="wp-smiley" style="height: 1em; max-height: 1em;" /> $6.5 (140 Kč), <a class="thirstylink" title="Amazon - Sonoff Basic R1" href="https://blog.vyoralek.cz/go/amazon-sonoff-basic-r1/" data-shortcode="true">Amazon</a> <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f1e9-1f1ea.png" alt="🇩🇪" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 9€ (229 Kč)</li><li><strong>Sonoff Basic R2</strong> &#8211; <a class="thirstylink" title="AliExpress - Sonoff Basic R2" href="https://blog.vyoralek.cz/go/aliexpress-sonoff-basic-r2/" data-shortcode="true">AliExpress</a> <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f1e8-1f1f3.png" alt="🇨🇳" class="wp-smiley" style="height: 1em; max-height: 1em;" /> $7 (160 Kč),  <a class="thirstylink" title="Amazon - Sonoff Basic R2" href="https://blog.vyoralek.cz/go/amazon-sonoff-basic-r2/" data-shortcode="true">Amazon</a> <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f1e9-1f1ea.png" alt="🇩🇪" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 9.99€ (254 Kč)</li><li><strong>Sonoff Basic R3</strong> &#8211; <a class="thirstylink" title="AliExpress - Sonoff Basic R3" href="https://blog.vyoralek.cz/go/aliexpress-sonoff-basic-r3/" data-shortcode="true">AliExpress</a> <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f1e8-1f1f3.png" alt="🇨🇳" class="wp-smiley" style="height: 1em; max-height: 1em;" /> $7.8 (180 Kč), <a class="thirstylink" title="Amazon - Sonoff Basic R3" href="https://blog.vyoralek.cz/go/amazon-sonoff-basic-r3/" data-shortcode="true">Amazon</a> <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f1e9-1f1ea.png" alt="🇩🇪" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 8.98€ (204 Kč)</li></ul>



<p>Jak můžete vidět cenové rozdíly mezi jednotlivými verzemi jsou opravdu minimální.</p>



<h2 class="wp-block-heading">Nahrání firmware Tasmota</h2>



<p>Jak jsem již zmiňoval výše, jedním z hlavních benefitů nové verze R3 má být možnost nahrání alternativního firmware &#8211; např. <a href="https://tasmota.github.io/docs/#/Home">Tasmoty</a> &#8211; bez nutnosti připojení sériové linky &#8211; tzv. DIY mode tool.  Podíváme se na tenhle nový způsob, ale také si ukážeme klasiku.</p>



<p style="font-size:18px" class="has-text-color has-background has-gridlove-txt-color has-gridlove-highlight-acc-background-color"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Kromě firmware Tasmota můžeme samozřejmě nahrát i jakýkoliv jiný firmware pro ESP8266, tj. například i <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">ESPHome</a>.</p>



<p>Můžeme si tak tedy vybrat zda chceme:</p>



<ol><li>použít klasický způsob nahrání pomocí sériové linky</li><li>nahrát firmware pomocí DIY mode tool od Sonoffu</li></ol>



<h3 class="wp-block-heading">1. Použití sériové linky a USB UART</h3>



<p>Naneštěstí stejně jako u předchozích verzí Sonoff Basic můžeme pro nahrání firmware použít sériovou linku &#8211; na desce máme k dispozici opět všechny 4 potřebné piny, tentokráte však s jedním ale &#8211; jelikož jsou piny umístěny na horní desce je téměř nemožné na ni napájen pin header. Zároveň horní deska nejde jednoduše odpojit &#8211; je potřeba odpájet celkem 8 kontaktů. </p>



<p>Jako nejlepší varianta se ukazuje zapojit piny do desky bez pájení tak, abychom měli kontakt &#8211; není to ideální řešení, ale naštěstí to většinou budeme potřebovat jen jednou.</p>



<p>Pro sériovou linku použijeme jako obvykle USB UART &#8211; pokud ho ještě nemáte pak mohu doporučit&nbsp;<a href="https://blog.vyoralek.cz/go/aliexpress-cp2102-usb-to-ttl-uart/">Aluminum shell CP2102 USB 2.0 to TTL UART</a>.</p>



<p>Piny zapojíme podle následujícího obrázku:</p>



<figure class="wp-block-image size-large is-style-default"><img loading="lazy" decoding="async" width="2560" height="1707" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?fit=770%2C514&amp;ssl=1" alt="" class="wp-image-3008" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?w=2560&amp;ssl=1 2560w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=1536%2C1024&amp;ssl=1 1536w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=2048%2C1365&amp;ssl=1 2048w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=370%2C247&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=570%2C380&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?resize=740%2C493&amp;ssl=1 740w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/sonoff-basic-r3-schema-scaled.jpg?w=2310&amp;ssl=1 2310w" sizes="(max-width: 770px) 100vw, 770px" /><figcaption>Sonoff Basic R3 &#8211; schéma zapojení</figcaption></figure>



<p>Jakmile máme zapojeno nahrajeme Tasmotu pomocí např. EspTool</p>



<pre class="wp-block-code"><code>➜ esptool.py --port /dev/cu.SLAB_USBtoUART write_flash -fs 1MB -fm dout 0x0 sonoff-CZ.bin
esptool.py v2.8
Serial port /dev/cu.SLAB_USBtoUART
Connecting....
Detecting chip type... ESP8266
Chip is ESP8285
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: dc:4f:22:a8:01:2e
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Compressed 483616 bytes to 330867...
Wrote 483616 bytes (330867 compressed) at 0x00000000 in 39.3 seconds (effective 98.5 kbit/s)...
Hash of data verified.</code></pre>



<p class="has-background has-gridlove-highlight-acc-background-color"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f50c.png" alt="🔌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Parametr <code>--port</code> nastavte podle sériového portu kam máte programátor připojen. V případe Linux/MacOS je to ve tvaru <code>/dev/[nazev]</code> a u Windows pak <code>COM[cislo]</code>.</p>



<p>A po restartu už bychom měli vidět zařízení jako nový WiFi AP &#8211; detailní informace o flashování Tasmoty pak najdete v <a href="https://blog.vyoralek.cz/iot/sonoff-produkty-nahrani-firmware-tasmota/">starším článku</a> k verzi R1.</p>



<h3 class="wp-block-heading">2. Použití DIY mode tool aplikace</h3>



<p>Už jsem tak trochu naznačil, že DIY režim od Sonoffu je zatím spíše zklamání. Prvním trochu nepochopitelným úkonem k aktivování DIY režimu je totiž nutnost rozebrání krabičky <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f631.png" alt="😱" class="wp-smiley" style="height: 1em; max-height: 1em;" /> a člověk si říká, jaká je pak vlastně idea &#8211; to už rovnou můžeme připojit sériovou linku.</p>



<p>Druhé pro mě nepochopitelné omezení, je zkompilovaná aplikace pouze pro Windows. Na MacOS či Linuxu musíte jít do zdrojvých kódů, nainstalovat hromadu závislostí a doufat, že se vám podaří aplikaci spustit &#8211; já narazil na poměrně dost chyb v kódu, které jsem musel ručně opravovat, než se to vůbec rozjelo. Možná je kompilátor ve Windows méně náročný, ale na MacOS to zatím bez oprav nešlo.</p>



<p>Ještě než se vrhneme na použít DIY mode tool je potřeba Sonoff nejrpve zpárovat z oficiální aplikací eWeLink a nainstalovat poslední aktualizaci &#8211; jinak můžete mít s použítím DIY mode toolu problém.</p>



<p>Zatím další podrobný návod vynechám, jelikož mě to přijde celé hodně chatrné a složité a doporučuji zatím osvědčený způsob přes sériovou linku. Budu to ale celé ještě sledovat a pobude by se systém zlepšil návod rozšířím.</p>



<p>Pro představu pár obrazovek jak to vlastně vypadá.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="770" height="234" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-1.png?resize=770%2C234&#038;ssl=1" alt="" class="wp-image-2973" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-1.png?w=923&amp;ssl=1 923w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-1.png?resize=300%2C91&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-1.png?resize=768%2C234&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-1.png?resize=370%2C113&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-1.png?resize=270%2C82&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-1.png?resize=570%2C174&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-1.png?resize=740%2C225&amp;ssl=1 740w" sizes="(max-width: 770px) 100vw, 770px" data-recalc-dims="1" /><figcaption>DIY mode tool aplikace od Sonoffu</figcaption></figure>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="439" height="326" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-2.png?resize=439%2C326&#038;ssl=1" alt="" class="wp-image-2974" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-2.png?w=439&amp;ssl=1 439w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-2.png?resize=300%2C223&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-2.png?resize=370%2C275&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-2.png?resize=270%2C201&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-2.png?resize=80%2C60&amp;ssl=1 80w" sizes="(max-width: 439px) 100vw, 439px" data-recalc-dims="1" /><figcaption>Flashování s DIY mode toolem</figcaption></figure></div>



<h2 class="wp-block-heading">Nastavení firmware Tasmota</h2>



<p>Oproti předchozím verzím se nastavení GPIO mírně liší a tak doporučuji použít šablonu přímo pro tuto verzi:</p>



<pre class="wp-block-code"><code>{"NAME":"Basic R3","GPIO":&#91;17,255,0,255,255,0,0,0,21,56,255,0,255],"FLAG":0,"BASE":1}</code></pre>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="358" height="531" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-3.png" alt="" class="wp-image-2980" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-3.png?w=358&amp;ssl=1 358w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-3.png?resize=202%2C300&amp;ssl=1 202w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-3.png?resize=270%2C400&amp;ssl=1 270w" sizes="(max-width: 358px) 100vw, 358px" /><figcaption>Nastavení šablony pro Sonoff Basic v Tasmota</figcaption></figure></div>



<p>Základní obrazovka Tasmoty pak po restartu  by měla vypadat nějak takto:</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="366" height="567" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-7.png" alt="" class="wp-image-3005" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-7.png?w=366&amp;ssl=1 366w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-7.png?resize=194%2C300&amp;ssl=1 194w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/12/image-7.png?resize=270%2C418&amp;ssl=1 270w" sizes="(max-width: 366px) 100vw, 366px" /><figcaption>Základní obrazovka Tasmota</figcaption></figure></div>



<p>Pokud máte nějaké své vlastní zkušenosti s poslední verzí a nebo z nějakého důvodu preferujete jednu verzi, dejte vědět do komentářů.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/sonoff-basic-r3-predstaveni-porovnani-a-nahrani-firmware-tasmota/">Sonoff Basic R3 &#8211; chytrý WiFi spínač  &#8211; představení, porovnání a nahrání firmware Tasmota</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/sonoff-basic-r3-predstaveni-porovnani-a-nahrani-firmware-tasmota/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2978</post-id>	</item>
		<item>
		<title>Hackujeme WiFi zásuvky 2 &#8211; ESP82xx jako WiFi můstek</title>
		<link>https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-2-esp82xx-jako-wifi-mustek/</link>
					<comments>https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-2-esp82xx-jako-wifi-mustek/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Tue, 29 Oct 2019 13:55:12 +0000</pubDate>
				<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[esp8266]]></category>
		<category><![CDATA[esphome]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<category><![CDATA[tuya]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=2826</guid>

					<description><![CDATA[<p>Dnes si trochu zjednodušíme život při flashování Tuya zařízení a podíváme se jak si připravit ESP82xx jako náhradu WiFi můstku za například mobilní telefon.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-2-esp82xx-jako-wifi-mustek/">Hackujeme WiFi zásuvky 2 &#8211; ESP82xx jako WiFi můstek</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Pokud jste se již pokoušeli přehrát <strong>Tuya</strong> <strong>firmware</strong> pomocí návodu <a href="https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-vlastni-firmware-bez-rozebrani/">v minulém článku</a>, tak jste si asi taky říkali jako já, že není úplně komfortní nutnost použití ještě dalšího WiFi zařízení pro připojení k <code>vtrust-flash</code> WiFi.</p>



<p>Naneštěstí nejsme jediní a <a href="https://github.com/meingraham">Michael Ingraham</a> připravil jednoduchý <strong>Arduino projekt,</strong> který tento krok přesouvá na jakýkoliv mikrokontroler s ESP82xx čipem. Nabízí se tak vyloženě použití například <strong>Wemos D1 Mini</strong>, na kterém si to ukážeme.</p>



<p>Pokud náhodou ještě <strong>Wemos D1 Mini </strong>nemáte, tak si ho můžeme obstarat například na <a class="thirstylink" title="AliExpress - Wemos D1 Mini" href="https://blog.vyoralek.cz/go/aliexpress-wemos-d1-mini/" data-shortcode="true">AliExpressu</a> za symbolické $2 (tj. nějaký necelých 50kč). Popis funkčnosti této desky jsem již sepsal poměrně v historii <a href="https://blog.vyoralek.cz/iot/zakladni-rozdily-cipu-espressif-esp8266-vs-esp32/">v tomto článku</a>.</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2017/09/Snímek-obrazovky-2017-09-22-v-21.41.32.png?resize=334%2C222&#038;ssl=1" alt="" class="wp-image-166" width="334" height="222" data-recalc-dims="1" /><figcaption>Wemos D1 Mini</figcaption></figure></div>



<p>Nyní máme dvě možnosti &#8211; buď si stáhneme hotový obraz z <a href="https://github.com/digiblur/Tuya-Convert-Donor">Githubu</a> a nebo si stáhneme <a href="https://github.com/digiblur/Tuya-Convert-Donor">Arduino projekt </a>a obraz si zkompilujeme.</p>



<p>Jelikož nepotřebujeme nic měnit, doporučuji si stáhnout rovnou obraz &#8211; pokud si ale chcete být skutečně jistí co do ESP8266 nahrajete tak si projekt zkompilujte. </p>



<p>Na nahrání firmware doporučuji použít <strong>esptool</strong> (<a href="https://blog.vyoralek.cz/iot/esp8266-a-esp32-zaloha-a-nahrani-noveho-firmware-pomoci-esptool/">článek zde</a>).</p>



<pre class="wp-block-code"><code>esptool.py write_flash 0x00000 tc_donor_mini.generic_1M.bin</code></pre>



<p>Jakmile máme zařízení připraveno můžeme nastartovat<strong> Tuya-Convert </strong>pomocí příkazu <code>start_flash.sh</code>. Před vytvořením WiFi <code>vtrust-flash</code> by měl Wemos D1 Mini přerušovaně modře blikat. Jakmile se připojí změní dioda stav na svícení modře. Tím máme splněný bod s WiFi můstkem a můžeme vesele pokračovat v dalším kroku.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-2-esp82xx-jako-wifi-mustek/">Hackujeme WiFi zásuvky 2 &#8211; ESP82xx jako WiFi můstek</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-2-esp82xx-jako-wifi-mustek/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2826</post-id>	</item>
		<item>
		<title>Sonoff RF Bridge &#8211; nahrání firmware Tasmota</title>
		<link>https://blog.vyoralek.cz/iot/sonoff-rf-bridge-nahrani-firmware-sonoff-tasmota/</link>
					<comments>https://blog.vyoralek.cz/iot/sonoff-rf-bridge-nahrani-firmware-sonoff-tasmota/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Sun, 20 Oct 2019 16:36:17 +0000</pubDate>
				<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[Sonoff]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=2759</guid>

					<description><![CDATA[<p>Konečně něco jiného než rostliny! Dnes se podíváme jak do Sonoff RF Bridge produktu nahrát alternativní firmware Sonoff-Tasmota.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/sonoff-rf-bridge-nahrani-firmware-sonoff-tasmota/">Sonoff RF Bridge &#8211; nahrání firmware Tasmota</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Sonoff RF Bridge ve stručnosti slouží jako jakýsi most mezi WiFi a produkty běžící na technologii 433MHz. Díky tomtu mostu tak můžete jednak ovládat z vašeho centra domácnosti produkty běžící na 433MHz &#8211; např. vytvořit si automatizace a nebo naopak pomocí ovládačů běžící na 433MHz ovládat prvky běžící na úplně jiné technologii &#8211; WiFi, Zigbee atp.</p>



<figure class="wp-block-image"><img decoding="async" src="https://i0.wp.com/ae01.alicdn.com/kf/HTB1s3R5mQfb_uJjSsrbq6z6bVXa6.jpg?w=770&#038;ssl=1" alt="1" data-recalc-dims="1"/></figure>



<p>Pokud produkt nemáte, doporučuji jej za cca. $12-13 pořídit na <a class="thirstylink" title="AliExpress - Sonoff RF Bridge" href="https://blog.vyoralek.cz/go/aliexpress-sonoff-rf-bridge/" data-shortcode="true">AliExpressu</a>.</p>



<p>Dnešní článek bude striktně zaměřen na flashování tohoto produktu &#8211; tj. nahrání Sonoff-Tasmota firmware &#8211; jako určitého základu pro lepší integraci tohoto produktu do systému chytré domácnosti, např. HomeAssistenta.</p>



<h2 class="wp-block-heading">Rozebrání produktu</h2>



<p>Narozdíl od Sonoff přepínačů (Sonoff Basic, Sonoff Dual, Sonoff TH 1x atp) je v případě Sonoff RF Bridge drobně složitější dostat se dovnitř. Respektivě drobný trik tkví v tom, že krabička dohromady nedrží dohromady díky zacvaknutí, ale u tohoto produktu jsou použity šroubky, které jsou navíc tak trochu schované.</p>



<p>Pokud se chcete dostat dovnitř krabičky, je potřeba se spodní strany nejprve odstranit čtyři gumové záslepky &#8211; jedna v každém rohu.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="3000" height="2000" src="https://i1.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?fit=770%2C514&amp;ssl=1" alt="" class="wp-image-2764" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?w=3000&amp;ssl=1 3000w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?resize=370%2C247&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?resize=570%2C380&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?resize=740%2C493&amp;ssl=1 740w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?w=1540&amp;ssl=1 1540w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2095.jpg?w=2310&amp;ssl=1 2310w" sizes="(max-width: 770px) 100vw, 770px" /><figcaption>Sonoff RF Bridge &#8211; pohled zespoda</figcaption></figure>



<p>Jakmile máme záslepky pryč, odmontujeme postupně i všechny čtyři šroubky a spodní část můžeme odklopit.</p>



<p>Uvnitř se ukrývá samotná deska, které už dále přišroubované není, takže si ji vyndáme.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="3000" height="2000" src="https://i2.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?fit=770%2C514&amp;ssl=1" alt="" class="wp-image-2760" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?w=3000&amp;ssl=1 3000w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?resize=370%2C247&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?resize=570%2C380&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?resize=740%2C493&amp;ssl=1 740w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?w=1540&amp;ssl=1 1540w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2097.jpg?w=2310&amp;ssl=1 2310w" sizes="(max-width: 770px) 100vw, 770px" /><figcaption>Sonoff RF Bridge deska &#8211; pohled zeshora</figcaption></figure>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="3000" height="2000" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?fit=770%2C514&amp;ssl=1" alt="" class="wp-image-2761" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?w=3000&amp;ssl=1 3000w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?resize=370%2C247&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?resize=570%2C380&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?resize=740%2C493&amp;ssl=1 740w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?w=1540&amp;ssl=1 1540w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2098.jpg?w=2310&amp;ssl=1 2310w" sizes="(max-width: 770px) 100vw, 770px" /><figcaption>Sonoff RF Bridge deska &#8211; pohled zespoda</figcaption></figure>



<p>Abychom se dostali k přepínači, který budeme muset před flashováním přepnout je potřeba opatrně nadzvednout bílou světelnou destičku. Zároveň se nám tím odkryje i popisek pinů, které budeme potřebovat k nahrávání &#8211; je k nim přístup i zespoda.</p>



<h2 class="wp-block-heading">Náhrada firmware &#8211; Tasmota</h2>



<p>Než začneme se samotným nahráváním je potřeba si připravit pár věci.</p>



<h3 class="wp-block-heading">Příprava před flashováním</h3>



<p>Jako pro všechny ostatní Sonoff produkty budeme pro fleshování Sonoff RF Bridge potřebovat UART &#8211; USB to TTL konvertor. Já dlouhodobě používám <a class="thirstylink" title="AliExpress - CP2102 USB to TTL UART" href="https://blog.vyoralek.cz/go/aliexpress-cp2102-usb-to-ttl-uart/" data-shortcode="true">tento</a> &#8211; vypadá hezky,&nbsp; funguje skvěle a cena je necelých $3 (cca. 65Kč).</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="498" height="327" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/07/uart1.png?resize=498%2C327&#038;ssl=1" alt="" class="wp-image-421" data-recalc-dims="1"/><figcaption>USB to TTL konvertor</figcaption></figure></div>



<p>Pájení headeru na desku jsem tentokráte vynechal a použil raději kabel s piny na konci, které jsem zasunul přímo do desky.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="389" height="398" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/image-12.png" alt="" class="wp-image-2767" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/image-12.png?w=389&amp;ssl=1 389w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/image-12.png?resize=293%2C300&amp;ssl=1 293w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/image-12.png?resize=370%2C379&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/image-12.png?resize=270%2C276&amp;ssl=1 270w" sizes="(max-width: 389px) 100vw, 389px" /><figcaption>Schéma Sonoff RF Bridge</figcaption></figure></div>



<p>Postup tak vypadá nějak takto:</p>



<ol><li><strong>nastavíme přepínač S2 do pozice off </strong>&#8211; ten najdeme zhruba uprostřed desky a přepneme ho do pozice směrem k bílé destičce &#8211; vyznačen modře na schématu</li><li><strong>zapojíme jednotlivé piny z UARTu</strong> v tomhle pořadí (je stejné jako na UARTu zmíněném výše) &#8211; začátek je čtvercová díra a ve schématu vyznačeno červeně<ol><li>3V3 voltů</li><li>RX</li><li>TX</li><li>GND</li></ol></li><li>p<strong>řed připojením s UARTem podržíme boční tlačítko</strong> &#8211; vyznačeno žlutě &#8211; pro přepnutí do nahrávácího módu</li></ol>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="3000" height="2000" src="https://i1.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?fit=770%2C514&amp;ssl=1" alt="" class="wp-image-2762" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?w=3000&amp;ssl=1 3000w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?resize=370%2C247&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?resize=570%2C380&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?resize=740%2C493&amp;ssl=1 740w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?w=1540&amp;ssl=1 1540w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/DSCF2099.jpg?w=2310&amp;ssl=1 2310w" sizes="(max-width: 770px) 100vw, 770px" /></figure>



<h3 class="wp-block-heading">Stažení Tasmota firmware</h3>



<p>Pokud nemáte nějaký opravdu speciální důvod není už nutné Sonoff-Tasmotu lokálně kompilovat ze zdrojového kódu, ale raději použijeme již hotové binární soubory.</p>



<p>Z adresy <a href="http://thehackbox.org/tasmota/release/">http://thehackbox.org/tasmota/release/</a> doporučuji stáhnout již hotový soubor <a href="http://thehackbox.org/tasmota/release/tasmota-CZ.bin">tasmota-CZ.bin</a>, který je českou verzí Tasmoty.</p>



<h3 class="wp-block-heading">Proces nahrání</h3>



<p>Pro nahrání použijeme <strong>ESPTool</strong>. Detailní popis jsem již dříve sepsal v <a href="https://blog.vyoralek.cz/iot/esp8266-a-esp32-zaloha-a-nahrani-noveho-firmware-pomoci-esptool/">tomto článku</a>.</p>



<p>Nejprve doporučuji udělat zálohu stávajícího obsahu flash paměti:</p>



<pre class="wp-block-code"><code># esptool.py read_flash 0x00000 0x10000 backup.bin
esptool.py v2.7
Found 4 serial ports
Serial port /dev/cu.SLAB_USBtoUART
Connecting........_____....._____....._____....._____.....
Detecting chip type... ESP8266
Chip is ESP8285
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: 84:0d:8e:66:0c:f1
Uploading stub...
Running stub...
Stub running...
65536 (100 %)
65536 (100 %)
Read 65536 bytes at 0x0 in 5.9 seconds (88.2 kbit/s)...
Hard resetting via RTS pin...</code></pre>



<p>Poté smažeme obsah flash paměti:</p>



<pre class="wp-block-code"><code># esptool.py --port /dev/cu.SLAB_USBtoUART erase_flash
esptool.py v2.7
Serial port /dev/cu.SLAB_USBtoUART
Connecting....
Detecting chip type... ESP8266
Chip is ESP8285
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: 84:0d:8e:66:0c:f1
Uploading stub...
Running stub...
Stub running...
Erasing flash (this may take a while)...
Chip erase completed successfully in 3.3s
Hard resetting via RTS pin...</code></pre>



<p>A nakonec nahrajeme Tasmotu:</p>



<pre class="wp-block-code"><code>(base) ➜  anaconda3 esptool.py --port /dev/cu.SLAB_USBtoUART write_flash -fs 1MB -fm dout 0x0 tasmota-CZ.bin
esptool.py v2.7
Serial port /dev/cu.SLAB_USBtoUART
Connecting........_____....._____....._____....
Detecting chip type... ESP8266
Chip is ESP8285
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: 84:0d:8e:66:0c:f1
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Compressed 517152 bytes to 357007...
Wrote 517152 bytes (357007 compressed) at 0x00000000 in 31.5 seconds (effective 131.4 kbit/s)...
Hash of data verified.</code></pre>



<p>Pokud poslední krok skončil bez chyby odpojíme UART od Sonoffu a přeneme přepínač S2 opět do polohy on.</p>



<p>Připojíme MicroUSB kabel s napájením a po chvilce by měla blikat modrá dioda a svítit zelený nápis Sonoff.</p>



<p>V seznamu WiFi sítí si najdeme tasmota-xxxx a k této síti se připojíme. Měli bychom vidět již česky základní nastavení pro WiFi, které vyplníme a po restartu už bychom měli mít přístup do klasického rozhraní Tasmoty běžící na tomto produktu.</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/Snímek0Aobrazovky-2019-10-20-v-16.30.06.png?fit=576%2C1024&amp;ssl=1" alt="" class="wp-image-2769" width="318" height="565" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/Snímek0Aobrazovky-2019-10-20-v-16.30.06.png?w=750&amp;ssl=1 750w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/Snímek0Aobrazovky-2019-10-20-v-16.30.06.png?resize=169%2C300&amp;ssl=1 169w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/Snímek0Aobrazovky-2019-10-20-v-16.30.06.png?resize=576%2C1024&amp;ssl=1 576w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/Snímek0Aobrazovky-2019-10-20-v-16.30.06.png?resize=370%2C658&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/Snímek0Aobrazovky-2019-10-20-v-16.30.06.png?resize=270%2C480&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/Snímek0Aobrazovky-2019-10-20-v-16.30.06.png?resize=570%2C1014&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/10/Snímek0Aobrazovky-2019-10-20-v-16.30.06.png?resize=740%2C1316&amp;ssl=1 740w" sizes="(max-width: 318px) 100vw, 318px" /></figure></div>



<p></p>
<p>The post <a href="https://blog.vyoralek.cz/iot/sonoff-rf-bridge-nahrani-firmware-sonoff-tasmota/">Sonoff RF Bridge &#8211; nahrání firmware Tasmota</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/sonoff-rf-bridge-nahrani-firmware-sonoff-tasmota/feed/</wfw:commentRss>
			<slash:comments>23</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2759</post-id>	</item>
		<item>
		<title>Hackujeme WiFi zásuvky &#8211; vlastní firmware bez rozebrání</title>
		<link>https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-vlastni-firmware-bez-rozebrani/</link>
					<comments>https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-vlastni-firmware-bez-rozebrani/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Wed, 27 Mar 2019 18:36:15 +0000</pubDate>
				<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[esphom]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=1970</guid>

					<description><![CDATA[<p>Dnešní článek bude poněkud více softwarový a ukážeme si jak přeflešovat WiFi zásuvky běžící na tuya cloudu bez nutnosti fyzického rozebrání. Ukážeme si navíc hned dva firmware - Sonoff-Tasmota a ESPHome.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-vlastni-firmware-bez-rozebrani/">Hackujeme WiFi zásuvky &#8211; vlastní firmware bez rozebrání</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p style="background-color:#fffdbd;font-size:19px" class="has-background"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f1ec-1f1e7.png" alt="🇬🇧" class="wp-smiley" style="height: 1em; max-height: 1em;" /> This <strong>article is also available in English</strong> on my second blog <a href="https://lovetechstuff.com/iot-products/how-to-flash-wifi-socket-without-disassembly/">lovetechstuff.com</a></p>



<h2 class="wp-block-heading">Co <g class="gr_ gr_3 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="3" data-gr-id="3">je</g> tuya-convert?</h2>



<p><strong>Michael Steigerwald</strong>, zakladatel německého startupu <a href="https://www.vtrust.de/">VTRUST</a> díky reverznímu inženýrství vypátral, jak čínská firma <a href="https://en.tuya.com/">tuya</a> provádí <strong>vzdálenou aktualizaci firmware </strong>na jednotlivých zařízeních &#8211; tuya je aktuálně jedním z největších hráčů na poli IoT a dodává své řešení pro více jak 10tisíc výrobců.</p>



<p>Michaela to přivedlo k myšlence použít tento způsob vzdálené aktualizace pro <strong>nahrání vlastního firmware mimo cloud </strong>&#8211; v principu jde o nahrání firmware bez nutnosti zařízení rozebírat.</p>



<p><a href="https://github.com/ct-Open-Source/tuya-convert">Tuya-convert </a>je sada python skriptů, jejichž cílem je nasimulovat tuya cloud.</p>



<p style="background-color:#caefff" class="has-background"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" />Je vhodné upozornit, že tuya-convert není rozhodně uživatelsky vymazlená aplikace a v případě problémů se můžete hodně zapotit <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" />. Nicméně výsledek bez nutnosti fyzického rozebrání zařízení stojí za to.</p>



<p>Nyní už tak víme co bude naším cílem a pojďme se podívat na celý postup, který si můžeme rozdělit na části:</p>



<ol><li><strong>Příprava a instalace</strong> <strong>tuya-convert</strong></li><li><strong>Příprava</strong> <strong>alternativního firmware</strong></li><li><strong>Podstrčení alternativního firmware </strong>pomocí tuya-convert</li><li><strong>Finální ladění</strong></li></ol>



<p style="background-color:#fff29e" class="has-background"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f941.png" alt="🥁" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Mějte na paměti, že při nahrávání <strong>může dojít k nečekaným problémům</strong>, které může způsobit <strong>nefukčnost zařízení</strong> kam firmware nahráváte &#8211; tzv. zcihlení a bude nutné zařízení fyzicky rozebrat.</p>



<p style="background-color:#fff29e" class="has-background"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f941.png" alt="🥁" class="wp-smiley" style="height: 1em; max-height: 1em;" />V současné chvíli <strong>není možné přefleshovat zařízení,</strong> které obsahuje originální <strong>firmware verze 1.0.5</strong>. Před tím než začnete s fleshováním proto neprovádějte spojení s aplikací výrobce &#8211; je dost možné, že se v tomto případě aktualizace v pozadí provede.</p>



<h2 class="wp-block-heading">1. Příprava <g class="gr_ gr_4 gr-alert gr_gramm gr_inline_cards gr_run_anim Grammar multiReplace" id="4" data-gr-id="4">a <g class="gr_ gr_3 gr-alert gr_spell gr_inline_cards gr_disable_anim_appear ContextualSpelling ins-del multiReplace" id="3" data-gr-id="3">instalace</g></g> tuya-convert</h2>



<p>Pro instalaci tuya-convert budeme potřebovat počítač s operačním systémem Linux a ideálně kombinací ethernetu + WiFi popř dvou WiFi zařízení.</p>



<p>Jako ideální se jeví jeden z nejrozšířenějších minipočítačů Raspberry Pi 3B+ (pokud nemáte pak na <a class="thirstylink" title="Alza - Raspberry Pi 3 B+" href="https://blog.vyoralek.cz/go/alza-raspberry-pi-3-b/" data-shortcode="true">Alza</a> nebo <a class="thirstylink" title="AliExpress - Raspberry Pi 3 B+" href="https://blog.vyoralek.cz/go/aliexpress-raspberry-pi-3-b/" data-shortcode="true">AliExpress</a>), popř. i starší verze bez plus.</p>



<p>My si návod dnes ozvláštníme a podíváme se na drobně složitější postup v případě použití Armbian OS se základní deskou NanoPi M4 (nedávno jsem <a href="https://blog.vyoralek.cz/iot/nanopi-m4-deska-pro-narocnejsi-uzivatele/">sepsal recenzi</a>, k dostání na <a class="thirstylink" title="AliExpress - NanoPi M4" href="https://blog.vyoralek.cz/go/aliexpress-nanopi-m4/" data-shortcode="true">AliExpressu</a>).</p>



<p style="background-color:#caefff" class="has-background"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" />Můžete použít minipočítač co už máte např. na HomeAssistant, ale doporučuju v tomhle případě si připravit separátní SD kartu a nainstalovat čistý nový systém jen pro účely tuya-convert.</p>



<h3 class="wp-block-heading">Instalace operačního systému &#8211; Armbian OS</h3>



<p>Instalace bude poměrně přímočará a rychlá, jelikož můžeme použít předpřipravených image (obrazů) pro NanoPi M4.</p>



<hr class="wp-block-separator"/>



<h4 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f579.png" alt="🕹" class="wp-smiley" style="height: 1em; max-height: 1em;" />Vsuvka: Použití Ubuntu </h4>



<p>Pokud už z jakéhokoliv důvodu potřebujete nebo chcete použít Ubuntu dostanete při spuštění tuya-convert nejspíše následující chybu:</p>



<pre class="wp-block-code"><code>dnsmasq: failed to create listening socket for port 53: Address already in use</code></pre>



<p> Ještě před spuštěním tuya-convert je potřeba zavolat zastavení služby běžící na stejném portu jako potřebný dnsmasq:</p>



<pre class="wp-block-code"><code>sudo systemctl stop systemd-resolved</code></pre>



<hr class="wp-block-separator"/>



<p>Já nejprve zkoušel instalaci s <strong>Ubuntu</strong>, ale doporučuji zvolit tentokráte raději <strong>Debian</strong>. Vyhnete se tak výše popsanému problému s dnsmasq.</p>



<p>Diskové image jsou k dispozici na webu <a href="https://www.armbian.com/orange-pi-zero-2-h5/">Armbianu</a> a stáhněte si tedy verzi <strong>Armbian Stretch</strong> (obsahuje Debian).</p>



<p>Pro nahrání image na SD kartu použijeme jako obvykle aplikaci <a href="https://www.balena.io/etcher/">Etcher</a>.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="789" height="471" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/orange-pi-image.png" alt="" class="wp-image-1971"/></figure>



<p>Po nastartování z SD karty použijeme přihlášení <code>root</code> / <code>1234</code> a následně budeme muset heslo změnit dle naší libosti.</p>



<p>Provedeme aktualizaci všech balíčků (<code>apt update &amp;&amp; apt upgrade</code>) a zapneme si ssh v utilitě <code>armbian-config</code>.</p>



<h3 class="wp-block-heading">Instalace tuya-convert repositáře</h3>



<p>Tím máme základní systém připravený a můžeme se vrhnout do naklonování tuya-convert repozitáře a spuštění instalace potřebných balíčků:</p>



<pre class="wp-block-code"><code>git clone https://github.com/ct-Open-Source/tuya-convert
cd tuya-convert
./install_prereq.sh</code></pre>



<p>Instalace by měla skončit s následujícími řádky:</p>



<pre class="wp-block-code"><code>Installing collected packages: paho-mqtt, pyaes, tornado, sslpsk
Successfully installed paho-mqtt-1.4.0 pyaes-1.6.1 sslpsk-1.0.0 tornado-6.0.3
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting git+https://github.com/M4dmartig4n/sslpsk.git
  Cloning https://github.com/M4dmartig4n/sslpsk.git to /tmp/pip-req-build-UMSiZZ
Requirement already satisfied: pycrypto in /usr/lib/python2.7/dist-packages (2.6.1)
Building wheels for collected packages: sslpsk
  Running setup.py bdist_wheel for sslpsk ... done
  Stored in directory: /tmp/pip-ephem-wheel-cache-O8KnG9/wheels/c8/51/1e/5094f34953a89ff37e7a2b3a6327fc9364e532ccb8be3bf39c
Successfully built sslpsk
Installing collected packages: sslpsk
Successfully installed sslpsk-1.0.0
Ready to start upgrade</code></pre>



<hr class="wp-block-separator"/>



<h4 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f579.png" alt="🕹" class="wp-smiley" style="height: 1em; max-height: 1em;" />Možný problém &#8211; ImportError: No module named Crypto.Cipher</h4>



<p>Pokud jsem po těchto krocích tuya-convert spustil, tak vše vypadalo vpořádku, ale proces nahrávání nefungoval. Podíval jsem se proto do logů a v nich našel hlášku o chybějící knihovně Crypto.Cipher. Netuším tedy, zda je to potřeba instalovat jen v Armbianu, nicméně pokud byste se s hláškou setkali tak je to možné vyřešit pomocí:</p>



<pre class="wp-block-code"><code>apt-get install python3-dev
pip install pycrypto</code></pre>



<hr class="wp-block-separator"/>



<p>Nyní máme tuya-convert připravený a můžeme se vrhnout na přípravu firmware.</p>



<h2 class="wp-block-heading">2.<strong>Příprava</strong> <strong>alternativního firmware</strong></h2>



<p>Možnosti máme už v dnešní době povícero, ale jak už zřejmě pravidelní čtenáři blogu tuší, já se zaměřím na dvě &#8211; Sonoff-Tasmota a ESPHome.</p>



<p>Jako produkt pro přeflešování jsem si vybral <strong>Blitzwolf BW-SHP2</strong> (k dostání na <a class="thirstylink" title="AliExpress - BlitzWolf BW-SHP2" href="https://blog.vyoralek.cz/go/aliexpress-blitzwolf-bw-shp2/" data-shortcode="true">AliExpress</a>, <a class="thirstylink" title="Banggood - BlitzWolf BW-SHP2" href="https://blog.vyoralek.cz/go/banggood-blitzwolf-bw-shp2/" data-shortcode="true">Banggood</a>), což je tentýž produkt jako <strong>Koogeek KLSP1</strong> (<a class="thirstylink" title="AliExpress - Koogeek KLSP1" href="https://blog.vyoralek.cz/go/aliexpress-koogeek-klsp1/" data-shortcode="true">AliExpress</a>) a nebo <strong>Gosund SP1</strong> .. a zřejmě nějaké další. </p>



<p>Produkty jsou fyzicky vyrobeny v číně firmou tyua a liší se jen drobně na základě požadavků prodejců, kteří je pak dále distribují pod svými značkami.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="792" height="296" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/wifi-sockets.png" alt="" class="wp-image-1998"/></figure>



<p>Velkou výhodou produktu je cena &#8211; cca. $13 (300Kč). Zásadní nevýhodou, ale může být německý konektor do zásuvky &#8211; <a href="https://blog.vyoralek.cz/iot/eu-zasuvky-dvojiho-typu/">rozdíly mezi německou a francouzskou verzí jsem sepsal v článku</a>. </p>



<p>Nicméně postup přípravy firmware i nahrávání přes tyua-convert by měl být velice podobný.</p>



<h3 class="wp-block-heading">Sonoff-Tasmota</h3>



<p>Pro Sonoff-Tasmota není potřeba dělat nějaké speciální přípravy. Výhodou může být, že aktuálně je základní Sonoff-Basic varianta obsažena v tuya-convert a není potřeba tedy nic stahovat. Samotné nastavení pro zmiňované zásuvky si ukážeme v poslední části.</p>



<h3 class="wp-block-heading">ESPHome</h3>



<p>ESPHome má poněkud odlišnou filozofii. Namísto poměrně obecného image je potřeba zkompilovat image specifickou pro náš produkt. Je potřeba se tedy už nyní podívat na konfiguraci.</p>



<p>Na postup instalace ESPHome a základní práci se prosím koukněte do <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">staršího článku</a>.</p>



<p>Nazačátek doporučuji udělat něco podobného jako Sonoff-Basic, tedy úplně základní firmware ještě bez dalších funkcionalit.</p>



<p>Pro zmiňované zásuvky by nám měla stačit následující konfigurace:</p>



<pre class="wp-block-code"><code>esphome:
  name: blitzwolf01
  platform: ESP8266
  board: esp8285

wifi:
  ssid: '&lt;wifi_nazev>'
  password: '&lt;wifi_heslo>'

logger:

web_server:
  port: 80

api:

ota:</code></pre>



<p> Konfiguraci v dashboardu ESPHome <strong>zkontrolujeme</strong> a pomocí ikonky tří teček dáme <strong>kompilaci</strong>. Výsledný soubor si pak přeneseme na minipočítač do adresáře files v tuya-convert.</p>



<p>Další funkcionality si přidáme v poslední kapitole.</p>



<h2 class="wp-block-heading"><strong>3. Podstrčení alternativního firmware </strong>pomocí tuya-convert</h2>



<p>Konečně tady máme kapitolu, kde využijeme tyua-convert naplno.</p>



<p>Aplikaci spustíme pomocí <code>./start_flash.sh</code> a objeví se nám obrazovka s požadavkem na napsání slova <strong>yes</strong> a potvrzení <strong>Enterem</strong>. Jakmile to uděláme tuya-convert nastartuje hned několik služeb:</p>



<ul><li><strong>WiFi access point</strong> s názvem vtrust-flash</li><li><strong>Webový server </strong>pro HTTP komunikaci</li><li><strong>MQTT server</strong> Mosqutto pro MQTT komunikaci</li></ul>



<pre class="wp-block-code"><code>======================================================
TUYA-CONVERT

https://github.com/ct-Open-Source/tuya-convert
... 
... CAN NOT be held accountable for ANY DAMAGE or LOSS OF FUNCTIONALITY by typing yes + Enter 

yes
======================================================
  Starting AP in a screen.
  Stopping any apache web server
  Starting web server in a screen
  Starting Mosquitto in a screen
  Starting PSK frontend in a screen</code></pre>



<p>Nyní je potřeba udělat dva další kroky:</p>



<ol><li><strong>připojit se</strong> z jakéhokoliv zařízení podporující WiFi na nově vytvořený <strong>AP point </strong>s názvem <strong>vtrush-flash</strong> &#8211; ideální je použít mobilní telefon. <s>Heslo do sítě je </s><strong><s>flashmeifyoucan</s></strong><s>.</s> &#8211; v nejnovější verzi bylo heslo na WiFi odstraněno</li><li><strong>zapojit zařízení,</strong> které chcete přefleshovat do zásuvky a <strong>inicializovat párovací mód</strong> &#8211; jelikož zařízení nebylo ještě použito mělo by naskočit v tomto režimu automaticky. Poznáte to to podle rychle blikající modré diody.</li></ol>



<p class="has-background has-gridlove-highlight-acc-background-color"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" />K prvnímu kroku mám skvělý update &#8211; existuje řešení v podobě Arduino projektu, které nahrazuje nutnost připojovat například mobilní telefon do AP pointu vtrush-flash &#8211; podobnosti jsem sepsal <a href="https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-2-esp82xx-jako-wifi-mustek/">do samostatného článku.</a></p>



<p>Jakmile máte tyto dva body hotové můžete zmáčknout enter a proces se posune do dalšího kroku:</p>



<pre class="wp-block-code"><code>======================================================
Starting smart config pairing procedure
Waiting for the device to install the intermediate firmware
Put device in EZ config mode (blinking fast)
Sending SSID                  vtrust-flash
Sending wifiPassword
Sending token                 00000000
Sending secret                0101
................
SmartConfig complete.
Resending SmartConfig Packets</code></pre>



<p>Nyní jste se dostali do nejproblematičtějšího bodu &#8211; alespoň u mě to tak bylo. Pro lepší přehled jestli proces pokračuje doporučuju se připojit ještě přes jednu konzoli na minipočítač a spustit si výpis logu:</p>



<pre class="wp-block-code"><code>cd tuya-convert/scripts
tail -f smarthack-wifi.log</code></pre>



<p>Najdete zde veškeré informace o činnosti nově vytvořeného WiFi AP a jakmile se fleshované zařízení objeví v tomto logu máte napůl vyhráno.</p>



<p>Na začátku bude v logu pouze inicializace:</p>



<pre class="wp-block-code"><code>root@nanopim4:tuya-convert/scripts ‹master›# tail -f smarthack-wifi.log
Creating new /etc/dnsmasq.conf...
Writing hostapd config file...
Configuring AP interface...
Applying iptables rules...
Starting DNSMASQ server...
Starting AP on wlan0 in screen terminal...
Configuration file: /etc/hostapd/hostapd.conf
Using interface wlan0 with hwaddr b0:f1:ec:65:xx:xx and ssid "vtrust-flash"
wlan0: interface state UNINITIALIZED->ENABLED
wlan0: AP-ENABLED</code></pre>



<p>Jakmile se připojíte mobilní telefonem pak by se v logu o tom měla objevit informace:</p>



<pre class="wp-block-code"><code>wlan0: STA f4:31:c3:2b:xx:xx IEEE 802.11: associated
wlan0: AP-STA-CONNECTED f4:31:c3:2b:xx:xx
wlan0: STA f4:31:c3:2b:xx:xx RADIUS: starting accounting session 20CEAEEFCA602DA5
wlan0: STA f4:31:c3:2b:xx:xx WPA: pairwise key handshake completed (RSN)</code></pre>



<p>&#8230; a konečně nakonec pokud se připojí i flashované zařízení:</p>



<pre class="wp-block-code"><code>wlan0: STA dc:4f:22:fe:xx:xx IEEE 802.11: associated
wlan0: AP-STA-CONNECTED dc:4f:22:fe:xx:xx</code></pre>



<p style="background-color:#caefff" class="has-background"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" />Pokud zařízení v logu nevídíte pak se mi osvědčilo vypínat tuya-convert a zapnout znovu. Bohužel kromě Blitzwolf to nebylo vždy napoprvé a moc nerozumím proč.</p>



<p>Po navázání spojení se začne automaticky provádět <strong>záloha stávajícího firmware</strong> flashovaného zařízení &#8211; můžete se tak teoreticky vrátit později zpět na původní firmware. Soubor je uložen do kořenového adresáře tuya-convert.</p>



<pre class="wp-block-code"><code>IoT-device is online with ip 10.42.42.42
Fetching firmware backup
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1024k  100 1024k    0     0  26642      0  0:00:39  0:00:39 --:--:-- 24706
curl: Saved to filename 'firmware-c49c5e.bin'
======================================================
Getting Info from IoT-device
VTRUST-FLASH 1.1
(c) VTRUST GMBH https://www.vtrust.de/35c3/
READ FLASH: http://10.42.42.42/backup
ChipID: c49c5e
MAC: 60:01:94:C4:xx:xx
BootVersion: 4
BootMode: normal
FlashMode: 1M DOUT @ 40MHz
FlashChipId: 144051
FlashChipRealSize: 1024K
Active Userspace: user2 0x81000

======================================================
Please make sure to note the correct SPI flash mode!
Installing an alternative firmware with the wrong flash mode will leave the ESP unable to boot!

Next steps:
1. To go back to the orginal software
   # curl http://10.42.42.42/undo

2. Be sure the conversion software runs in user2
   # curl http://10.42.42.42/flash2

3. Flash a third party firmware to the device
BE SURE THE FIRMWARE FITS THE DEVICE AND USES THE CORRECT FLASH MODE!
MAXIMUM SIZE IS 512KB
put or link it to ./files/thirdparty.bin
A basic build of Sonoff-Tasmota v6.5.0 is already included in this repository.
   # curl http://10.42.42.42/flash3
Alternatively let the device download and flash a file via HTTP:
   # curl http://10.42.42.42/flashURL?url=http://10.42.42.1/files/thirdparty.bin</code></pre>



<p>Pokud jste se dostali až sem, tak zbývá poslední krok. Tím je nahrání alternativního firmware.</p>



<p>V případě <strong>Sonoff-Tasmota</strong> v základní konfiguraci Sonoff-Basic zadáme příkaz:</p>



<pre class="wp-block-code"><code>curl http://10.42.42.42/flash3</code></pre>



<p>Pokud chceme rovnou nahrát připravený <strong>ESPHome</strong> firmware pak změníme symbolický link thirdparty.bin, aby neukazoval na sonoff-basic.bin, ale náš firmware</p>



<p>Proces nahrání pak spustíme příkazem:</p>



<pre class="wp-block-code"><code>curl http://10.42.42.42/flashURL?url=http://10.42.42.1/files/thirdparty.bin</code></pre>



<p>Na obrazovce se zobrazí informace, že firmware bude nahrát a poté bude zařízení automaticky restartováno.</p>



<h2 class="wp-block-heading">4. Finální ladění</h2>



<p>Ukážeme si opět dvě možnosti. První pro Sonoff-Tasmota a druhou pro ESPHome.</p>



<h3 class="wp-block-heading">Sonoff-Tasmota</h3>



<p>Po přeflešování bychom ve webovém rozhraní Tasmoty měli vidět cca. následující úvodní obrazovku:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="436" height="596" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/sonoff-basic-firmware.png" alt="" class="wp-image-1976"/></figure></div>



<p>Pro zapnutí všech funkcionalit, které nám WiFi zásuvka nabízí je potřeba změnit konfiguraci a k tomu nám nejlépe poslouží Tasmota template. </p>



<p><strong>Blitzwolf BW-SHP2</strong></p>



<pre class="wp-block-code"><code>{"NAME":"BlitzWolf SHP","GPIO":[57,255,56,255,0,134,0,0,131,17,132,21,0],"FLAG":0,"BASE":45}</code></pre>



<p>a nebo v případě novější verze 2.3 je potřeba nastavit jako Gosund SP1 v23, viz. níže.</p>



<p><strong>Blitzwolf BW-SHP6</strong> &#8211; <a href="https://blog.vyoralek.cz/iot/wifi-zasuvka-blitzwolf-bw-shp6/">recenze produktu</a></p>



<pre class="wp-block-code"><code>{"NAME":"BW-SHP6 10A","GPIO":[158,255,56,255,0,134,0,0,131,17,132,21,0],"FLAG":0,"BASE":45}</code></pre>



<p><strong>Koogeek KLSP1</strong></p>



<pre class="wp-block-code"><code>{"NAME":"Koogeek-KLSP1","GPIO":[0,56,0,17,134,132,0,0,131,158,21,0,0],"FLAG":0,"BASE":18}</code></pre>



<p><strong>Gosund SP1</strong></p>



<pre class="wp-block-code"><code>{"NAME":"Gosund SP1 v23","GPIO":[0,56,0,17,134,132,0,0,131,57,21,0,0],"FLAG":0,"BASE":55}</code></pre>



<p>Po restartu bychom nově měli vidět i všechny informace týkající se aktuální a denní spotřeby.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="439" height="792" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/sonoff-basic-firmware2.png" alt="" class="wp-image-1977"/></figure></div>



<h3 class="wp-block-heading">ESPHome</h3>



<p>U ESPHome bychom po úspěšném přefleshování měli v dashboardu vidět zařízení jako Online.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1350" height="386" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/blitzwolfshp2-esphome.png" alt="" class="wp-image-1980"/></figure>



<p>Zároveň si můžeme ověřit webového rozhraní přímo na zařízení:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1198" height="912" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/blitzwolfshp2-esphome2.png" alt="" class="wp-image-1981"/></figure>



<p>Pro přidání podpory funkcionalit zásuvek je potřeba ještě zeditovat konfiguraci a přidat následující řádky:</p>



<pre class="wp-block-code"><code>binary_sensor:
  - platform: gpio
    id: button
    pin:
      number: GPIO3
      inverted: True
    on_press:
      - switch.toggle: fakebutton

switch:
  - platform: template
    name: "Blitzwolf SHP2 Přepínač"
    optimistic: true
    id: fakebutton
    turn_on_action:
    - switch.turn_on: relay
    - light.turn_on: led
    turn_off_action:
    - switch.turn_off: relay
    - light.turn_off: led
  - platform: gpio
    id: relay
    pin: GPIO14

output:
  - platform: esp8266_pwm
    id: pow_blue_led
    pin:
      number: GPIO1
      inverted: True

light:
  - platform: monochromatic
    output: pow_blue_led
    id: led

sensor:
  - platform: wifi_signal
    name: "Blitzwolf SHP2 WiFi Signál"
    update_interval: 60s
  - platform: uptime
    name: "Blitzwolf SHP2 Doba běhu"
  - platform: hlw8012
    sel_pin:
      number: GPIO12
      inverted: True
    cf_pin: GPIO04
    cf1_pin: GPIO05
    current_resistor: "0.0028"
    voltage_divider: "960"
    current:
      name: "Blitzwolf SHP2 Proud"
      unit_of_measurement: A
    voltage:
      name: "Blitzwolf SHP2 Napětí"
      unit_of_measurement: V
    power:
      name: "Blitzwolf SHP2 Příkon"
      unit_of_measurement: W
      id: power
    change_mode_every: 8
    update_interval: 10s
  - platform: total_daily_energy
    name: "Blitzwolf SHP2 Denní spotřeba"
    power_id: power
    unit_of_measurement: W

text_sensor:
  - platform: version
    name: "Blitzwolf SHP2 Verze firmware"

status_led:
  pin: GPIO13

time:
  - platform: sntp
    id: my_time</code></pre>



<p>V logu pak po restartu můžeme vidět jednotlivé parametry:</p>



<pre class="wp-block-code"><code>[16:14:58][C][ota:128]:   Address: blitzwolf01.local:8266
[16:15:02][D][time.sntp:077]: Synchronized time: Wed Mar 27 16:15:30 2019
[16:15:13][D][sensor.hlw8012:084]: Got power=19.6W, voltage=240.4V
[16:15:15][D][api:546]: Client 'Home Assistant 0.90.1 (10.2.1.158)' connected successfully!
[16:15:23][D][sensor.hlw8012:084]: Got power=19.8W, voltage=240.2V</code></pre>



<p>Musím přiznat, že tento článek byl jedním z nejnáročnějších, jelikož nebylo úplně přímočaré najít kombinace, které by fungovaly vzhledem k tomu co jsem měl k dispozici.</p>



<p>Nicméně i přesto a za pomocí tohoto článku byste mohli ušetřit nutnost rozebírat fyzicky zásuvky i vzhledem k tomu, že zrovna tyto zmíně používají poněkud netradiční šroubky s trojúhleníkovým tvarem.</p>



<p>Z nějakého důvodu se mě zajím nepodařilo přefleshovat ani jeden produkt Lonsonho, i přesto že by také měli používat tyua. Doporučuji se jim tedy zatím raději vyhnout.</p>



<p>Pokud máte jakékoliv zkušenosti s tyua-convert budu rád, když se s nimi podělíte v komentářích. Užitečné informace opět jako obvykle přidám rovnou do článku.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-vlastni-firmware-bez-rozebrani/">Hackujeme WiFi zásuvky &#8211; vlastní firmware bez rozebrání</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/hackujeme-wifi-zasuvky-vlastni-firmware-bez-rozebrani/feed/</wfw:commentRss>
			<slash:comments>26</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1970</post-id>	</item>
		<item>
		<title>Centrum chytré domácnosti – HomeAssistant (Hass.io) – 6 část – Sonoff + ESPHome</title>
		<link>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-6-cast-sonoff-esphome/</link>
					<comments>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-6-cast-sonoff-esphome/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Sat, 26 Jan 2019 16:53:39 +0000</pubDate>
				<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[esphome]]></category>
		<category><![CDATA[homeassistant]]></category>
		<category><![CDATA[Sonoff]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=1429</guid>

					<description><![CDATA[<p>V dnešní šesté části seriálu o HomeAssistentovi se podíváme na integraci pomocí poměrně nového firmware ESPHome, který obsahuje přímou integraci na HomeAssistent.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-6-cast-sonoff-esphome/">Centrum chytré domácnosti – HomeAssistant (Hass.io) – 6 část – Sonoff + ESPHome</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Začneme s nejzákladnější produktem od Sonoff a to variantou <strong><a href="http://s.click.aliexpress.com/e/bGYrG1Bi">Sonoff Basic</a>,</strong> na které si ukážeme základy integrace do <strong><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-1-cast/">HomeAssistent</a></strong> v případě firmware <strong><a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">ESPHome</a></strong>. </p>



<p>V druhé části si pak ukážeme drobné modifikace a rovnou i nastavení pro další produkt &#8211; chytrou WiFi zásuvku <strong><a href="http://s.click.aliexpress.com/e/cFMbMdra">Sonoff S20</a></strong>. </p>



<p>V třetí části si ukážeme WiFi přepínač <a href="http://s.click.aliexpress.com/e/SR7soQU"><strong>Sonoff TH10</strong></a> s vodotěsným sensorem.</p>



<p>Ve čtvrté části si představíme tlačítko <strong><a href="http://s.click.aliexpress.com/e/rZrZ7IY">Sonoff Touch</a></strong> EU a <g class="gr_ gr_9 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="9" data-gr-id="9">integraci</g> pomocí entity light.</p>



<p>V páté části se podíváme na 4 kanálovy přepínač <a href="http://s.click.aliexpress.com/e/zh7pyOy"><strong>Sonoff 4CH</strong></a>, který je takovým znásobeným Sonoff Basic.</p>



<p>Jak se pracuje s konfigurací a nahráním <strong>ESPHome</strong> jsem popsal v <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">minulém článku</a>. Pokud tedy potřebuje znát detaily či možnosti instalace a základní práce s ESPHome koukněte nejprve tam.</p>



<p style="background-color:#f0ea98" class="has-background">Veškeré uvedené konfigurace <strong>ESPHome</strong> jsem zaktualizoval na verzi 1.11+. Pokud byste z nějakého důvodu používali starší verzi tak první řádek konfigurace nahraďte za <strong>esphomeyaml</strong>.</p>



<h2 class="wp-block-heading">Možnosti nahrání firmware ESPHome</h2>



<p>Ještě než začneme s konfigurací, bylo by dobré si říct, jaké máme vůbec možnosti nahrání nového firmware s ESPHome do našich Sonoff produktů.</p>



<ol><li><strong>pomocí USB UART</strong> &#8211; první možností, která je nejobecnější je nahrání pomocí <a href="http://s.click.aliexpress.com/e/c0qrIWpa">USB UART</a> &#8211; detailně jsem popisoval například v článku k <a href="https://blog.vyoralek.cz/iot/sonoff-produkty-nahrani-firmware-tasmota/">nahrání Sonoff-Tasmota</a>. Tento způsob budeme muset použít v případě pokud máme na našem Sonoff produktu originální firmware.</li><li><strong>pomocí webového rozhraní Sonoff-Tasmota </strong>&#8211; pokud jsme Sonoff zařízení už fleshovali, pak může být příjemnější nahrát nový firmware přes webové rozhraní Sonoff-Tasmota &#8211; najdeme v menu <strong>Aktualizace firmware</strong> a položka <strong>Aktualizace nahráním souboru.</strong></li></ol>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="411" height="256" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-43.png" alt="Sonoff Tasmota nahrání firmware" class="wp-image-1440"/><figcaption>Nahrání firmware pomocí webového rozhraní Sonoff-Tasmota</figcaption></figure></div>



<h2 class="wp-block-heading">1. Sonoff Basic</h2>



<p>Než se pustíme do specifické konfigurace pro Sonoff Basic je dobré si nejprve sestavit úplně základní firmware obsahující pouze WiFi, logování, API a možnost aktualizace přes WiFi &#8211; OTA.</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/07/sonoff1.png?resize=360%2C290&#038;ssl=1" alt="Sonoff Basic" class="wp-image-368" width="360" height="290" data-recalc-dims="1" /><figcaption>Sonoff Basic</figcaption></figure></div>



<h3 class="wp-block-heading">Základní konfigurace</h3>



<p>V <strong>Dashboardu ESPHome</strong> (jak ho nainstalujeme a spustíme najdete v <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">předchozím článku</a>) klikneme na tlačítko + pro přidání nového zařízení a postupně vyplníme v průvodci následující:</p>



<ol><li><strong>Name of node</strong> &#8211; název zařízení &#8211; sem dáme cokoliv popisující produkt. Mějte ale na paměti, že tento název se použije i pro ID do HomeAssistant a jako textový název pro síťovou adresu.</li><li><strong>Device type </strong>&#8211; typ zařízení &#8211; pro Sonoff necháme výchozí variantu Generic ESP8266.</li><li><strong>WiFi SSID / Password</strong> &#8211; Jméno WiFi a heslo do ní &#8211; dle vašeho nastavení</li><li><strong>OTA Access Password</strong> &#8211; voliteně můžete nastavit heslo pro OTA aktualizaci. Pokud nebudete produkt vystaven přístupu z internetu můžete nechat prázdné.</li></ol>



<p>Tím máme základní konfiguraci téměř hotovou a v seznamu bychom měli vidět naše zařízení.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="770" height="172" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-41.png?resize=770%2C172&#038;ssl=1" alt="" class="wp-image-1430" data-recalc-dims="1"/></figure>



<p>Přeci jen ale bude potřeba udělat ještě jednu drobnou změnu v konfiguraci a tak klikneme na Edit u zařízení a do části esphomeyaml přidáme na konec položku:</p>



<pre class="wp-block-code"><code>board_flash_mode: dout</code></pre>



<p>Celková základní konfigurace by tak měla vypadat nějak takto:</p>



<pre class="wp-block-code"><code>esphome:
  name: sonoff_basic
  platform: ESP8266
  board: esp01_1m
  board_flash_mode: dout

wifi:
  ssid: 'wifi'
  password: 'wifi_heslo'

# Enable logging
logger:

# Enable Home Assistant API
api:

ota:
</code></pre>



<p>Teď nastal pravý čas si nachystat fyzicky Sonoff Basic, který se zmáčknutým tlačítkem připojíme pomocí USB UART do počítače. Tlačítko mačkáme, abychom přepnuli Sonoff do flashovacího módu.</p>



<p>V pravém horním rohu bychom měli po připojení vidět dvě položky:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="372" height="135" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-45.png" alt="Možnosti nahrání firmware" class="wp-image-1449"/></figure></div>



<p>První slouží pro nahrání firmware pomocí WiFi &#8211; použijeme později a druhý položka je náš USB UART. Na Windows bude místo cesty číslo USB portu.</p>



<p>Vybereme tedy druhou položku &#8211; či popřípadě jakoukoliv jinou kde je náš USB UART a klikneme na <strong>Upload</strong>.</p>



<p>Firmware se nejprve zkompiluje a poté automaticky nahraje do našeho Sonoffu.</p>



<pre class="wp-block-code"><code>Checking size .pioenvs/sonoff_basic/firmware.elf
Memory Usage -> http://bit.ly/pio-memory-usage
DATA:    [=====     ]  45.4% (used 37192 bytes from 81920 bytes)
PROGRAM: [===       ]  31.2% (used 319028 bytes from 1023984 bytes)
============================================================================= [SUCCESS] Took 29.53 seconds =============================================================================
INFO Successfully compiled program.
INFO Running:  esptool.py --before default_reset --after hard_reset --chip esp8266 --port /dev/cu.SLAB_USBtoUART write_flash 0x0 wemos.yaml/sonoff_basic/.pioenvs/sonoff_basic/firmware.bin
esptool.py v2.6
Serial port /dev/cu.SLAB_USBtoUART
Connecting....
Chip is ESP8266EX
Features: WiFi
MAC: 68:c6:3a:94:f9:fc
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 1MB
Compressed 323168 bytes to 225797...
Wrote 323168 bytes (225797 compressed) at 0x00000000 in 19.9 seconds (effective 129.8 kbit/s)...
Hash of data verified.</code></pre>



<p>USB UART od Sonoffu odpojíme a připojíme hned zpět &#8211; tím vypneme flashovací mód. Počkáme než nám zezelená ikonka Online.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="773" height="172" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-42.png" alt="ESPHome Dashboard - sonoff basic" class="wp-image-1431"/></figure>



<p>V menu pak klikneme na <strong>Show Logs </strong>a pokud je vše vpořádku měli bychom vidět informace z našeho Sonoffu:</p>



<pre class="wp-block-code"><code>INFO Reading configuration...
INFO Starting log output from sonoff_basic.local using esphomelib API
INFO Connecting to sonoff_basic.local:6053 (10.2.1.181)
INFO Successfully connected to sonoff_basic.local
[16:19:48][I][application:097]: You're running esphomelib v1.10.1 compiled on Jan 23 2019, 22:29:08
[16:19:48][C][wifi:341]: WiFi:
[16:19:48][C][wifi:240]:   SSID: 'brloh'</code></pre>



<h3 class="wp-block-heading">Konfigurace pro Sonoff Basic</h3>



<p>Sonoff Basic už nyní máme úspěšně naflashovaný se základní verzí a pojďme se podívat jaké GPIO máme k dispozici:</p>



<table class="wp-block-table is-style-stripes"><tbody><tr><td><code>GPIO0</code></td><td>Tlačítko (obrácená logika,  HIGH = vypnuto, LOW = zapnuto)</td></tr><tr><td><code>GPIO1</code></td><td><code>RX</code>&nbsp;pin (C1 Pin 2)</td></tr><tr><td><code>GPIO3</code></td><td><code>TX</code>&nbsp;pin (C1 Pin 3)</td></tr><tr><td><code>GPIO12</code></td><td>Přepínač</td></tr><tr><td><code>GPIO13</code></td><td>Zelená LEDka (obrácená <g class="gr_ gr_3 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="3" data-gr-id="3">logika</g>)</td></tr><tr><td><code>GPIO14</code></td><td>Volitelný sensor (C1 Pin 5)</td></tr></tbody></table>



<p>Narozdíl od Sonoff-Tasmota máme v ESPHome propojení jednotlivých prvků Sonoffu v našich rukou, což přináši potřebuju tyto propojky nadefinovat.</p>



<p>Řekněme si tedy, že budeme chtít funkcionalitu co nejvíce podobnou oficiální verzi, tj. vypínání a zapínání přepínače bude možné provést buď vzdáleně a nebo pomocí tlačítka na Sonoffu. Zároveň zelená LEDka bude symbolizovat stav zapnutí/vypnutí přepínače.</p>



<p>Klikneme na <strong>Edit</strong> konfigurace a přidáme následující řádky:</p>



<pre class="wp-block-code"><code>binary_sensor:
  - platform: gpio
    id: button
    device_class: light
    pin:
      number: GPIO0
      mode: INPUT_PULLUP
      inverted: True
    on_press:
      - switch.toggle: fakebutton

switch:
  - platform: template
    name: "Sonoff Basic přepínač"
    optimistic: true
    id: fakebutton
    turn_on_action:
    - switch.turn_on: relay
    - light.turn_on: led
    turn_off_action:
    - switch.turn_off: relay
    - light.turn_off: led
  - platform: gpio
    id: relay
    pin: GPIO12

output:
  - platform: esp8266_pwm
    id: basic_green_led
    pin:
      number: GPIO13
      inverted: True

light:
  - platform: monochromatic
    output: basic_green_led 
    id: led</code></pre>



<p>Co jednotlivé bloky znamenají:</p>



<ul><li><strong>binary_sensor </strong>reprezentuje tlačítko na Sonoffu, které je na pinu GPIO0 a při stisknutí bude přepínat stav fakebutton (o tom dále)</li><li><strong>switch</strong> reprezentuje přepínač &#8211; my však potřebujeme definovat dva:<ul><li><strong>fakebutton</strong> &#8211; jedná se o tzv. virtuální přepínač typu template, který je napojený na tlačítko a provádí dvě akce &#8211; zapnutí/vypnutí jak přepínače tak LEDky</li><li><strong>relay</strong> &#8211; samotný přepínač napojení na GPIO12</li></ul></li><li><strong>output</strong> reprezentuje LEDku napojenou na GPIO13</li><li><strong>light</strong> je určitým prostředníkem pro propojení LEDky a přepínače</li></ul>



<p>Jelikož kód už je poněkud delší klikneme pro jistotu nejprve na tlačítko <strong>Validate</strong>. Než začneme nahrávat přepneme port na OTA &#8211; nyní už můžeme nahrát nový firmware přes WiFi a klikneme na <strong>Upload</strong>.</p>



<p>Pro kontrolu funkčnosti můžeme zkusit zmáčknout fyzické tlačítko na Sonoffu zda se přepíná LEDka. Oproti oficiálnímu firmware a Sonoff-Tasmota si můžeme všimnout, že rozstvícení a zhasínání LEDky je postupné.</p>



<h3 class="wp-block-heading">Integrace do HomeAssistant</h3>



<p>Z logu ESPHome si zjistíme číselnou IP adresu zařízení a v HomeAssistantovi v menu <strong>Nastavení -&gt; Integrace </strong>najdeme <strong>ESPHome</strong> a klikneme na <strong>Konfigurovat</strong>.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="670" height="50" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-46.png" alt="" class="wp-image-1452"/></figure>



<p>Vyskočí na nás dialog, kde do pole Host vyplníme IP adresu zařízení &#8211; můžeme použít i textovou, ale bývá obvykle méně spolehlivá.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="422" height="300" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-47.png" alt="ESPHome HomeAssistant konfigurace" class="wp-image-1453"/></figure></div>



<p>V části <strong>Zkonfigurováno</strong> bychom měli automaticky vidět novou položku se symbolem blesku vyjadřujícího přepínač.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="676" height="74" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-48.png" alt="" class="wp-image-1454"/></figure>



<p>Na Dashboardu HomeAssistanta nám pak taktéž automaticky v sekci Spínač přibyde nová položka:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="456" height="149" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-49.png" alt="" class="wp-image-1455"/></figure></div>



<p>Celý postup integrace mezi Sonoffem a HomeAssistentem se díky přímému API zjednodušil &#8211; není potřeba řešit MQTT a zároveň pro základní nastavení nemusíme vůbec šahat do konfiguračního souboru HomeAssistenta.</p>



<h2 class="wp-block-heading">2. Sonoff S20/S26</h2>



<p>V druhé části si ukážeme další možnosti integrace pomocí ESPHome a použijeme k tomu drobně složitější přepínač od Sonoffu a to WiFi zásuvku <a href="http://s.click.aliexpress.com/e/cFMbMdra">Sonoff S20</a>. Velice podobný postup bude i pro novější model <a href="http://s.click.aliexpress.com/e/2rfAqFa">Sonoff S26</a>.</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/07/sonoff7.png?resize=423%2C316&#038;ssl=1" alt="Sonoff S20" class="wp-image-386" width="423" height="316" data-recalc-dims="1" /><figcaption>Sonoff S20</figcaption></figure></div>



<h3 class="wp-block-heading">Základní konfigurace</h3>



<p>Opět na začátek je vhodné si nejprve nahrát základní konfiguraci &#8211; nebudu to zde rozepisovat znovu &#8211; konfiguraci i postup můžete vzít z první části o Sonoff Basic.</p>



<h3 class="wp-block-heading" id="mce_56">Konfigurace pro Sonoff S20</h3>



<p>Předpokládejme, že Sonoff S20 už nyní máme úspěšně naflashovaný se základní verzí a pojďme se podívat jaké GPIO máme k dispozici:</p>



<table class="wp-block-table is-style-stripes"><tbody><tr><td><code>GPIO0</code></td><td>Tlačítko (obrácená logika, HIGH = vypnuto, LOW = zapnuto)</td></tr><tr><td><code>GPIO1</code></td><td><code>RX</code>&nbsp;pin (for external sensors)</td></tr><tr><td><code>GPIO3</code></td><td><code>TX</code>&nbsp;pin (for external sensors)</td></tr><tr><td><code>GPIO12</code></td><td>Přepínač a modrá stavová LEDka</td></tr><tr><td><code>GPIO13</code></td><td>Zelená LEDka (obrácená logika)</td></tr></tbody></table>



<p>Řekněme si tedy, že budeme chtít následující funkcionalitu: vypínání a zapínání přepínače bude možné provést buď vzdáleně a nebo pomocí tlačítka na Sonoffu. Zelenou LEDku zatím nijak nevyužijeme &#8211; vystačíme si s modrou, která bude svítit pokud je přepínač zaplý a bude vypnutá pokud je i přepínač vyplý.</p>



<p>Spíše pro demonstrační účely si přidáme ještě pár dalších možností, které se mohou hodit, ale nemají obecně vhodné použití:</p>



<ul><li><strong>verze ESPHome</strong> s časem kompilace</li><li><strong>síla WiFi signálu</strong> na zařízení</li><li><strong>doba běhu zařízení </strong>od posledního restartu v sekundách</li></ul>



<p>Klikneme na <strong>Edit</strong> konfigurace a přidáme následující řádky:</p>



<pre class="wp-block-code"><code>binary_sensor:
- platform: gpio
  pin:
    number: GPIO0
    mode: INPUT_PULLUP
    inverted: True
  name: "Sonoff S20 Tlačítko"
  on_press:
    - switch.toggle: relay
- platform: status
  name: "Sonoff S20 Stav"

switch:
- platform: gpio
  name: "Sonoff S20 Přepínač"
  pin: GPIO12
  id: relay

text_sensor:
  - platform: version
    name: "Sonoff S20 Verze"
    
sensor:
  - platform: wifi_signal
    name: "Sonoff S20 WiFi signál"
    update_interval: 60s    
  - platform: uptime
    name: "Sonoff S20 Doba běhu"</code></pre>



<h3 class="wp-block-heading">Integrace do HomeAssistant</h3>



<p>Podobně jako v případě Sonoff Basic v menu <strong>Nastavení -&gt; Integrace </strong>najdeme <strong>ESPHome</strong> a klikneme na <strong>Konfigurovat</strong> a vyplníme IP adresu.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="662" height="64" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-51.png" alt="" class="wp-image-1462"/></figure>



<p>V části <strong>Zkonfigurováno</strong> bychom měli automaticky vidět novou položku hned s několika položkami.</p>



<p>Ve výchozím stavu se nám jednotlivé položky rozházejí podle typů. Pro přehlednost si ale související položky můžeme pomocí souboru <strong>config/group.yaml</strong> seskupit:</p>



<pre class="wp-block-code"><code>s20:
  name: "Sonoff S20"
  control: hidden
  entities:
    - binary_sensor.sonoff_s20_stav
    - binary_sensor.sonoff_s20_tlaciko
    - sensor.sonoff_s20_doba_behu
    - sensor.sonoff_s20_verze
    - sensor.sonoff_s20_wifi_signal
    - switch.sonoff_s20_prepinac</code></pre>



<p>HomeAssistant zrestartujeme a poté bychom měli vidět vše hezky společně:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="451" height="387" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-50.png" alt="" class="wp-image-1461"/></figure></div>



<h2 class="wp-block-heading">3. Sonoff TH10 s DS18B20 <g class="gr_ gr_33 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="33" data-gr-id="33">sensorem</g></h2>



<p>Posledním produktem od Sonoffu, pro který si dnes ukážeme použití s ESPHome je <a href="http://s.click.aliexpress.com/e/SR7soQU">Sonoff TH10</a> (popř. <a href="http://s.click.aliexpress.com/e/csybOyak">TH16</a>) v kombinaci s vodotěsným sensorem teploty DS18B20.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="492" height="448" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/02/image-14.png" alt="Sonoff TH10 + sensor DS18B20 " class="wp-image-1542"/><figcaption>Sonoff TH10 + sensor DS18B20 </figcaption></figure></div>



<h3 class="wp-block-heading">Základní konfigurace</h3>



<p>Opět na začátek je vhodné si nejprve nahrát základní konfiguraci &#8211; nebudu to zde rozepisovat znovu &#8211; konfiguraci i postup můžete vzít z první části o Sonoff Basic.</p>



<h3 class="wp-block-heading" id="mce_38">Konfigurace pro Sonoff TH10/16</h3>



<p>Předpokládejme, že Sonoff TH10/16 už nyní máme úspěšně naflashovaný se základní verzí a pojďme se podívat jaké GPIO máme k dispozici:</p>



<table class="wp-block-table is-style-stripes"><tbody><tr><td><code>GPIO0</code></td><td>Tlačítko (obrácená logika)</td></tr><tr><td><code>GPIO12</code></td><td>Spínač a červená LEDka</td></tr><tr><td><code>GPIO13</code></td><td>Zelená LEDka (obrácená logika)</td></tr><tr><td><code>GPIO1</code></td><td>UART TX pin (pro extérní sensory)</td></tr><tr><td><code>GPIO3</code></td><td>UART RX pin (pro extérní sensory)</td></tr><tr><td><code>GPIO4</code></td><td>Volitelně sensor</td></tr><tr><td><code>GPIO14</code></td><td>Volitelně sensor</td></tr></tbody></table>



<p>Řekneme si, že budeme chtít poměrně jednoduchou konfiguraci, tj. využijeme <strong>tlačítko, spínač a sensor</strong>. Naopak nevyužitjeme zelené LEDky.</p>



<p>U sensoru budeme potřebovat znát jeho ID, tj. do základní konfigurace nejprve přidáme pouze tuto část:</p>



<pre class="wp-block-code"><code>dallas:
  - pin: GPIO14</code></pre>



<p>Firmware nahraje přes OTA a po restartu Sonoffu bychom měli vidět v logu následující:</p>



<pre class="wp-block-code"><code>[10:12:36][C][sensor.dallas:079]: DallasComponent:
[10:12:36][C][sensor.dallas:080]:   Pin: GPIO14 (Mode: OUTPUT)
[10:12:36][C][sensor.dallas:081]:   Update Interval: 60000 ms
[10:12:36][D][sensor.dallas:089]:     0x830118425027FF28</code></pre>



<p>Tím máme jasné ID sensoru a můžeme přidat kompletní zbytek konfigurace:</p>



<pre class="wp-block-code"><code>sensor:
  - platform: dallas
    address: 0x830118425027FF28
    name: "Sonoff TH10 Teplota"
    
binary_sensor:
- platform: gpio
  pin:
    number: GPIO0
    mode: INPUT_PULLUP
    inverted: True
  name: "Sonoff TH10 Tlačítko"
  on_press:
    - switch.toggle: relay
- platform: status
  name: "Sonoff TH10 Stav"

switch:
- platform: gpio
  name: "Sonoff TH10 Přepínač"
  pin: GPIO12
  id: relay</code></pre>



<p>Firmware opět nahrajeme, Sonoff se restartujeme a měli bychom vidět již sensor včetně nastavení:</p>



<pre class="wp-block-code"><code>[10:17:19][C][sensor.dallas:079]: DallasComponent:
[10:17:19][C][sensor.dallas:080]:   Pin: GPIO14 (Mode: OUTPUT)
[10:17:19][C][sensor.dallas:081]:   Update Interval: 60000 ms
[10:17:19][D][sensor.dallas:089]:     0x830118425027FF28
[10:17:19][C][sensor.dallas:094]:   Device 'Sonoff SH10 Teplota'
[10:17:19][C][sensor.dallas:094]:     Unit of Measurement: '\xb0C'
[10:17:19][C][sensor.dallas:094]:     Accuracy Decimals: 1
[10:17:19][C][sensor.dallas:102]:     Address: 0x830118425027FF28
[10:17:19][C][sensor.dallas:103]:     Resolution: 12</code></pre>



<h3 class="wp-block-heading">Integrace do HomeAssistanta</h3>



<p>Podobně jako v předchozích dvou produktech v menu <strong>Nastavení -&gt; Integrace </strong>najdeme <strong>ESPHome</strong> a klikneme na <strong>Konfigurovat</strong> a vyplníme IP adresu.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="634" height="70" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/02/image-15.png" alt="" class="wp-image-1543"/></figure>



<p>V části <strong>Zkonfigurováno</strong> bychom měli automaticky vidět novou položku hned s několika položkami.</p>



<p>Pro přehlednost související položky opět pomocí souboru <strong>config/group.yaml</strong> seskupíme:</p>



<pre class="wp-block-code"><code>th10:
  name: "Sonoff TH10"
  control: hidden
  entities:
    - binary_sensor.sonoff_th10_stav
    - binary_sensor.sonoff_th10_tlacitko
    - sensor.sonoff_th10_teplota
    - switch.sonoff_th10_prepinac</code></pre>



<p>HomeAssistant zrestartujeme a poté bychom měli vidět vše hezky společně:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="397" height="281" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/02/image-16.png" alt="" class="wp-image-1544"/></figure></div>



<h2 class="wp-block-heading">4. Sonoff Touch</h2>



<p>Na produktu <strong><a href="http://s.click.aliexpress.com/e/rZrZ7IY">Sonoff Touch</a></strong> si ukážeme konfiguraci bez elementu switch, což se možná může na první pohled zdát, že to nemůže fungovat. </p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="511" height="324" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/07/sonoff8.png?resize=511%2C324&#038;ssl=1" alt="Sonoff Touch" class="wp-image-388" data-recalc-dims="1"/><figcaption>Sonoff Touch</figcaption></figure></div>



<h3 class="wp-block-heading" id="mce_5">Základní konfigurace</h3>



<p>Začněme opět základní konfiguraci, kterou opět zkopírujeme z první části o Sonoff Basic.</p>



<h3 class="wp-block-heading" id="mce_11">Konfigurace pro Sonoff Touch</h3>



<p>Podíváme se nejprve jaké GPIO máme k dispozici</p>



<table class="wp-block-table is-style-stripes"><tbody><tr><td><code>GPIO0</code></td><td>Tlačítko (obrácená logika)</td></tr><tr><td><code>GPIO12</code></td><td>Spínač s první <g class="gr_ gr_17 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="17" data-gr-id="17">modrou</g> LEDkou</td></tr><tr><td><code>GPIO13</code></td><td>Modrá <g class="gr_ gr_9 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="9" data-gr-id="9">LEDka</g> <g class="gr_ gr_10 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="10" data-gr-id="10">se</g> <g class="gr_ gr_14 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="14" data-gr-id="14">symbolem</g> WiFi</td></tr><tr><td><code>GPIO1</code></td><td>UART TX pin (můžeme použít pro extérní sensor)</td></tr><tr><td><code>GPIO3</code></td><td>UART RX pin (můžeme použít pro extérní sensor)</td></tr></tbody></table>



<p>Využijeme <strong>tlačítko</strong> a <strong>spínač</strong> (ten má na sobě připojenou první modrou LEDku). <strong>Druhou ledku</strong> pak použijeme jako <strong>stavovou</strong> pro ESPHome, tj. v případě <strong>výpadku WiFi</strong> by měla pomalu blikat a nebo v případě chyby blikat divoce.</p>



<pre class="wp-block-code"><code>binary_sensor:
  - platform: gpio
    id: button
    device_class: light
    pin:
      number: GPIO0
      mode: INPUT_PULLUP
      inverted: True
    on_press:
      - light.toggle: light

output:
  - platform: gpio
    id: relay
    pin: GPIO12  

light:
  - platform: binary
    id: light
    name: "Svetlo stropni"
    output: relay

status_led:
  pin: GPIO13</code></pre>



<h3 class="wp-block-heading">Integrace do HomeAssistanta</h3>



<p>Podobně jako v předchozích dvou produktech v menu <strong>Nastavení -&gt; Integrace </strong>najdeme <strong>ESPHome</strong> a klikneme na <strong>Konfigurovat</strong> a vyplníme název zařízení.</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/image-4.png" alt="Sonoff Touch jako entity typu light z ESPHome" class="wp-image-1692" width="479" height="213"/><figcaption>Sonoff Touch jako entity typu light z ESPHome</figcaption></figure></div>



<h2 class="wp-block-heading">Sonoff 4CH</h2>



<p><a href="http://s.click.aliexpress.com/e/zh7pyOy"><strong>Sonoff 4CH</strong></a> je takový <strong>Sonoff Basic</strong> vynásobený čtyřmi, který má přípravu na přimontování k instalačním lištám.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1280" height="853" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/DSCF0939.jpg" alt="Sonoff 4CH" class="wp-image-1698"/><figcaption>Sonoff 4CH uvnitř</figcaption></figure>



<h3 class="wp-block-heading">Základní konfigurace</h3>



<p>Začněme opět základní konfiguraci, kterou opět zkopírujeme z první části o Sonoff Basic.</p>



<h3 class="wp-block-heading" id="mce_23">Konfigurace pro Sonoff 4CH</h3>



<p>Máme k dispozici <strong>4 tlačítka</strong>, <strong>4 spínače </strong>a <strong>4 LEDky.</strong> Oproti Sonoff Basic jsou LEDky (červené) přímo HW spojeny se spínači a kromě nich máme k dispozici jednu <strong>zelenou stavovou LEDku</strong> &#8211; tu použijeme stejně jako u Sonoff Touch jako stavovou ESPHome &#8211; v případě výpadku WiFi bude blikat.</p>



<table class="wp-block-table is-style-stripes"><tbody><tr><td><code>GPIO0</code></td><td>Tlačítko #1 (obrácená logika)</td></tr><tr><td><code>GPIO9</code></td><td>Tlačítko #2 (obrácená logika)</td></tr><tr><td><code>GPIO10</code></td><td>Tlačítko #3 (obrácená logika)</td></tr><tr><td><code>GPIO14</code></td><td>Tlačítko #4 (obrácená logika)</td></tr><tr><td><code>GPIO12</code></td><td>Spínač #1 a červená LEDka</td></tr><tr><td><code>GPIO5</code></td><td>Spínač #2 a červená LEDka</td></tr><tr><td><code>GPIO4</code></td><td>Spínač #3 a červená LEDka</td></tr><tr><td><code>GPIO15</code></td><td>Spínač #4 a červená LEDka</td></tr><tr><td><code>GPIO13</code></td><td>Modrá LEDka (obrácená logika)</td></tr><tr><td><code>GPIO1</code></td><td>UART RX pin (můžeme použít pro extérní sensor)</td></tr><tr><td><code>GPIO3</code></td><td>UART TX pin (můžeme použít pro extérní sensor)</td></tr></tbody></table>



<p>Konfigurace ESPHome tak může vypadat například takto:</p>



<pre class="wp-block-code"><code>binary_sensor:
  - platform: gpio
    id: button1
    pin:
      number: GPIO0
      mode: INPUT_PULLUP
      inverted: True
    on_press:
      - switch.toggle: relay1      
  - platform: gpio
    id: button2
    pin:
      number: GPIO9
      mode: INPUT_PULLUP
      inverted: True
    on_press:
      - switch.toggle: relay2      
  - platform: gpio
    id: button3
    pin:
      number: GPIO10
      mode: INPUT_PULLUP
      inverted: True
    on_press:
      - switch.toggle: relay3      
  - platform: gpio
    id: button4
    pin:
      number: GPIO14
      mode: INPUT_PULLUP
      inverted: True
    on_press:
      - switch.toggle: relay4      
  - platform: status
    name: "Sonoff 4CH Status"

switch:
  - platform: gpio
    id: relay1
    name: "Sonoff 4CH Spínač 1"
    pin: GPIO12
  - platform: gpio
    id: relay2
    name: "Sonoff 4CH Spínač 2"
    pin: GPIO5
  - platform: gpio
    id: relay3    
    name: "Sonoff 4CH Spínač 3"
    pin: GPIO4
  - platform: gpio
    id: relay4
    name: "Sonoff 4CH Spínač 4"
    pin: GPIO15

status_led:
  pin: 
    number: GPIO13
    inverted: True</code></pre>



<h3 class="wp-block-heading" id="mce_27">Integrace do HomeAssistanta</h3>



<p>Podobně jako v předchozích dvou produktech v menu <strong>Nastavení -&gt; Integrace </strong>najdeme <strong>ESPHome</strong> a klikneme na <strong>Konfigurovat</strong> a vyplníme název zařízení.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="625" height="80" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/image-5.png" alt="" class="wp-image-1695"/></figure>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="296" height="378" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/image-6.png" alt="" class="wp-image-1696"/></figure></div>



<p>Jak vidíme, nyní jsme dostali z naších Sonoffů poměrně hodně informací s nevelkým úsilím. Sonoff-Tasmota podobné údaje obsahuje také, ale je potřeba je ručně vyparsovat z poslané MQTT zprávy a vytvořit na ně ručně položky v HomeAssistentovi. Takhle máme téměř vše automatické.</p>



<p>Veškeré konfigurace jsem opět uložil do <a href="https://github.com/jvyoralek/homeassistant-config">repozitáře na Git</a>.</p>



<p>Uvidíme kam se <a href="https://esphomelib.com/">ESPHome</a> bude posunovat. Každopádně už nyní vypadá jako velmi zajímavá alternativa k <a href="https://github.com/arendst/Sonoff-Tasmota">Sonoff-Tasmota</a>. <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">Minule jsem psal</a>, že bych zatím zůstal v případě <a href="https://blog.vyoralek.cz/iot/domaci-automatizace-s-produkty-sonoff/">Sonoff produktů</a> u Sonoff-Tasmota. Nyní už si tím tak jistý nejsem. ESPHome jsem nahrál do cca. poloviny Sonoff produktů, která mám a zatím jediným problémem jsou občasné výpadky, které věřím, že se podaří brzy vyřešit &#8211; jedná se o známý problém.</p>



<p class="has-medium-font-size">Kompletní série o HomeAsistantovi obsahuje následující články:</p>



<ul>
<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-1-cast/">1. část</a> &#8211; Instalace HomeAsisstent </li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-2-cast-integrace-sonoff/">2. část</a> &#8211; <g class="gr_ gr_10 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="10" data-gr-id="10">Integrace</g> Sonoff s firmware Sonoff-<g class="gr_ gr_11 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="11" data-gr-id="11">Tasmota</g></li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-3-cast-integrace-homekit/">3. část</a> &#8211; <g class="gr_ gr_12 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="12" data-gr-id="12">Integrace</g> Homekit</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/">4. část</a> &#8211; <g class="gr_ gr_13 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="13" data-gr-id="13">Integrace</g> Sonoff s firmware Sonoff-Tasmota &#8211; 2 část</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/">5. část</a> &#8211; <g class="gr_ gr_14 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="14" data-gr-id="14">Integrace</g> s Wemos D1 a <g class="gr_ gr_15 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="15" data-gr-id="15">senzory</g> <g class="gr_ gr_20 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="20" data-gr-id="20">teploty</g></li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-6-cast-sonoff-esphome/">6. část</a> &#8211; <g class="gr_ gr_16 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="16" data-gr-id="16">Integrace</g> Sonoff s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-7-cast-sonoff-pow-esphome/">7. část</a> &#8211; <g class="gr_ gr_17 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="17" data-gr-id="17">Integrace</g> Sonoff POW s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-8-cast-led-esphome/">8. část</a> &#8211; <g class="gr_ gr_18 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="18" data-gr-id="18">Integrace</g> LED Magic Home s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-9-cast-integrace-zigbee-xiaomi-mijia-a-aqara/">9. část</a> &#8211; <g class="gr_ gr_31 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="31" data-gr-id="31">Integrace</g> Xiaomi Mijia a Aqara</li>



<li><a href="https://blog.vyoralek.cz/iot/vlastni-zigbee-gateway/">10. část</a> &#8211; Integrace vlastní Zigbee gateway</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-11-cast-vzdaleny-pristup-do-hass-io/">11. část</a> &#8211; Vzdálený přístup do Hass.io z Internetu</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-12-cast-zobrazeni-senzorovych-dat-pomoci-influxdb-a-grafany/">12. část</a> &#8211; zobrazení senzorových data pomocí InfluxDB a Grafany</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-13-cast-add-ony-ktere-pouzivam/">13. část</a> &#8211; Hass.io Add-ony, které používám</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-mi-flora/">14. část</a> &#8211; Integrace Xiaomi Mi Flora</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-15-cast-integrace-withings-nokia/">15. část</a> &#8211; Integrace Withings (Nokia) </li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-16-cast-nahrada-sqlite-databazi-mysql/">16. část</a> &#8211; náhrada SQLite databází MySQL</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-17-cast-hacs-addony/">17. část</a> &#8211; HACS Add-ony &#8211; instalace a konfigurace</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-18-cast-integrace-sonoff-3/">18. část</a> &#8211; Integrace Sonoff s firmware eWeLink </li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-nova-integrace-tasmota-v-beta-verzi/">19. část</a> &#8211; nová integrace Sonoff pro HA</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-20-mereni-spotreby/">20. část</a> &#8211; měření spotřeby</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-21-automaticke-zalohy-a-obnoveni-ze-zalohy/">21. část </a>&#8211; automatické zálohy a obnovení ze zálohy</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-22-napojeni-hlasoveho-asistenta-amazon-alexa/">22. část</a> &#8211; napojení hlasového asistenta Amazon Alexa</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-23-automaticke-zalohy-2/">23. část</a> &#8211; automatické zálohy na síťový sdílení disk (Samba)</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-24-bluetooth-zarizeni-a-esphome-proxy/">24. část</a> &#8211; Bluetooth zařízení a ESPHome proxy</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-25-nefunkcni-blokovana-aktualizace-homeassistanta/">25. část</a> &#8211; nefunkční aktualizace HomeAssistanta</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-26-integrace-bluetooth-produktu-switchbot/">26. část</a> &#8211; integrace SwitchBot produktů</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-27-integrace-fotovoltaiky-a-prehledy-v-ha/">27. část</a> &#8211; integrace fotovoltaiky Growatt</li>
</ul>
<p>The post <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-6-cast-sonoff-esphome/">Centrum chytré domácnosti – HomeAssistant (Hass.io) – 6 část – Sonoff + ESPHome</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-6-cast-sonoff-esphome/feed/</wfw:commentRss>
			<slash:comments>31</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1429</post-id>	</item>
		<item>
		<title>ESPHome &#8211; alternativní firmware pro ESP8266 a ESP32</title>
		<link>https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/</link>
					<comments>https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Sun, 13 Jan 2019 12:24:05 +0000</pubDate>
				<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[esp32]]></category>
		<category><![CDATA[esp8266]]></category>
		<category><![CDATA[esphome]]></category>
		<category><![CDATA[esptool]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=1277</guid>

					<description><![CDATA[<p>Podíváme se na v určitém úhlu pohledu alternativu k firmware Sonoff-Tasmota, a který i když existuje po relativně krátkou dobu už pro určité použití vypadá velice zajímavě.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">ESPHome &#8211; alternativní firmware pro ESP8266 a ESP32</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Pár článků zpět jsem psal o použití firmware <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/">Tasmota v kombinaci s Wemos D1 Mini a dvěmi sensory</a>. V této kombinaci se Sonoff-Tasmota dala použít perfektně, nicméně to neplatí, pokud se rozhodneme použít ještě i displej.</p>



<p>Naštěstí jsem velmi nedávno objevil <strong><a href="https://esphome.io/">ESPHome</a></strong>, který slibuje možnost vytvoření vlastního firmware s připojením velkého množství všemožných druhů sensorů a displejů. To vše navíc téměř bez nutnosti znalosti C/C++.</p>



<p>Na velmi podobném projektu jako minule si tak ukážeme jak Esphomelib použít. V nějakém dalším článku bych pak rád ukázal možnosti použití se <a href="https://blog.vyoralek.cz/iot/domaci-automatizace-s-produkty-sonoff/">Sonoff Basic</a>.</p>



<h2 class="wp-block-heading">Co <g class="gr_ gr_10 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="10" data-gr-id="10">budeme</g> potřebovat?</h2>



<ol><li><strong>nepájivé pole&nbsp;</strong>(breadboard) – cca. $1&nbsp;<a href="http://s.click.aliexpress.com/e/by4g4O1S">AliExpress</a></li><li><strong>vodiče</strong>&nbsp;samec-samec – 4 žíly – cca. $0,7&nbsp;<a href="http://s.click.aliexpress.com/e/BBt82ha">AliExpress</a></li><li>desku&nbsp;<strong>Wemos D1</strong>&nbsp;mini s čipem ESP8266 – cca. $2.25&nbsp;<a href="http://s.click.aliexpress.com/e/bQC4hpk4">AliExpress</a></li><li>sensor&nbsp;<strong>BME280</strong>&nbsp;– měření teploty, vlhkosti a tlaku – cca. $2.18&nbsp;<a href="http://s.click.aliexpress.com/e/bRM3jucu">AliExpress</a></li><li>nebo sensor&nbsp;<strong>SHT31</strong>&nbsp;– měření teploty a vlhkosti – cca. $3.7&nbsp;<a href="http://s.click.aliexpress.com/e/cmg8TZtO">AliExpress</a></li><li>displej <strong>SSD1306 I2C</strong> &#8211; Oled displej s rozlišením 128&#215;64 &#8211; cca  $2.12 <a href="http://s.click.aliexpress.com/e/bLdRZgLW">AliExpress</a></li><li>jakýkoliv USB kabel s USB nabíječkou (např. i mobilní nabíječku)</li></ol>



<h2 class="wp-block-heading">Zapojení</h2>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="963" height="633" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/WemosD1BME280display.png" alt="Schéma zapojení - všechny součástky na I2C sběrnici" class="wp-image-1287"/><figcaption>Schéma zapojení &#8211; všechny součástky na I2C sběrnici</figcaption></figure>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1280" height="853" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/DSCF9724.jpg" alt="Fyzické zapojení - dislej (SSD1306) + 2 senzory (SH31 + BME280) a mikrokontroler Wemos D1 mini" class="wp-image-1288"/><figcaption>Fyzické zapojení &#8211; dislej (SSD1306) + 2 senzory (SH31 + BME280) a mikrokontroler Wemos D1 mini</figcaption></figure>



<p>Pokud byste rádi znali více k zapojení koukněte do <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/">přechozího článku</a>, který je z hlediska součástek téměř stejný &#8211; jen neobsahuje displej, který však má zapojení I2C stejné jako sensory. </p>



<h2 class="wp-block-heading">Firmware</h2>



<h3 class="wp-block-heading">Instalace</h3>



<p>Ukážeme si rovnou tři možnosti a nechám na každém, ať si vybere. Obecně bych doporučoval variantu první.</p>



<h4 class="wp-block-heading">1.a Pro Python 3 &#8211; Linux / Mac</h4>



<p>Pokud už Python 2 nemáte nainstalovaný či z jakéhokoliv jiného důvodu chcete použít pouze Python 3 pak existuje možnost, která je o něco komplikovanější a má jisté limity &#8211; z mého zkoušení nefunguje pouze webový dashboard.</p>



<p>Začneme vytvořením virtuálního Python 3 prostředí</p>



<pre class="wp-block-code"><code>python3 -m venv esphome</code></pre>



<p>a virtuální prostředí si zaktivujeme</p>



<pre class="wp-block-code"><code>cd esphome
./bin/activate</code></pre>



<p>Nyní už by nám balíček esphome měl jít nainstalovat</p>



<pre class="wp-block-code"><code>pip install esphome</code></pre>



<h4 class="wp-block-heading">1.b Pro Python 3 &#8211; Windows</h4>



<p>V základní instalaci Windows 10 zřejmě stále nebudeme mít Python 3. Ten připadáme například přímo pomocí Microsoft Store:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="808" height="578" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2020/10/image.png" alt="" class="wp-image-5775" srcset="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2020/10/image.png?w=808&amp;ssl=1 808w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2020/10/image.png?resize=300%2C215&amp;ssl=1 300w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2020/10/image.png?resize=768%2C549&amp;ssl=1 768w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2020/10/image.png?resize=370%2C265&amp;ssl=1 370w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2020/10/image.png?resize=270%2C193&amp;ssl=1 270w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2020/10/image.png?resize=570%2C408&amp;ssl=1 570w, https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2020/10/image.png?resize=740%2C529&amp;ssl=1 740w" sizes="(max-width: 770px) 100vw, 770px" /></figure>



<p> Dále si vytvoříme virtuální prostředí pro EspHome s Pythonem 3:</p>



<pre class="wp-block-code"><code>python3 -m venv esphome</code></pre>



<p>a virtuální prostředí si zaktivujeme</p>



<pre class="wp-block-code"><code>cd esphome
Scripts/activate</code></pre>



<p>Nyní už by nám balíček esphome měl jít nainstalovat</p>



<pre class="wp-block-code"><code>pip install esphome</code></pre>



<h4 class="wp-block-heading">2.a Pro Python 2 &#8211; Linux / Mac (zastaralé)</h4>



<p class="has-gridlove-highlight-acc-background-color has-background"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f514.png" alt="🔔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Pro úplnost zde nechávám i návod pro Python 2, který již je dnes zastaralý a není doporučovaný. </p>



<p>Začneme vytvořením virtuálního Python 2 prostředí pomocí virtualenv</p>



<pre class="wp-block-code"><code>virtualenv esphome</code></pre>



<p>Pokud ještě virtualenv nemáme tak si ho můžeme doinstalovat</p>



<pre class="wp-block-code"><code>pip install virtualenv</code></pre>



<p>Virtuální prostředí si zaktivujeme:</p>



<pre class="wp-block-code"><code>cd esphome
source ./bin/activate</code></pre>



<p>a doinstalujeme do něj <strong>esphome</strong> se všemi závislostmi:</p>



<pre class="wp-block-code"><code>pip install esphome</code></pre>



<h4 class="wp-block-heading">2.b Pro Python 2 &#8211; Windows (zastaralé)</h4>



<p>Pokud ještě Python 2.7.x nemáme, pak si ho stáhneme ze stránek Python.org a konkrétně nás bude většinou zajímat verze s označením  <a href="https://www.python.org/ftp/python/2.7.16/python-2.7.16.amd64.msi">Windows x86-64 MSI installer</a>. </p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="492" height="423" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/03/image-18.png" alt="Instalace Python 2.7 na Windows" class="wp-image-1849"/></figure></div>



<p>V dalším kroku pokud ještě nemáme utilitu <code><strong>virtualenv</strong></code>, tak si ji doinstalujeme:</p>



<pre class="wp-block-code"><code>pip install virtualenv</code></pre>



<pre class="wp-block-code"><code>pip install esphome</code></pre>



<p>&#8230; a hned ji použijeme pro vytvoření <strong>virtuálního Python prostředí</strong>:</p>



<pre class="wp-block-code"><code>virtualenv esphome</code></pre>



<p>Nově vytvořené prostředí si aktivujeme</p>



<pre class="wp-block-code"><code>cd esphome\Scripts
activate</code></pre>



<p>&#8230; a doinstalujeme ESPHome se všemi závislostmi:</p>



<pre class="wp-block-code"><code>pip install esphome</code></pre>



<h4 class="wp-block-heading">3. Pro Docker</h4>



<p>Instalace je pouze jedním příkazem, pokud už máte nainstalovaný Docker. Já měl u téhle verze ale problém, že výchozí hypervizor Dockeru neumí předávat dovnitř kontejneru USB port. Je pak potřeba použít hypervizor jiný &#8211; např. <a href="https://www.virtualbox.org/">VirtualBox</a> a celé řešení už pak začne být zbytečně velké.</p>



<pre class="wp-block-code"><code>docker pull esphome/esphome</code></pre>



<h3 class="wp-block-heading">Generování <g class="gr_ gr_7 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="7" data-gr-id="7">konfigurace</g></h3>



<p>Máme možnost použít buď webové rozhraní a nebo textovou konzoli. Ukážeme si oboje.</p>



<h4 class="wp-block-heading">1. Webové rozhraní</h4>



<p>Spustíme pomocí příkazu</p>



<pre class="wp-block-code"><code>esphome wemos dashboard</code></pre>



<p>a měli bychom vidět hlášku, kde bylo webové rozhraní spuštěno:</p>



<pre class="wp-block-code"><code>INFO Starting dashboard web server on port 6052 and configuration dir wemos...</code></pre>



<p>Wemos určuje název adresáře s konfigurací, přičemž ale v jednom adresáři můžeme mít konfigurací klidně více.</p>



<p>Do prohlížeče zadáme <a href="http://localhost:6052">http://localhost:6052</a> a jsme tam:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="742" height="498" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-16.png" alt="" class="wp-image-1280"/></figure>



<p>Průvodce konfigurací se sestává se čtyřech kroků &#8211; všechny údaje můžete později změnit ve vygenerovaném souboru ručně a není se třeba toho bát:</p>



<ol><li><strong>název</strong> (name) &#8211; zvolte cokoliv co neobsahuje mezery a bude potřeba zachovat jedinečnost v rámci všech zařízeních.</li><li><strong>typ zařízení </strong>(device type) &#8211; seznam je rozdělený dle použitého čipu, tj. na ESP8266 a ESP32. My si vybereme pro tento článek Wemos D1 mini.</li><li><strong>WiFi a OTA aktualizace</strong> &#8211; jméno WiFi sítě (SSID) a heslo do WiFi. Volitelně pak je možné nastavit i heslo pro OTA aktualizace.</li><li><strong>hotovo</strong> &#8211; konfigurace se uloží do souboru název.yaml</li></ol>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="877" height="693" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-19.png" alt="" class="wp-image-1289"/><figcaption>Webový průvodce konfigurací ESPHome</figcaption></figure>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="991" height="301" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-21.png" alt="" class="wp-image-1292"/><figcaption>Výsledek webového průvodce konfigurací ESPHome</figcaption></figure>



<h4 class="wp-block-heading">2. Příkazová řádka</h4>



<p>V přechozích verzi &lt;1.6 ESPHomeYaml byl obsažený pouze textový průvodce, který však můžeme stále použít &#8211; například pokud máme pouze textovou konzoli.</p>



<p>Generování konfigurace spustíme pomocí příkazu:</p>



<pre class="wp-block-code"><code>esphome wemos.yaml wizard</code></pre>



<p>a čeká nás velice podobný průvodce jako ve webovém rozhraní ve čtyřech krocích.</p>



<pre class="wp-block-code"><code>Hi there!
I'm the wizard of ESPHome :)
And I'm here to help you get started with ESPHome.
In 4 steps I'm going to guide you through creating a basic configuration file for your custom ESP8266/ESP32 firmware. Yay!</code></pre>



<h2 class="wp-block-heading">Konfigurace <g class="gr_ gr_20 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="20" data-gr-id="20">kompo</g>nent</h2>



<p>V případě webového rozhraní máme k dispozici přímo editor po kliknutí na <strong>Edit</strong> u konfigurace:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="917" height="546" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-22.png" alt="" class="wp-image-1293"/></figure>



<p>Do vygenerované konfigurace z předchozího kroku si přidáme nastavení potřebné pro naše senzory a displej:</p>



<pre class="wp-block-code"><code>i2c:
  sda: D1
  scl: D2
  scan: True

sensor:
  - platform: bme280
    temperature:
      name: "BME Temperature"
      oversampling: 16x
      id: bme_temp
    pressure:
      name: "BME Pressure"
      id: bme_press
    humidity:
      name: "BME Humidity"
      id: bme_humid
    address: 0x76
    update_interval: 60s

  - platform: sht3xd
    temperature:
      id: sht31_temp
      name: "SHT31 Temperature"
    humidity:
      id: sht31_humid
      name: "SHT31 Humidity"
    address: 0x44
    update_interval: 60s

font:
  - file: "PTM55FT.ttf"
    id: font
    size: 10

display:
  - platform: ssd1306_i2c
    model: "SSD1306 128x64"
    address: 0x3C
    lambda: |-
      it.printf(0, 10, id(font), "Teplota je %.1f°C", id(sht31_temp).state);
      it.printf(0, 20, id(font), "Vlhkost je %.0f%% ", id(sht31_humid).state);
      it.printf(0, 30, id(font), "Teplota je %.1f°C", id(bme_temp).state);
      it.printf(0, 40, id(font), "Vlhkost je %.0f%% ", id(bme_humid).state);
      it.printf(0, 50, id(font), "Tlak je %.1f hPa", id(bme_press).state);</code></pre>



<p>Jednotlivé bloky vyjadřují:</p>



<ul><li><strong><a href="https://esphomelib.com/esphomeyaml/components/i2c.html">i2c</a></strong> &#8211; zapnutí I2C komunikace. V našem případě nastavíme kam máme u Wemos D1 připojené <strong>SDA</strong> (D1) a <strong>SCL</strong> (D2). Pro prvotní spuštění si můžeme nechat <strong>scan</strong> zaplé a díky tomu uvidíme na obrazovce adresy všech připojených zařízeních,</li><li><strong><a href="https://esphomelib.com/esphomeyaml/components/sensor/bme280.html">sensor</a></strong><a href="https://esphomelib.com/esphomeyaml/components/sensor/bme280.html"> </a><strong><a href="https://esphomelib.com/esphomeyaml/components/sensor/bme280.html">BME280</a></strong> &#8211; nastavení prvního sensoru BME280. Definujeme si názvy, id i2c adresu a jak často chceme data získávat &#8211; my máme 1x za minutu.</li><li><strong><a href="https://esphomelib.com/esphomeyaml/components/sensor/sht3xd.html">sensor</a></strong><a href="https://esphomelib.com/esphomeyaml/components/sensor/sht3xd.html"> </a><strong><a href="https://esphomelib.com/esphomeyaml/components/sensor/sht3xd.html">SHTxd</a></strong> &#8211; nastavení druhého sensoru SHT31. Konfigurace je víceméně stejné jako v případě BME280.</li><li><strong><a href="https://esphome.io/components/display/ssd1306">displej ssd1306</a></strong>&#8211; nastavení pro displej. Toto nastavení už je hodně uživatelsky specifické, jelikož v něm můžeme určit co se na displeji bude zobrazovat. Pro účely článku si zobrazíme hodnoty měřených údajů z obou sensorů.  Jelikož máme variantu s rozlišením 128&#215;64 nastavíme model na SSD1306 128&#215;64.</li><li><strong>font</strong> &#8211; tato sekce slouží pro displej a určuje jaký font a jaké velikosti bude použit pro text na displeji. Je potřeba si nejprve stáhnout patričný TTF soubor s písmem a uložit do adresáře s konfigurací.</li></ul>



<h3 class="wp-block-heading">Kontrola konfigurace</h3>



<p>Ještě než se pustíme do kompilace je vhodné konfiguraci zkontrolovat. K tomu máme ve webovém rozhraní u konfigurace tlačítko <strong>Validate</strong>.</p>



<p>Pokud na něj klikneme dostaneme zřejmě následující chybovou hlášku:</p>



<pre class="wp-block-code"><code>INFO Reading configuration...
Failed config

font: &#91;source wemos/wemos_d1.yaml:48]
  
  Please install the pillow python package to use this feature. (pip install pillow). Got '{"file": "PTM55FT.ttf", "id": "font", "size": 10}'
  - &#91;source wemos/wemos_d1.yaml:48]
    file: PTM55FT.ttf
    id: font
    size: 10</code></pre>



<p>Jak vidíme bude potřeba doinstalovat ještě jeden balíček, který se používá k převádění textů z TrueFont do binární podoby.</p>



<pre class="wp-block-code"><code>pip install pillow</code></pre>



<p>Klikneme znovu na validovat a pravděpodobně dostaneme ještě jednu chybu:</p>



<pre class="wp-block-code"><code>INFO Reading configuration...
Failed config

font: &#91;source wemos/wemos_d1.yaml:48]
  - &#91;source wemos/wemos_d1.yaml:48]
    
    Could not find file 'wemos/PTM55FT.ttf'. Please make sure it exists. Got 'PTM55FT.ttf'
    file: PTM55FT.ttf
    id: font
    size: 10</code></pre>



<p>Je potřeba ještě na uvedené místo zkopírovat použitý font.</p>



<p>Ještě jednou kliknout na validovat a už bychom měli mít informaci o korektní konfiguraci.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="800" height="469" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-23.png" alt="ESPHome - validace konfigurace v pořádku" class="wp-image-1295"/><figcaption>ESPHome &#8211; validace konfigurace v pořádku</figcaption></figure>



<h3 class="wp-block-heading">Kompilace a nahrání firmware</h3>



<p>V pravém horním rohu si <strong>nastavíme správný port</strong> kde máme připojené Wemos D1 mini a klikneme na <strong>upload</strong>.</p>



<p>Pokud vše proběhlo správně měli bychom nejprve vidět informaci o úspěšné kompilaci a následném nahrání.</p>



<p>ESPHome má velice hezky udělané logování, které je i barevné, takže se můžeme podívat na spoustu více či méně užitečných informací o všech připojených a nakonfigurovaných komponentách.</p>



<pre class="wp-block-code"><code>Building .pioenvs/wemos_d1/firmware.bin
Retrieving maximum program size .pioenvs/wemos_d1/firmware.elf
Checking size .pioenvs/wemos_d1/firmware.elf
Memory Usage -> http://bit.ly/pio-memory-usage
DATA:    &#91;=====     ]  52.0% (used 42560 bytes from 81920 bytes)
PROGRAM: &#91;===       ]  34.2% (used 357564 bytes from 1044464 bytes)
===================================================== &#91;SUCCESS] Took 38.98 seconds =====================================================
INFO Successfully compiled program.
INFO Running:  esptool.py --before default_reset --after hard_reset --chip esp8266 --port /dev/cu.usbserial-1A150 write_flash 0x0 wemos/wemos_d1/.pioenvs/wemos_d1/firmware.bin
esptool.py v2.6
Serial port /dev/cu.usbserial-1A150
Connecting....
Chip is ESP8266EX
Features: WiFi
MAC: 2c:3a:e8:2f:86:18
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 361712 bytes to 249050...
Wrote 361712 bytes (249050 compressed) at 0x00000000 in 24.1 seconds (effective 119.9 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
INFO Successfully uploaded program.
INFO Starting log output from /dev/cu.usbserial-1A150 with baud rate 115200
&#91;12:37:00]&#91;I]&#91;logger:071]: Log initialized
&#91;12:37:00]&#91;C]&#91;ota:461]: There have been 0 suspected unsuccessful boot attempts.
&#91;12:37:00]&#91;I]&#91;application:053]: Running through setup()...
&#91;12:37:00]&#91;C]&#91;display.ssd1306:301]: Setting up I2C SSD1306...
&#91;12:37:00]&#91;C]&#91;sensor.bme280:090]: Setting up BME280...
&#91;12:37:00]&#91;C]&#91;sensor.sht3xd:038]: Setting up SHT3xD...
&#91;12:37:00]&#91;C]&#91;wifi:029]: Setting up WiFi...
&#91;12:37:00]&#91;D]&#91;wifi:247]: Starting scan...
&#91;12:37:00]&#91;D]&#91;sensor.sht3xd:083]: Got temperature=24.31°C humidity=43.06%
&#91;12:37:01]&#91;D]&#91;sensor.bme280:211]: Got temperature=23.3°C pressure=968.8hPa humidity=41.3%</code></pre>



<h2 class="wp-block-heading"><g class="gr_ gr_5 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="5" data-gr-id="5">Integrace</g> do HomeAssistenta</h2>



<p>Jeden z nějvětších benefitů <strong>Esphome</strong> je fakt, že pro integraci do HomeAssistenta nepotřebujeme prostředníka v podobě <strong>MQTT</strong>. Celá integrace se tak zjednodušuje.</p>



<p>Navíc od verze <strong>HomeAssistent 0.85</strong> si systém umí automaticky najít zařízení ESPHome a v sekci Nastavení / Integrace bychom měli ESPHome zařízení automaticky vidět. </p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="679" height="126" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-28.png" alt="Automatické objevení ESPHome v síti" class="wp-image-1323"/><figcaption>Automatické objevení ESPHome v síti</figcaption></figure>



<p>Stačí pak kliknout na <strong>konfigurovat</strong> a víceméně potvrdit pomocí <strong>Submit</strong>.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="442" height="321" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-29.png" alt="Možnosti nastavení integrace ESPHome" class="wp-image-1325"/><figcaption>Možnosti nastavení integrace ESPHome</figcaption></figure></div>



<p>V logu ESPHome můžeme najít informaci o úspěšném spojení:</p>



<pre class="wp-block-code"><code>&#91;17:42:35]&#91;D]&#91;api:531]: Client 'Home Assistant 0.85.1 (10.2.1.25)' connected successfully!</code></pre>



<p>Automaticky se nám přidají všechny sensorová data, které jsme v ESPHome nastavili. Jak jednoduché.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="677" height="224" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-30.png" alt="Zkonfigurované nastavení jedním kliknutím pro ESPHome" class="wp-image-1326"/><figcaption>Zkonfigurované nastavení jedním kliknutím pro ESPHome</figcaption></figure></div>



<p>Bez změn v konfiguračním souboru nám pak všechny sensory přibydou na Dashboardu nahoře.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="287" height="99" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-31.png" alt="Sensorová data z ESPHome" class="wp-image-1327"/><figcaption>Sensorová data z ESPHome</figcaption></figure></div>



<h2 class="wp-block-heading">Webové rozhraní <g class="gr_ gr_9 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="9" data-gr-id="9">na</g> <g class="gr_ gr_13 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="13" data-gr-id="13">mikrokontroleru</g></h2>



<p>Ve výchozí konfiguraci není webové rozhraní narozdíl od Sonoff-Tasmota přítomné. Nicméně to neznamená, že tato možnost vůbec neexistuje, i když funkcionalita je oproti Tasmotě značně omezená:</p>



<ul><li>je možné vidět stav senzorů</li><li>je možné provést OTA update pomocí nahrání binárního firmware přes prohlížeč</li><li>je možné vidět log</li></ul>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="710" height="643" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-32.png" alt="" class="wp-image-1331"/></figure>



<p>Webové rozhraní zapneme přidáním následujího do konfigurace</p>



<pre class="wp-block-code"><code>web_server:
  port: 80</code></pre>



<p>Obecně se na ESP8266 příliš nedoporučuje toto rozhraní zapínat, jelikož je poměrně náročné, nicméně zrovna Wemos D1 mini je poměrně dobře vybaven, takže jsem žádný problém nezaznamenal.</p>



<h2 class="wp-block-heading">Aktualizace ESPHome</h2>



<p>V případě, že vyšla nová verze ESPHome a používáte Python virtuální prostředí pak aktualizaci uděláme pomocí:</p>



<pre class="wp-block-code"><code>pip install esphome --upgrade</code></pre>



<p>Nezapomeňte, že musíte mít virtuální prostředí aktivované pomocí souboru <strong>bin/activate</strong>.</p>



<p>V dashboardu byste pak měli vidět dostupné aktualizace pro všechny zařízení z daného projektu.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="855" height="206" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-34.png" alt="" class="wp-image-1360"/></figure>



<p>Není potřeba cokoliv měnit v konfigurace, pouze klikneme na <strong>upload</strong> a zanedlouho po kompilaci a nahrání bychom měli vidět novou verzi:</p>



<pre class="wp-block-code"><code>&#91;11:46:41]&#91;I]&#91;application:097]: You're running esphomelib v1.10.1 compiled on Jan 20 2019, 11:45:03</code></pre>



<h2 class="wp-block-heading">Kdy použít ESPHome</h2>



<p>Díky zaměření na ESP32 a ESP8266 se nabízí otázka zda použít ESPHome namísto <a href="https://blog.vyoralek.cz/iot/sonoff-produkty-nahrani-firmware-tasmota/">Tasmota</a>. S ESPHome mám zatím omezené zkušenosti ale zkusme si je už nyní trochu porovnat:</p>



<figure class="wp-block-table has-fixed-layout is-style-stripes"><table><tbody><tr><td><strong>Vlastnost</strong></td><td><strong>Tasmota</strong></td><td><strong>ESPHome</strong></td></tr><tr><td>Webové rozhraní na zařízení</td><td>Ano, spousta možností nastavení</td><td>Ano, ale velmi omezené možnosti</td></tr><tr><td>Možnost změny konfigurace</td><td>Přes webové rozhraní</td><td>Úpravou konfigurace a OTA updatem</td></tr><tr><td>WifiManager</td><td>Ano</td><td>Ne</td></tr><tr><td>OTA aktualizace</td><td>Ano (ze zařízení)</td><td>Ano (nutné dělat z PC)</td></tr><tr><td>Sonoff produkty</td><td>Ano</td><td>Ano (složitější konfigurace)</td></tr><tr><td>Rozšiřující komponenty (sensory atp.)</td><td>Ano, omezeně</td><td>Ano, mnoho možností a detailní konfigurace</td></tr><tr><td>Integrace HomeAssistent</td><td>Ano, prostřednictvím MQTT. Ruční konfigurace</td><td>Ano, přímá integrace na pár kliknutí</td></tr></tbody></table></figure>



<p>Zatím mi z toho vychází, že pro <a href="https://blog.vyoralek.cz/iot/domaci-automatizace-s-produkty-sonoff/">Sonoff produkty</a> je stále mnohem vhodnější Sonoff-Tasmota. </p>



<p>Pokud však chcete použít nějakou DIY desku s připojenými sensory či displejem pak ESPHome nabízí možnost jak to udělat stále relativně jednoduše.</p>



<p>Dejte vědět do komentářů jaké jsou vaše zkušenosti <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>The post <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">ESPHome &#8211; alternativní firmware pro ESP8266 a ESP32</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1277</post-id>	</item>
		<item>
		<title>Centrum chytré domácnosti – HomeAssistant (Hass.io) – 5 část &#8211; Wemos D1 + BME280 a SHT31</title>
		<link>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/</link>
					<comments>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Sun, 06 Jan 2019 15:25:35 +0000</pubDate>
				<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[bme280]]></category>
		<category><![CDATA[esp8266]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[homeassistant]]></category>
		<category><![CDATA[SHT31]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<category><![CDATA[wemos]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=1190</guid>

					<description><![CDATA[<p>V další části série o HomeAssistentovi si ukážeme jak využít sensory BME280 a SHT31 ve spojení s Wemos D1 mini a firmwarem Sonoff-Tasmota.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/">Centrum chytré domácnosti – HomeAssistant (Hass.io) – 5 část &#8211; Wemos D1 + BME280 a SHT31</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">Co <g class="gr_ gr_10 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="10" data-gr-id="10">budeme</g> potřebovat</h2>



<ol><li><strong>nepájivé pole </strong>(breadboard) &#8211; cca. $1 <a href="http://s.click.aliexpress.com/e/by4g4O1S">AliExpress</a></li><li><strong>vodiče</strong> samec-samec &#8211; 4 žíly &#8211; cca. $0,7 <a href="http://s.click.aliexpress.com/e/BBt82ha">AliExpress</a></li><li>desku <strong>Wemos D1</strong> mini s čipem ESP8266 &#8211; cca. $2.25 <a href="http://s.click.aliexpress.com/e/bQC4hpk4">AliExpress</a></li><li>sensor <strong>BME280</strong> &#8211; měření teploty, vlhkosti a tlaku &#8211; cca. $2.18 <a href="http://s.click.aliexpress.com/e/bRM3jucu">AliExpress</a></li><li>nebo sensor <strong>SHT31</strong> &#8211; měření teploty a vlhkosti &#8211; cca. $3.7 <a href="http://s.click.aliexpress.com/e/cmg8TZtO">AliExpress</a></li><li>jakýkoliv USB kabel s USB nabíječkou (např. i mobilní nabíječku)</li></ol>



<p>Pokud si ceny jednotlivých součástek sečteme tak v případě použití <strong>BME280</strong> se dostaneme na cenu cca $6.13 (135Kč) a nebo $7.65 (157kč) se senzorem <strong>SHT31</strong>.</p>



<a class="gridlove-popup" href='https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/Snímek-obrazovky-2019-01-06-v-11.49.32.png?ssl=1'><img loading="lazy" decoding="async" width="483" height="274" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/Snímek-obrazovky-2019-01-06-v-11.49.32.png?fit=483%2C274&amp;ssl=1" class="attachment-gridlove-single size-gridlove-single" alt="" /></a>
<a class="gridlove-popup" href='https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/10/image-12.png?ssl=1'><img loading="lazy" decoding="async" width="481" height="343" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/10/image-12.png?fit=481%2C343&amp;ssl=1" class="attachment-gridlove-single size-gridlove-single" alt="" /></a>



<p>Na všechny tři elektronické součástky bude potřeba napájet pin headery a k tomu se nám bude hodit ještě pájka. Pokud ji ještě nemáte tak doporučuji přibalit za cca. 90kč ruční <a href="http://s.click.aliexpress.com/e/N3jUbAU">Vastar 60W Electric Soldering Iron</a>,</p>



<h2 class="wp-block-heading">Schéma zapojení</h2>



<p>Zapojení pro oba uvedené sensory bude naprosto stejné, jelikož používají shodnou komunikaci přes I2C. Můžeme na nich najít tyto piny:</p>



<ul><li><strong>VIN</strong> &#8211; napájení pin &#8211; můžeme použít jak 5V tak i 3.3V, dle možnostech desky kam sensor napojujeme</li><li><strong>GND</strong> &#8211; uzemnění pro napájení a logiku</li><li><strong>SDA</strong> &#8211; datová linka (DA = data access) pro I2C komunikaci</li><li><strong>SCL</strong> &#8211;  časovač (CL = clock line) pro I2C komunikaci</li></ul>



<p>V případě Wemos D1 Mini máme pevně dány pouze piny pro napájení a uzemnění. Samotné SDA a SCL můžeme podle potřeby zapojit téměř kamkoliv (kromě RX, TX). My použijeme například pin D3 a D4.</p>



<p>Zapojení pak bude vypadat takto:</p>



<table class="wp-block-table aligncenter"><tbody><tr><td><strong>Sensor BME280 nebo SHT31</strong></td><td><strong>Wemos D1 Mini</strong></td></tr><tr><td>VIN</td><td>3.3V</td></tr><tr><td>GND</td><td>G</td></tr><tr><td>SDA</td><td>D3</td></tr><tr><td>SCL</td><td>D4</td></tr></tbody></table>



<p>nebo schématicky:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="894" height="633" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/WemosD1BME280_bb.png" alt="" class="wp-image-1202"/></figure></div>



<p>V reálu to pak vypadá nějak takto &#8211; barevné vodiče jsou stejně jako na schématu výše.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="770" height="513" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/DSCF9715.jpg?resize=770%2C513&#038;ssl=1" alt="" class="wp-image-1192" data-recalc-dims="1"/></figure>



<h2 class="wp-block-heading">Firmware</h2>



<p>Máme zde v podstatě dvě možnosti. Buď si napíšeme kompletně vlastní aplikaci za použití knihoven po použité senzory a desku a nebo použijeme již hotové řešení. Pro tento článek si vybereme hotové řešení a použijeme již hodněkrát zmíněny <strong><a href="https://github.com/arendst/Sonoff-Tasmota">Sonoff-Tasmota</a></strong> firmware.</p>



<p>Postup je velice podobný jako v případě nahrávání do Sonoff produktů. Popíšu tady tedy spíše jen specifika pro <strong>Wemos D1 Mini</strong> a pokud byste byli ztracení tak se koukněte na <a href="https://blog.vyoralek.cz/iot/sonoff-produkty-nahrani-firmware-tasmota/">předchozí článek</a>.</p>



<p style="background-color:#fbf9c2" class="has-background">Alternativa &#8211; už nějakou je k dispozici firmware ESPHome, který je zejména při integraci na HomeAssistent mnohem přímočarejší &#8211; doporučuji tak kouknout i na článek víceméně se stejnými sensory ale pro <a href="https://blog.vyoralek.cz/iot/esphomelib-alternativni-firmware-pro-esp8266-a-esp32/">ESPHome</a>.</p>



<h3 class="wp-block-heading">Nastavení Visual Studio Code + PlatformIO</h3>



<p>Tentokráte úplně přeskočím konfiguraci pro Arduino, jelikož ve <strong><a href="https://code.visualstudio.com/">Visual Studio Code</a></strong> s pluginem <strong><a href="https://docs.platformio.org/en/latest/ide/vscode.html">PlatformIO</a></strong> to bude více přímočaré.</p>



<p>Nejprve si do souboru <strong>platformio.ini</strong> přidáme novou konfiguraci pro Wemos D1 mini:</p>



<pre class="wp-block-code"><code>[env:wemos-d1-mini]
platform = ${common.platform}
framework = ${common.framework}
board = d1_mini
board_build.flash_mode = ${common.board_build.flash_mode}
board_build.f_cpu = ${common.board_build.f_cpu}
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags} -DMY_LANGUAGE=cs-CZ
monitor_speed = ${common.monitor_speed}
upload_port = ${common.upload_port}
upload_resetmethod = ${common.upload_resetmethod}
upload_speed = ${common.upload_speed}
extra_scripts = ${common.extra_scripts}</code></pre>



<p>Původně jsem měl konfiguraci z <a href="https://github.com/arendst/Sonoff-Tasmota/wiki/Wemos%20D1%20Mini">Wiki</a> Tasmoty, ale jak jsem byl upozorněn ta už z nějakého důvodu nefunguje. Tuhle novou konfiguraci jsem v rychlosti vyzkoušel a mělo by to fungovat vpořádku.</p>



<p>Mezi PlatformIO tasky najdeme nově task s názvem <strong>env:wemos-d1-mini</strong>.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="336" height="313" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-3.png" alt="" class="wp-image-1205"/></figure></div>



<h3 class="wp-block-heading">Parametry firmware Sonoff-Tasmota</h3>



<p>Před samotnou kompilací a nahráním doporučuji ještě změnit v souboru <strong>my_user_config.h</strong> alespoň následující:</p>



<ul><li><strong>#define STA_SSID1</strong> &#8211; název WiFi sítě</li><li><strong>#define STA_PASS1</strong> &#8211; heslo WiFi sítě</li><li>a odkomentovat <strong>#define MY_LANGUAGE </strong>pro zapnutí češtiny</li></ul>



<p>Pro jistotu můžeme zkontrolovat, že máme odkomentované následující řádky:</p>



<ul><li><strong>#define USE_BMP</strong> &#8211; pro podporu sensoru BMP280</li><li><strong>#define USE_SHT3X</strong>  &#8211; pro podporu sensoru SHT31</li></ul>



<h3 class="wp-block-heading">Nahrání firmware</h3>



<p>Nyní už můžeme kliknout na <strong>Upload</strong> a firmware se nám zkompiluje pro nahraje na Wemos D1 Mini &#8211; to musíme mít už připojené přes USB.</p>



<p>Po připojení ke konzoli bychom už měli vidět IP adresu na které je sonoff připojen.</p>



<pre class="wp-block-code"><code>--- Miniterm on /dev/cu.usbserial-1A150  115200,8,N,1 ---
--- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
00:00:00 Projekt sonoff Sonoff (Topic sonoff13, Záložní DVES_2F8618, GroupTopic sonoffs) Verze 6.4.0(sonoff)-2_4_2
00:00:00 WIF: Připojování k AP1 brloh v módu 11N jako sonoff13-1560...
00:00:04 WIF: ...připojeno
00:00:04 DNS: Inicializovaný
00:00:04 HTP: Aktivní Web server sonoff13-1560.local na IP adrese 10.2.1.88
00:00:06 MQT: Připojování...
00:00:06 MQT: ...připojeno
00:00:06 MQT: tele/sonoff13/LWT = Aktivní (Zachováno)
00:00:06 MQT: cmnd/sonoff13/POWER =
00:00:06 MQT: tele/sonoff13/INFO1 = {"Module":"Generic","Version":"6.4.0(sonoff)","FallbackTopic":"DVES_2F8618","GroupTopic":"sonoffs"}
00:00:06 MQT: tele/sonoff13/INFO2 = {"WebServerMode":"Admin","Hostname":"sonoff13-1560","IPAddress":"10.2.1.88"}</code></pre>



<p>Pokud byste měli nějaký problém s nahráním firmware přes Visual Studio Code, tak je možné použít i EspTool o kterém jsem <a href="https://blog.vyoralek.cz/iot/esp8266-a-esp32-zaloha-a-nahrani-noveho-firmware-pomoci-esptool/">podobněji psal zde</a>.</p>



<p>Ve zkratce &#8211; přepneme se do adresáře .pioenvs/wemos-d1-mini a upload spustíme pomocí příkazu:</p>



<pre class="wp-block-code"><code>> esptool.py write_flash 0x00000 firmware.bin
esptool.py v2.5.1
Found 4 serial ports
Serial port /dev/cu.usbserial-1A150
Connecting.....
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
MAC: 2c:3a:e8:2f:86:18
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Flash params set to 0x0340
Compressed 535136 bytes to 365968...
Wrote 535136 bytes (365968 compressed) at 0x00000000 in 35.4 seconds (effective 120.8 kbit/s)...
Hash of data verified.</code></pre>



<h2 class="wp-block-heading">Nastavení Sonoff-<g class="gr_ gr_11 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="11" data-gr-id="11">Tasmota</g></h2>



<p>Nyní již nám firmware Sonoff-Tasmota běží na Wemos D1 Mini s čipem ESP8266 a můžeme se na něj pomocí IP adresy připojit do webového rozhraní. V našem konkrétním příkladě např. do webového prohlížeče zadáme:</p>



<pre class="wp-block-code"><code>http://10.2.1.88</code></pre>



<p>Půjdeme nejprve do nastavení modulu, kdy jako typ modulu vybereme 18 Generic a konfigurace GPIO bude následující:</p>



<ul><li><strong>D3</strong> neboli GPIO0 &#8211; 06 <strong>I2C SDA</strong></li><li><strong>D4 </strong>nebo GPIO4 &#8211; 05 <strong>I2C SCL</strong></li></ul>



<p>Použít můžeme i jiné GPIO podle libosti (kromě RX a TX), jen je potřeba správně nastavit I2C SDA a SCL a pak tyto piny správně napojit na sensor.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="397" height="563" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-5.png" alt="Wemos D1 Mini se Sonoff firmware - nastavení modulu" class="wp-image-1207"/><figcaption>Wemos D1 Mini se Sonoff firmware &#8211; nastavení modulu</figcaption></figure></div>



<p>Ve webovém rozhraní a hlavním menu bychom pak měli vidět automaticky jednotlivé měřené hodnoty s aktuálními hodnotami:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="370" height="246" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-8.png" alt="" class="wp-image-1212"/><figcaption>Hodnoty s dvou senzorů BHE280 a SHT31 v Sonoff firmwaru</figcaption></figure></div>



<p>Jak můžete vidět vidíme data s obou sensorů zároveň. Je to díky tomu, že oba sensory používají I2C komunikaci a zároveň mají jinou adresu.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1280" height="853" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/DSCF9716.jpg" alt="Wemos D1 mini s paralelním zapojením BME280 a SHT31" class="wp-image-1214"/><figcaption>Wemos D1 mini s paralelním zapojením BME280 a SHT31</figcaption></figure>



<p>BME280 v základu používá adresu 0x77, kdežto SHT31 0x44. Kdybychom chtěli mít zapojené dva sensory stejného typu zároveň je potřeba na jednom z nich adresu změnit &#8211; většinou pomocí přerušení na desce (pak je pro BME280 0x76 a 0x45 pro SHT31).</p>



<p>Samotný JSON soubor produkovaný Sonoff-Tasmota a který je posílán prostřednictvím MQTT přes topic <strong>tele/&lt;VAS_PROJEKT&gt;/SENSOR</strong> má následující strukturu:</p>



<pre class="wp-block-code"><code>{
    "Time": "2019-01-06T14:57:45",
    "BME280": {
        "Temperature": 23.4,
        "Humidity": 38.2,
        "Pressure": 992.7
    },
    "SHT3X-0x44": {
        "Temperature": 23.8,
        "Humidity": 41.5
    },
    "PressureUnit": "hPa",
    "TempUnit": "C"
}</code></pre>



<h2 class="wp-block-heading"><g class="gr_ gr_5 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="5" data-gr-id="5">Integrace</g> do Home-Assistant</h2>



<p>Jelikož máme k Wemos D1 mini připojené jen sensory, které tak přidáme jako sensory i na straně Home-Asisstentu.</p>



<p>Nejprve si však ve webovém rozhraní Sonoff-tasmota zkontrolujeme zda máme správně nastavený MQTT server a nastavíme si podle potřeby topic, ve kterém budou údaje posílány:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="331" height="70" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-10.png" alt="" class="wp-image-1220"/><figcaption>Nastavení MQTT topicu pro Wemos D1 mini</figcaption></figure></div>



<p>Já jsem si pro tuto ukázku zvolil popisně název wemos-d1-mini ať je jasné odkud data proudí a do konfigurace Home-Asisstenta a souboru <strong>configuration.yaml </strong>přidáme podle JSON struktury výše všechny sensory:</p>



<pre class="wp-block-code"><code>    - platform: mqtt
      name: "room1_table_bme280_temp"
      state_topic: "tele/wemos-d1-mini/SENSOR"
      value_template: ' {{ value_json["BME280"]["Temperature"] }}'
      unit_of_measurement: "°C"
      device_class: temperature
    - platform: mqtt
      name: "room1_table_bme280_humid"
      state_topic: "tele/wemos-d1-mini/SENSOR"
      value_template: ' {{ value_json["BME280"]["Humidity"] }}'
      unit_of_measurement: "%"
      device_class: humidity
    - platform: mqtt
      name: "room1_table_bme280_pressure"
      state_topic: "tele/wemos-d1-mini/SENSOR"
      value_template: ' {{ value_json["BME280"]["Pressure"] }}'
      unit_of_measurement: "hPa"
      device_class: pressure
    - platform: mqtt
      name: "room1_table_sht31_temp"
      state_topic: "tele/wemos-d1-mini/SENSOR"
      value_template: ' {{ value_json["SHT3X-0x44"]["Temperature"] }}'
      unit_of_measurement: "°C"
      device_class: temperature
    - platform: mqtt
      name: "room1_table_sht31_humid"
      state_topic: "tele/wemos-d1-mini/SENSOR"
      value_template: ' {{ value_json["SHT3X-0x44"]["Humidity"] }}'
      unit_of_measurement: "%"
      device_class: humidity   </code></pre>



<p>Jelikož máme opět v názvech spíše systémová jména, která však nechceme zobrazit v Home-Assistentovi připravíme si přejmenování v souboru <strong>customize.yaml</strong></p>



<pre class="wp-block-code"><code>sensor.room1_table_bme280_temp:
  friendly_name: "Teplota"

sensor.room1_table_bme280_humid:
  friendly_name: "Vlhkost"  

sensor.room1_table_bme280_pressure:
  friendly_name: "Tlak" 

sensor.room1_table_sht31_temp:
  friendly_name: "Teplota"

sensor.room1_table_sht31_humid:
  friendly_name: "Vlhkost"  </code></pre>



<p>A konečně poslední úprava nás čeká v seskupení položek, které patří logicky k sobě prostřednictvím <strong>group.yaml</strong>:</p>



<pre class="wp-block-code"><code></code></pre>



<p>Home-Assistant zrestartujeme a všech pět údajů z dvou sensorů vidíme hezky na dashboardu:</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-9.png" alt="" class="wp-image-1219" width="525" height="396"/><figcaption>Nová sensorová data v Home-Assistentovi</figcaption></figure></div>



<p>I když je tento návod pro kombinaci <a href="http://s.click.aliexpress.com/e/bQC4hpk4">Wemos D1 Mini</a> s <a href="http://s.click.aliexpress.com/e/bRM3jucu">BME280</a> a <a href="http://s.click.aliexpress.com/e/cmg8TZtO">SHT31</a>  je možné ho použít i s <a href="http://s.click.aliexpress.com/e/sVuOsU0">NodeMCU</a> a sensory podporovanými v <a href="https://github.com/arendst/Sonoff-Tasmota/wiki/Sensor-Configuration">Sonoff-Tasmota</a>.</p>



<p>Stejně jako v přechozích dílech jsem kompletní konfigurační soubory uložil na&nbsp;<a href="https://github.com/jvyoralek/homeassistant-config">Github</a>. Můžeme si tak projít celou konfiguraci pěkně pohromady za všech díly.</p>



<p>Dohromady s <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/">předchozí lampičkou</a> už tak máme v Home-Assistentovi pěknou řádku sensorů a jeden spínač. Tím ale zdaleka možnosti nekončí a seriál bude pokračovat dále <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="768" height="588" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2019/01/image-11.png" alt="" class="wp-image-1222"/><figcaption>Dashboard s prvky z posledních dvou článků</figcaption></figure>



<p class="has-medium-font-size">Kompletní série o HomeAsistantovi obsahuje následující články:</p>



<ul>
<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-1-cast/">1. část</a> &#8211; Instalace HomeAsisstent </li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-2-cast-integrace-sonoff/">2. část</a> &#8211; <g class="gr_ gr_10 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="10" data-gr-id="10">Integrace</g> Sonoff s firmware Sonoff-<g class="gr_ gr_11 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="11" data-gr-id="11">Tasmota</g></li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-3-cast-integrace-homekit/">3. část</a> &#8211; <g class="gr_ gr_12 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="12" data-gr-id="12">Integrace</g> Homekit</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/">4. část</a> &#8211; <g class="gr_ gr_13 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="13" data-gr-id="13">Integrace</g> Sonoff s firmware Sonoff-Tasmota &#8211; 2 část</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/">5. část</a> &#8211; <g class="gr_ gr_14 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="14" data-gr-id="14">Integrace</g> s Wemos D1 a <g class="gr_ gr_15 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="15" data-gr-id="15">senzory</g> <g class="gr_ gr_20 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="20" data-gr-id="20">teploty</g></li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-6-cast-sonoff-esphome/">6. část</a> &#8211; <g class="gr_ gr_16 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="16" data-gr-id="16">Integrace</g> Sonoff s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-7-cast-sonoff-pow-esphome/">7. část</a> &#8211; <g class="gr_ gr_17 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="17" data-gr-id="17">Integrace</g> Sonoff POW s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-8-cast-led-esphome/">8. část</a> &#8211; <g class="gr_ gr_18 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="18" data-gr-id="18">Integrace</g> LED Magic Home s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-9-cast-integrace-zigbee-xiaomi-mijia-a-aqara/">9. část</a> &#8211; <g class="gr_ gr_31 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="31" data-gr-id="31">Integrace</g> Xiaomi Mijia a Aqara</li>



<li><a href="https://blog.vyoralek.cz/iot/vlastni-zigbee-gateway/">10. část</a> &#8211; Integrace vlastní Zigbee gateway</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-11-cast-vzdaleny-pristup-do-hass-io/">11. část</a> &#8211; Vzdálený přístup do Hass.io z Internetu</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-12-cast-zobrazeni-senzorovych-dat-pomoci-influxdb-a-grafany/">12. část</a> &#8211; zobrazení senzorových data pomocí InfluxDB a Grafany</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-13-cast-add-ony-ktere-pouzivam/">13. část</a> &#8211; Hass.io Add-ony, které používám</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-mi-flora/">14. část</a> &#8211; Integrace Xiaomi Mi Flora</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-15-cast-integrace-withings-nokia/">15. část</a> &#8211; Integrace Withings (Nokia) </li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-16-cast-nahrada-sqlite-databazi-mysql/">16. část</a> &#8211; náhrada SQLite databází MySQL</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-17-cast-hacs-addony/">17. část</a> &#8211; HACS Add-ony &#8211; instalace a konfigurace</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-18-cast-integrace-sonoff-3/">18. část</a> &#8211; Integrace Sonoff s firmware eWeLink </li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-nova-integrace-tasmota-v-beta-verzi/">19. část</a> &#8211; nová integrace Sonoff pro HA</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-20-mereni-spotreby/">20. část</a> &#8211; měření spotřeby</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-21-automaticke-zalohy-a-obnoveni-ze-zalohy/">21. část </a>&#8211; automatické zálohy a obnovení ze zálohy</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-22-napojeni-hlasoveho-asistenta-amazon-alexa/">22. část</a> &#8211; napojení hlasového asistenta Amazon Alexa</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-23-automaticke-zalohy-2/">23. část</a> &#8211; automatické zálohy na síťový sdílení disk (Samba)</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-24-bluetooth-zarizeni-a-esphome-proxy/">24. část</a> &#8211; Bluetooth zařízení a ESPHome proxy</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-25-nefunkcni-blokovana-aktualizace-homeassistanta/">25. část</a> &#8211; nefunkční aktualizace HomeAssistanta</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-26-integrace-bluetooth-produktu-switchbot/">26. část</a> &#8211; integrace SwitchBot produktů</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-27-integrace-fotovoltaiky-a-prehledy-v-ha/">27. část</a> &#8211; integrace fotovoltaiky Growatt</li>
</ul>
<p>The post <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/">Centrum chytré domácnosti – HomeAssistant (Hass.io) – 5 část &#8211; Wemos D1 + BME280 a SHT31</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/feed/</wfw:commentRss>
			<slash:comments>9</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1190</post-id>	</item>
		<item>
		<title>Centrum chytré domácnosti – HomeAssistant (Hass.io) – 4 část &#8211; integrace Sonoff 2</title>
		<link>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/</link>
					<comments>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/#comments</comments>
		
		<dc:creator><![CDATA[jvyoralek]]></dc:creator>
		<pubDate>Sun, 16 Dec 2018 18:02:39 +0000</pubDate>
				<category><![CDATA[Smarthome]]></category>
		<category><![CDATA[homeassistant]]></category>
		<category><![CDATA[MQTT]]></category>
		<category><![CDATA[pow]]></category>
		<category><![CDATA[sensor]]></category>
		<category><![CDATA[senzor]]></category>
		<category><![CDATA[Sonoff]]></category>
		<category><![CDATA[sonoff-tasmota]]></category>
		<guid isPermaLink="false">https://blog.vyoralek.cz/?p=1073</guid>

					<description><![CDATA[<p>V dnešní části budeme pokračovat dalšími informaci k integraci Sonoff produktů a ukážeme si jak číst a zobrazit senzorová data. Zároveň si ukážeme i obecné principy seskupování v HomeAssistentovi.</p>
<p>The post <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/">Centrum chytré domácnosti – HomeAssistant (Hass.io) – 4 část &#8211; integrace Sonoff 2</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>V pvním díle o integraci Sonoffů jsme si vybrali tu nejjednodušší možnost v podobě <a href="http://s.click.aliexpress.com/e/FyrJQ3r">Sonoff Basic</a>, který je v určitém ohledu poměrně hloupý &#8211; ovládá jen zapnutí či vypnutí připojeného zařízení.</p>



<p>Dnes se podíváme naopak na jedno z chytřejších zařízeních od Sonoffu a to <a href="http://s.click.aliexpress.com/e/B6ae2VB">Sonoff POW</a>, konkrétně pak v generaci 2.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="496" height="403" src="https://i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/07/sonoff4.png?resize=496%2C403&#038;ssl=1" alt="Sonoff POW R2" class="wp-image-372" data-recalc-dims="1"/><figcaption>Sonoff POW R2</figcaption></figure></div>



<p><a href="http://s.click.aliexpress.com/e/B6ae2VB">Sonoff POW</a> umí totéž co <a href="http://s.click.aliexpress.com/e/FyrJQ3r">Sonoff Basic</a> &#8211; zapnout / vypnout připojené zařízení, ale kromě toho poskytuje i poměrně hodně sensorových dat, které mohou být velmi zajímává pro zobrazení v <a href="https://www.home-assistant.io/">HomeAssistentovi</a>. Ukážeme si tedy jak tyto data číst a zobrazit.</p>



<p>Předpokladem bude opět fleshnutý Sonoff s nahraným <a href="https://blog.vyoralek.cz/iot/sonoff-produkty-nahrani-firmware-tasmota/">firmware Sonoff-Tasmota</a>, díky němuž můžeme integrovat do HomeAssistanta přes MQTT.</p>



<h2 class="wp-block-heading"><g class="gr_ gr_5 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="5" data-gr-id="5">Definici</g>&nbsp;sensorů v HomeAssistentovi</h2>



<p>Prvním krokem bude potřeba si říci, které data chceme do HomeAssistenta přenášet. <strong>Sonoff POW</strong> poskytují následující &#8211; za rovnítkem je název hodnoty v MQTT zprávě:</p>



<ol><li><strong>Aktuální napětí </strong>(V) = Voltage</li><li><strong>Aktuální proud</strong> (A) proudící do připojeného zařízení (klidně i více) = Current</li><li><strong>Aktuální příkon</strong> (W) = Power</li><li><strong>Zdánlivý příkon</strong> (VA) = ApparentPower</li><li><strong>Jalový příkon</strong> (VAr) = ReactivePower</li><li><strong>Účiník</strong> = Factor</li><li><strong>Spotřebu dnes</strong> (kWh) = Today</li><li><strong>Spotřebu včera </strong>(kWh) = Yesteday</li><li><strong>Celkovou spotřebu</strong> (kWh) = Total</li></ol>



<p>Všechny tyhle údaje najdeme v sekci <strong>ENERGY</strong> a celková MQTT zpráva tak může vypadat nějak takto:</p>



<pre class="wp-block-code"><code>{
    "Time": "2018-12-16T17:36:25",
    "ENERGY": {
        "TotalStartTime": "2018-12-15T16:30:27",
        "Total": 0.409,
        "Yesterday": 0.103,
        "Today": 0.306,
        "Power": 2,
        "ApparentPower": 12,
        "ReactivePower": 11,
        "Factor": 0.21,
        "Voltage": 243,
        "Current": 0.048
    }
}</code></pre>



<p>Btw. všechny sensorová data můžeme vidět i ve webovém rozhraní Sonoff-Tasmota zařízení (nezapomeňte nastavit správný typ modulu):</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="346" height="412" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/12/image-22.png" alt="" class="wp-image-1084"/><figcaption>Sonoff-Tasmota pro POW model Sonoffu</figcaption></figure></div>



<p>Sensory se do <strong>HomeAssistenta</strong>&nbsp;přidávají do hlavního konfiguračního souboru&nbsp;<strong>configuration.yaml</strong> a sekce <strong>sensor</strong>.</p>



<p>Příklad jednoho senzoru (kompletní příklad pro POW najdete na <a href="https://github.com/jvyoralek/homeassistant-config">Githubu</a>):</p>



<pre class="wp-block-code"><code>- platform: mqtt
      name: "room1_table_lamp_energy_today"
      state_topic: "tele/sonoff/SENSOR"
      value_template: '{{ value_json["ENERGY"]["Today"] }}'
      unit_of_measurement: "kWh"</code></pre>



<p><strong>State_topic</strong> je cesta k MQTT zprávě s údaji výše. Uprostřed nahradíme pouze slovo <strong>sonoff</strong> názvem, který jsme použili pro náš Sonoff.</p>



<p>Ve <strong>value_template</strong> pak vybíráme konkrétní hodnotu, tj. v příkladu např. <strong>Spotřebu dnes</strong>.</p>



<p>Posledním nastavením je <strong>unif_of_measurement</strong> = nastavení jednotky, pro lepší přehled cože to vlastně zobrazujeme.</p>



<h2 class="wp-block-heading">Zobrazení sensorů &#8211; seskupení se&nbsp;zařízením</h2>



<p>Pokud jsme definovali sensory, restartovali HomeAssistent a neuděli nějakou chybu tak bychom měli vidět sensory zhruba takto:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="524" height="308" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/12/image-21.png" alt="" class="wp-image-1081"/><figcaption>Výchozí zobrazení sensorů v HomeAssistentovi</figcaption></figure></div>



<p>V případě našeho příkladu už můžeme jásat, že máme nové údaje. Představte si ale, pokud budete mít takových zařízení více. Všechny senzory se přidají do horního řádku a celé to bude hodně nepřehledné.</p>



<p>Naštěstí existuje v HomeAssistentovi funkce seskupování, která nám pomůže dát prvky které patří k sobě do jedné skupiny.</p>



<p>Ve výchozí konfiguraci bychom měli mít v configuration.yaml tento řádek:</p>



<pre class="wp-block-preformatted">group: !include groups.yaml</pre>



<p>Ten nám říká, že veškerá konfigurace skupin je uložena v separátním souboru groups.yaml. Ten již zřejmě na disku budete mít jen bude prázdný.</p>



<p>Pro příklad naší lampičky tak můžeme vytvořit jednu skupinu s ovládáním a sensorovými daty například takto:</p>



<pre class="wp-block-code"><code>sonoff:
  name: "Lampička"
  control: hidden
  entities:
    - light.room1_table_lamp
    - sensor.room1_table_lamp_energy_voltage
    - sensor.room1_table_lamp_energy_power
    - sensor.room1_table_lamp_energy_current
    - sensor.room1_table_lamp_energy_today
    - sensor.room1_table_lamp_energy_yesterday
    - sensor.room1_table_lamp_energy_total</code></pre>



<p>Tím máme hotové seskupení, nicméně po restartu uvidíme něco takového:</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="514" height="428" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/12/image-24.png" alt="Seskupené prvky bez přejmenování" class="wp-image-1086"/><figcaption>Seskupené prvky bez přejmenování</figcaption></figure></div>



<p>Jak vidíte název zařízení a jednotlivých sensorů není úplně ideální a zároveň by se nám hodilo změnit i drobně ikonky.</p>



<h2 class="wp-block-heading">Ladění v<g class="gr_ gr_19 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="19" data-gr-id="19">zhledu</g> &#8211; názvy a ikonky</h2>



<p>Pro všechny zařízení a senzory můžeme definovat hezké texty pro zobrazení a taky si pohrát s ikonkami.</p>



<p>Nejprve budeme potřebovat přidat jeden řádek <strong>customize</strong> do configuration.yaml (pokud ho tam už nemáme):</p>



<pre class="wp-block-code"><code>homeassistant:
  ...
  customize: !include customize.yaml</code></pre>



<p>Ten funguje podobně jako v případě seskupování, tj. říká nám, že veškerá customizace je uložená v samostatním souboru customize.yaml.</p>



<p>Samotný soubor pak vypadá nějak takto (kompletní soubor najdete na <a href="https://github.com/jvyoralek/homeassistant-config">Githubu)</a>:</p>



<pre class="wp-block-code"><code>light.room1_table_lamp:
  friendly_name: "Stolní lampička"
  icon: mdi:desk-lamp

sensor.room1_table_lamp_energy_voltage:
  friendly_name: "Napětí"
  icon: mdi:power-plug

...</code></pre>



<p>Nyní už jen restatujeme HomeAssistent a máme hezky vše seskupeno a pojmenováno.</p>



<div class="wp-block-image"><figure class="aligncenter"><img loading="lazy" decoding="async" width="536" height="431" src="//i0.wp.com/blog.vyoralek.cz/wp-content/uploads/2018/12/image-20.png" alt="Finální vzhled seskupených prvků" class="wp-image-1077"/><figcaption>Finální vzhled seskupených prvků</figcaption></figure></div>



<p>I když byl tento návod popsán na konkrétním produktu můžete vše použít obecně pro všechny produkty fungující na MQTT. Část týkající se seskupování a změny vzhledu je pak aplikovatelná úplně na cokoliv.</p>



<p>Stejně jako v přechozích dílech jsem kompletní konfigurační soubory uložil na <a href="https://github.com/jvyoralek/homeassistant-config">Github</a>. Můžeme si tak projít celou konfiguraci pěkně pohromady za všech díly.</p>



<p class="has-medium-font-size">Kompletní série o HomeAsistantovi obsahuje následující články:</p>



<ul>
<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-1-cast/">1. část</a> &#8211; Instalace HomeAsisstent </li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-2-cast-integrace-sonoff/">2. část</a> &#8211; <g class="gr_ gr_10 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="10" data-gr-id="10">Integrace</g> Sonoff s firmware Sonoff-<g class="gr_ gr_11 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="11" data-gr-id="11">Tasmota</g></li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-3-cast-integrace-homekit/">3. část</a> &#8211; <g class="gr_ gr_12 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="12" data-gr-id="12">Integrace</g> Homekit</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/">4. část</a> &#8211; <g class="gr_ gr_13 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="13" data-gr-id="13">Integrace</g> Sonoff s firmware Sonoff-Tasmota &#8211; 2 část</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-5-cast-wemos-d1-bme280-a-sht31/">5. část</a> &#8211; <g class="gr_ gr_14 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="14" data-gr-id="14">Integrace</g> s Wemos D1 a <g class="gr_ gr_15 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="15" data-gr-id="15">senzory</g> <g class="gr_ gr_20 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling" id="20" data-gr-id="20">teploty</g></li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-6-cast-sonoff-esphome/">6. část</a> &#8211; <g class="gr_ gr_16 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="16" data-gr-id="16">Integrace</g> Sonoff s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-7-cast-sonoff-pow-esphome/">7. část</a> &#8211; <g class="gr_ gr_17 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="17" data-gr-id="17">Integrace</g> Sonoff POW s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-8-cast-led-esphome/">8. část</a> &#8211; <g class="gr_ gr_18 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="18" data-gr-id="18">Integrace</g> LED Magic Home s firmware ESPHome</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-9-cast-integrace-zigbee-xiaomi-mijia-a-aqara/">9. část</a> &#8211; <g class="gr_ gr_31 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" id="31" data-gr-id="31">Integrace</g> Xiaomi Mijia a Aqara</li>



<li><a href="https://blog.vyoralek.cz/iot/vlastni-zigbee-gateway/">10. část</a> &#8211; Integrace vlastní Zigbee gateway</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-11-cast-vzdaleny-pristup-do-hass-io/">11. část</a> &#8211; Vzdálený přístup do Hass.io z Internetu</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-12-cast-zobrazeni-senzorovych-dat-pomoci-influxdb-a-grafany/">12. část</a> &#8211; zobrazení senzorových data pomocí InfluxDB a Grafany</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-13-cast-add-ony-ktere-pouzivam/">13. část</a> &#8211; Hass.io Add-ony, které používám</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-mi-flora/">14. část</a> &#8211; Integrace Xiaomi Mi Flora</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-15-cast-integrace-withings-nokia/">15. část</a> &#8211; Integrace Withings (Nokia) </li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-16-cast-nahrada-sqlite-databazi-mysql/">16. část</a> &#8211; náhrada SQLite databází MySQL</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-17-cast-hacs-addony/">17. část</a> &#8211; HACS Add-ony &#8211; instalace a konfigurace</li>



<li><a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-18-cast-integrace-sonoff-3/">18. část</a> &#8211; Integrace Sonoff s firmware eWeLink </li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-nova-integrace-tasmota-v-beta-verzi/">19. část</a> &#8211; nová integrace Sonoff pro HA</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-20-mereni-spotreby/">20. část</a> &#8211; měření spotřeby</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-21-automaticke-zalohy-a-obnoveni-ze-zalohy/">21. část </a>&#8211; automatické zálohy a obnovení ze zálohy</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-22-napojeni-hlasoveho-asistenta-amazon-alexa/">22. část</a> &#8211; napojení hlasového asistenta Amazon Alexa</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-23-automaticke-zalohy-2/">23. část</a> &#8211; automatické zálohy na síťový sdílení disk (Samba)</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-24-bluetooth-zarizeni-a-esphome-proxy/">24. část</a> &#8211; Bluetooth zařízení a ESPHome proxy</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-25-nefunkcni-blokovana-aktualizace-homeassistanta/">25. část</a> &#8211; nefunkční aktualizace HomeAssistanta</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-26-integrace-bluetooth-produktu-switchbot/">26. část</a> &#8211; integrace SwitchBot produktů</li>



<li><a href="https://blog.vyoralek.cz/iot/homeassistant-27-integrace-fotovoltaiky-a-prehledy-v-ha/">27. část</a> &#8211; integrace fotovoltaiky Growatt</li>
</ul>
<p>The post <a href="https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/">Centrum chytré domácnosti – HomeAssistant (Hass.io) – 4 část &#8211; integrace Sonoff 2</a> appeared first on <a href="https://blog.vyoralek.cz">blog.vyoralek.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.vyoralek.cz/iot/centrum-chytre-domacnosti-homeassistant-hass-io-4-cast-integrace-sonoff-2/feed/</wfw:commentRss>
			<slash:comments>9</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1073</post-id>	</item>
	</channel>
</rss>
