<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Like the Color and the Bird</title>
    <link>https://bryanredeagle.writeas.com/</link>
    <description>Here is a place where Bryan writes his thoughts and maybe some stories.</description>
    <pubDate>Sun, 05 Apr 2026 23:21:24 +0000</pubDate>
    <item>
      <title>Today&#39;s Review: Farewell My Little Viking by Wizard of Loneliness</title>
      <link>https://bryanredeagle.writeas.com/todays-review-farewell-my-little-viking-by-wizard-of-loneliness?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[I am not a musician. Nor am I informed about music. I just like to listen to it. Keep that in mind as I struggle to describe my thoughts on this review of Farewell My Little Viking by Wizard of Loneliness.!--more--&#xA;&#xA;The album cover for Farewell My Little Viking by Wizard of Loneliness&#xA;&#xA;I love it.&#xA;&#xA;Alright! Review over! Pack it up, everyone. We&#39;re done here.&#xA;&#xA;I do very much enjoy this album. I found it while browsing Bandcamp&#39;s vaporwave section. Once I spotted Little Pete&#39;s face, I knew it was going to be a winner.&#xA;&#xA;The album&#39;s tone and inspiration comes from the early 90s Nickelodeon show, The Adventures of Pete and Pete. It is about two brothers, who are both named Pete, and their adventures in their hometown of Wellsville. Big Pete would narrate the bizarre and surreal events as if these were just every day occurrences. The tone of the show is very mellow, even in the tenser moments.&#xA;&#xA;The album takes its music in the same direction. Various moods play out, but it&#39;s all very mellow. Samples from the show are used, and the accompanying music feels right as if it could be in the show. Which is interesting considering the music for the show was primarily rock music by the band Polaris.&#xA;&#xA;If you&#39;ve listened to vaporwave before, the album will feel pretty familiar in terms of how it&#39;s put together. It&#39;s very sample heavy, and it manipulates and stretches those samples to give a dream-like quality. Let&#39;s take a look at a few of my favorite songs:&#xA;&#xA;&#34;m a r m a l a d e  c r e a m&#34; is about Little Pete&#39;s apathy towards music from the episode &#34;Hard Day&#39;s Pete&#34;. It starts with an intro from the episode and Little Pete&#39;s pirate radio station using a high-powered walkie-talkie. The song then meanders through a simple jazz-y tune until it ends with a dejected Little Pete trying to remember a song he had heard.&#xA;&#xA;&#34;f i e l d o f p e t e&#34; feels like a fun, summer-y song. Something I would listen to while driving on a road trip.&#xA;&#xA;&#34;F a r e w e l l  M y  L i t t l e  V i k i n g&#34; is a somber tune. It takes its tone from the episode of the same name where Artie, the strongest man... in the world, is disposed of by the International Adult Conspiracy. Eventually he is saved by Little Pete, but he decides to leave of his own, realizing that Little Pete has learned everything he needs from Artie.&#xA;&#xA;&#34;M o m &#39; s  P l a t e&#34; is an atmospheric tune. Like a morning song on a spring or summer day.&#xA;&#xA;Overall, the album is a very calming listen, and I enjoy hearing it while I work. You should give it a listen too.&#xA;&#xA;iframe style=&#34;border: 0; width: 100%; height: 472px;&#34; src=&#34;https://bandcamp.com/EmbeddedPlayer/album=2305468498/size=large/bgcol=ffffff/linkcol=0687f5/artwork=none/transparent=true/&#34; seamlessa href=&#34;https://halcyontapes.bandcamp.com/album/farewell-my-little-viking&#34;Farewell My Little Viking by Wizard of Loneliness/a/iframe]]&gt;</description>
      <content:encoded><![CDATA[<p>I am not a musician. Nor am I informed about music. I just like to listen to it. Keep that in mind as I struggle to describe my thoughts on this review of <em>Farewell My Little Viking</em> by Wizard of Loneliness.</p>

<p><img src="https://i.snap.as/ckGCJBEe.jpg" alt="The album cover for Farewell My Little Viking by Wizard of Loneliness"/></p>

<p>I love it.</p>

<p>Alright! Review over! Pack it up, everyone. We&#39;re done here.</p>

<p>I do very much enjoy this album. I found it while browsing Bandcamp&#39;s vaporwave section. Once I spotted Little Pete&#39;s face, I knew it was going to be a winner.</p>

<p>The album&#39;s tone and inspiration comes from the early 90s Nickelodeon show, <em>The Adventures of Pete and Pete</em>. It is about two brothers, who are both named Pete, and their adventures in their hometown of Wellsville. Big Pete would narrate the bizarre and surreal events as if these were just every day occurrences. The tone of the show is very mellow, even in the tenser moments.</p>

<p>The album takes its music in the same direction. Various moods play out, but it&#39;s all very mellow. Samples from the show are used, and the accompanying music feels right as if it could be in the show. Which is interesting considering the music for the show was primarily rock music by the band Polaris.</p>

<p>If you&#39;ve listened to vaporwave before, the album will feel pretty familiar in terms of how it&#39;s put together. It&#39;s very sample heavy, and it manipulates and stretches those samples to give a dream-like quality. Let&#39;s take a look at a few of my favorite songs:</p>

<p>“m a r m a l a d e  c r e a m” is about Little Pete&#39;s apathy towards music from the episode “Hard Day&#39;s Pete”. It starts with an intro from the episode and Little Pete&#39;s pirate radio station using a high-powered walkie-talkie. The song then meanders through a simple jazz-y tune until it ends with a dejected Little Pete trying to remember a song he had heard.</p>

<p>“f i e l d o f p e t e” feels like a fun, summer-y song. Something I would listen to while driving on a road trip.</p>

<p>“F a r e w e l l  M y  L i t t l e  V i k i n g” is a somber tune. It takes its tone from the episode of the same name where Artie, the strongest man... in the world, is disposed of by the International Adult Conspiracy. Eventually he is saved by Little Pete, but he decides to leave of his own, realizing that Little Pete has learned everything he needs from Artie.</p>

<p>“M o m &#39; s  P l a t e” is an atmospheric tune. Like a morning song on a spring or summer day.</p>

<p>Overall, the album is a very calming listen, and I enjoy hearing it while I work. You should give it a listen too.</p>

<iframe style="border: 0; width: 100%; height: 472px;" src="https://bandcamp.com/EmbeddedPlayer/album=2305468498/size=large/bgcol=ffffff/linkcol=0687f5/artwork=none/transparent=true/">&lt;a href=&#34;https://halcyontapes.bandcamp.com/album/farewell-my-little-viking&#34;&gt;Farewell My Little Viking by Wizard of Loneliness&lt;/a&gt;</iframe>
]]></content:encoded>
      <guid>https://bryanredeagle.writeas.com/todays-review-farewell-my-little-viking-by-wizard-of-loneliness</guid>
      <pubDate>Thu, 03 Feb 2022 22:49:52 +0000</pubDate>
    </item>
    <item>
      <title>Concept Write-up: MachPBX</title>
      <link>https://bryanredeagle.writeas.com/concept-write-up-machpbx?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[I often have ideas for stories I&#39;d like to tell and programs I&#39;d like to write. More often than not, I do not have time to actually implement them. So I will take this small break to flesh them out a bit with words so that when I do have time, I have my original thoughts on &#34;paper&#34;.!--more--&#xA;&#xA;The Idea&#xA;&#xA;So I was, for a long time, a telephony engineer. I still do some phone things, but not like I used to do. I have worked on a great many systems some big ones like Cisco CallManager, but mostly smaller, open source systems. A lot of Switchvox (I know, not open source), FreePBX (and it&#39;s lying, commercial sibling PBXact), and FusionPBX.&#xA;&#xA;And they&#39;re all... okay. They want to be something they&#39;re not. They want to be these big systems that can help small, two-phone offices as well as thousand-plus, multi-location corporations. And on top of that, they are built with older programming paradigms that make them very clunky to extend.&#xA;&#xA;FreePBX, for example, is a proprietary PBX that lacks any sensible way to scale other than throwing more hardware at it. It wants to be this big player, but lacks the technical capability to do so. And in case you&#39;re wondering about why I called it proprietary, it is technically open source. Several core components are open source. However, there&#39;s no sensible way to install it other than the ISO, and they claim a copyright on the ISO and that no one else can distribute it. On top of that, several key modules are proprietary and Sangoma is very hostile to anyone that tries to build modules that may even hint at similar functionality. It&#39;s closed source wearing an open source mask.&#xA;&#xA;FusionPBX, on the other hand, has all of the tools to scale massively, but every piece of it feels very outdated. Visually, it&#39;s an engineers idea of good UX. Managing upgrades requires git knowledge (fine for developers, but not phone engineers). Scaling requires you to be a database admin. Certificates are fetched from Let&#39;s Encrypt, but you have to renew them manually. And, finally, writing new features is like time traveling back to 2005 in the bad, old days of PHP development.&#xA;&#xA;What&#39;s extra silly about FusionPBX is that the core concepts are brilliant. It&#39;s just the implementation that needs work, and that&#39;s where I will begin.&#xA;&#xA;The Infrastructure&#xA;&#xA;To begin, this is not going to be some system that claims to be the answer for every phone situation. It&#39;s intended to be a single server PBX with a rock solid foundation. It will scale with better hardware and it will keep your data safe, but it&#39;s not intended to run across multiple boxes or automatically fail over to backup hardware (though that would probably be possible with some tweaking). &#xA;&#xA;For a good system, you need your core software pieces to be solid. FusionPBX uses nginx, PHP, and PostgreSQL for the web UI. For the phone switch, it&#39;s FreeSWITCH running Lua scripts to fetch config data. It&#39;s very clever, especially since Lua is built into FreeSWITCH and can manage calls and how they route. Because this is a solid foundation I&#39;m going to start similar.&#xA;&#xA;The MachPBX web UI is also going to be PHP. I&#39;m going to change up the web server to Caddy. Caddy has an API that I can keep behind a firewall, and then use PHP to make calls to it for any changes I need to make. On top of that, Caddy has built in support for Let&#39;s Encrypt. That way certificates can renew without any extra work. A cronjob written in PHP will run daily to check for new certificates, compile them into a bundle and stash them in a place that FreeSWITCH can reach.&#xA;&#xA;The database will also be changed to SQLite. It simple to run, and rock-solid production software. A single SQLite database will run to manage users and permissions, and then each tenant on the phone system will get a separate SQLite database. Will multi-tenancy be useful on a PBX like this? No clue, but it&#39;s easy to do on the phone switch.&#xA;&#xA;Also running will be Litestream, a software that replicates SQLite databases to various remote storage solutions. This along with rclone will make sure all of the data is safely stored remotely.&#xA;&#xA;For the phone routing, the system will run FreeSWITCH with Lua scripting to handle config and call routing. Essentially, like Fusion PBX does now. How I will handle it will vary slightly, but that will be explained below when we reach the section regarding modules.&#xA;&#xA;All of this will be installed on any FreeSWITCH supported OSs using Ansible to handle the installation and configuration of softwares.&#xA;&#xA;The Web UI Backend&#xA;&#xA;Here&#39;s where the biggest deviation from FusionPBX happens. FusionPBX&#39;s PHP UI is mostly self-written with no framework being used. Each module, despite being separate modules, is packaged with the main git repo. So when you download the PBX, you download every module whether you need it or not. And each module doesn&#39;t follow the common MVC paradigm... or really anything. When a module is loaded into the PHP applicaiton, you can add a menu item. However, the menu item simply points to a PHP file. The PHP file then handles everything. The logic, the database calls, and writing the HTML to the browser. On top of that, nothing is documented so it requires looking at every other module to figure out how to do anything.&#xA;&#xA;For MachPBX, off the shelf libraries will be used when possible. To this end, it will use the CakePHP framework. There are a lot of great frameworks out there, but I think Cake would require the least amount of tinkering to be production ready and still be easy enough for developers to contribute to the project.&#xA;&#xA;Every piece of the MachPBX UI will be a standard CakePHP Plugin (for which the project includes documentation) that can be installed using Composer. Adding functionality to MachPBX will be almost as easy as writing a CakePHP plugin, and interactions with FreeSWITCH using the plugins will be documented so that as many people as possible can contribute to the project.&#xA;&#xA;And speaking of FreeSWITCH, since it will use Lua scripts to deal with configuration and call handling we&#39;ll need a way to include those scripts in the plugins. Which is why part of the install process for plugins will include a method to add that plugin&#39;s lua scripts to the search path used by Lua within FreeSWITCH. Thus making the whole system modular.&#xA;&#xA;A modular system would be very handy for those times when you don&#39;t want to install support for every phone manufacturer under the sun. Maybe you just want Yealink or Snom, or Yealink and Snom but not Polycom. The point is to have the option to choose, and make it easy for you to do that.&#xA;&#xA;The Web UI Frontend&#xA;&#xA;So finally, the part of the UI that users can see. Most phone systems are ugly to look at. We&#39;ll work this one to be more pleasant to use, and the design will use an efficient CSS framework to keep it looking mostly consistent across plugins.&#xA;&#xA;Personally, I tend to shy away from CSS frameworks, choosing to write all of the CSS from scratch. Because of this, I haven&#39;t yet chosen one to use. But I would like it to include the common pieces like forms, tables, buttons, and such. Even better would be if it included a dark mode. Once I find a suitable option, I will update this section with more details.]]&gt;</description>
      <content:encoded><![CDATA[<p>I often have ideas for stories I&#39;d like to tell and programs I&#39;d like to write. More often than not, I do not have time to actually implement them. So I will take this small break to flesh them out a bit with words so that when I do have time, I have my original thoughts on “paper”.</p>

<h2 id="the-idea" id="the-idea">The Idea</h2>

<p>So I was, for a long time, a telephony engineer. I still do some phone things, but not like I used to do. I have worked on a great many systems some big ones like Cisco CallManager, but mostly smaller, open source systems. A lot of Switchvox (I know, not open source), FreePBX (and it&#39;s lying, commercial sibling PBXact), and FusionPBX.</p>

<p>And they&#39;re all... okay. They want to be something they&#39;re not. They want to be these big systems that can help small, two-phone offices as well as thousand-plus, multi-location corporations. And on top of that, they are built with older programming paradigms that make them very clunky to extend.</p>

<p>FreePBX, for example, is a proprietary PBX that lacks any sensible way to scale other than throwing more hardware at it. It wants to be this big player, but lacks the technical capability to do so. And in case you&#39;re wondering about why I called it proprietary, it is technically open source. Several core components are open source. However, there&#39;s no sensible way to install it other than the ISO, and they claim a copyright on the ISO and that no one else can distribute it. On top of that, several key modules are proprietary and Sangoma is very hostile to anyone that tries to build modules that may even hint at similar functionality. It&#39;s closed source wearing an open source mask.</p>

<p>FusionPBX, on the other hand, has all of the tools to scale massively, but every piece of it feels very outdated. Visually, it&#39;s an engineers idea of good UX. Managing upgrades requires git knowledge (fine for developers, but not phone engineers). Scaling requires you to be a database admin. Certificates are fetched from Let&#39;s Encrypt, but you have to renew them manually. And, finally, writing new features is like time traveling back to 2005 in the bad, old days of PHP development.</p>

<p>What&#39;s extra silly about FusionPBX is that the core concepts are brilliant. It&#39;s just the implementation that needs work, and that&#39;s where I will begin.</p>

<h2 id="the-infrastructure" id="the-infrastructure">The Infrastructure</h2>

<p>To begin, this is not going to be some system that claims to be the answer for every phone situation. It&#39;s intended to be a single server PBX with a rock solid foundation. It will scale with better hardware and it will keep your data safe, but it&#39;s not intended to run across multiple boxes or automatically fail over to backup hardware (though that would probably be possible with some tweaking).</p>

<p>For a good system, you need your core software pieces to be solid. FusionPBX uses nginx, PHP, and PostgreSQL for the web UI. For the phone switch, it&#39;s FreeSWITCH running Lua scripts to fetch config data. It&#39;s very clever, especially since Lua is built into FreeSWITCH and can manage calls and how they route. Because this is a solid foundation I&#39;m going to start similar.</p>

<p>The MachPBX web UI is also going to be PHP. I&#39;m going to change up the web server to Caddy. Caddy has an API that I can keep behind a firewall, and then use PHP to make calls to it for any changes I need to make. On top of that, Caddy has built in support for Let&#39;s Encrypt. That way certificates can renew without any extra work. A cronjob written in PHP will run daily to check for new certificates, compile them into a bundle and stash them in a place that FreeSWITCH can reach.</p>

<p>The database will also be changed to SQLite. It simple to run, and rock-solid production software. A single SQLite database will run to manage users and permissions, and then each tenant on the phone system will get a separate SQLite database. Will multi-tenancy be useful on a PBX like this? No clue, but it&#39;s easy to do on the phone switch.</p>

<p>Also running will be Litestream, a software that replicates SQLite databases to various remote storage solutions. This along with rclone will make sure all of the data is safely stored remotely.</p>

<p>For the phone routing, the system will run FreeSWITCH with Lua scripting to handle config and call routing. Essentially, like Fusion PBX does now. How I will handle it will vary slightly, but that will be explained below when we reach the section regarding modules.</p>

<p>All of this will be installed on any FreeSWITCH supported OSs using Ansible to handle the installation and configuration of softwares.</p>

<h2 id="the-web-ui-backend" id="the-web-ui-backend">The Web UI Backend</h2>

<p>Here&#39;s where the biggest deviation from FusionPBX happens. FusionPBX&#39;s PHP UI is mostly self-written with no framework being used. Each module, despite being separate modules, is packaged with the main git repo. So when you download the PBX, you download every module whether you need it or not. And each module doesn&#39;t follow the common MVC paradigm... or really anything. When a module is loaded into the PHP applicaiton, you can add a menu item. However, the menu item simply points to a PHP file. The PHP file then handles everything. The logic, the database calls, and writing the HTML to the browser. On top of that, nothing is documented so it requires looking at every other module to figure out how to do anything.</p>

<p>For MachPBX, off the shelf libraries will be used when possible. To this end, it will use the CakePHP framework. There are a lot of great frameworks out there, but I think Cake would require the least amount of tinkering to be production ready and still be easy enough for developers to contribute to the project.</p>

<p>Every piece of the MachPBX UI will be a standard CakePHP Plugin (for which the project includes <a href="https://book.cakephp.org/4/en/plugins.html" rel="nofollow">documentation</a>) that can be installed using Composer. Adding functionality to MachPBX will be almost as easy as writing a CakePHP plugin, and interactions with FreeSWITCH using the plugins will be documented so that as many people as possible can contribute to the project.</p>

<p>And speaking of FreeSWITCH, since it will use Lua scripts to deal with configuration and call handling we&#39;ll need a way to include those scripts in the plugins. Which is why part of the install process for plugins will include a method to add that plugin&#39;s lua scripts to the search path used by Lua within FreeSWITCH. Thus making the whole system modular.</p>

<p>A modular system would be very handy for those times when you don&#39;t want to install support for every phone manufacturer under the sun. Maybe you just want Yealink or Snom, or Yealink and Snom but not Polycom. The point is to have the option to choose, and make it easy for you to do that.</p>

<h2 id="the-web-ui-frontend" id="the-web-ui-frontend">The Web UI Frontend</h2>

<p>So finally, the part of the UI that users can see. Most phone systems are ugly to look at. We&#39;ll work this one to be more pleasant to use, and the design will use an efficient CSS framework to keep it looking mostly consistent across plugins.</p>

<p>Personally, I tend to shy away from CSS frameworks, choosing to write all of the CSS from scratch. Because of this, I haven&#39;t yet chosen one to use. But I would like it to include the common pieces like forms, tables, buttons, and such. Even better would be if it included a dark mode. Once I find a suitable option, I will update this section with more details.</p>
]]></content:encoded>
      <guid>https://bryanredeagle.writeas.com/concept-write-up-machpbx</guid>
      <pubDate>Wed, 29 Dec 2021 04:19:59 +0000</pubDate>
    </item>
    <item>
      <title>Smart Homes, Dumb Components</title>
      <link>https://bryanredeagle.writeas.com/smart-homes-dumb-components?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[Recently I have been attempting to improve my home in various way. Like a kind of &#34;home improvement&#34;, if you will. My home was built in 1910, and so it&#39;s very old. Much needs to be updated.&#xA;&#xA;Since its construction, people have &#34;improved&#34; it and &#34;fixed&#34; it. And by that, I mean they half-assed upgrades and repairs. Everything is just a little bit wrong. Like a text translation done by someone new to the originating language.&#xA;&#xA;This post, though, is not about the old wiring and plumbing and drywall over plaster. It&#39;s about making my home a smart home.!--more--&#xA;&#xA;Bad Purchases&#xA;&#xA;The Thermostat&#xA;&#xA;Let&#39;s start off on the wrong foot. I have bought a lot of mistakes. I still own some of those mistakes. They sit on shelves now collecting dust.&#xA;&#xA;The one of the earlier mistakes was a Honeywell Smart Thermostat. It was smart, reasonably priced, and wifi-enabled so I could check the temp and adjust it from anywhere. I was going to use the app to handle Geo-fencing so it would make sure to adjust the air before I got home.&#xA;&#xA;I was excited. Then I was disappointed.&#xA;&#xA;The thermostat did what it said on the tin. What it failed to mention (and my lesson in wifi smart devices) was that it was 2.4Ghz wifi only. Well, that&#39;s fine. I have both 2.4 and 5Ghz networks running. 5 for speed, 2.4 for distance. Nice!&#xA;&#xA;Not nice. Wifi networks carry a name called an SSID. It&#39;s what you see when you try to connect your computer or phone. I set both the 2.4 and 5Ghz networks to the same name, and modern devices then make their own decision about which will give you the best performance. It works very well.&#xA;&#xA;But not for Honeywell. Their thermostat actually had the hardware for both frequencies, but was set up to only use 2.4Ghz. What ended up happening is that unless I set up the networks with different names the thermostat would get confused and spew data packets everywhere and bring down the 5Ghz wifi. It would literally kick off almost every other device on the network.&#xA;&#xA;I didn&#39;t have great networking equipment at the time, and I wasn&#39;t about to have two SSIDs for the frequencies like a savage. So I returned the Honeywell and got a Google Nest E (or whatever the cheap one was at the time). Which I would later learn was a mistake, but for a different reason and one I will have to live with.&#xA;&#xA;Flakey Smart Bulbs&#xA;&#xA;A later mistake was smart bulbs. Our living doesn&#39;t have ceiling lights. It&#39;s all lamps that you had to turn on and off manually. So I decided to try and make that better by controlling them all with a switch.&#xA;&#xA;This being an old house, there were mistakes abound. Near the entryway was a blank wall plate. Something use to be there, but now it was just taped up wires. Using my low voltage skills, I learned some high voltage skills and pulled out the old wires. I installed a proper box and ran a new cable with grounding and everything. There I placed a new outlet with USB ports and a smart switch. That smart switch was a product line called C by GE (now called Cync... sort of) and had smart bulbs as well.&#xA;&#xA;Details on the box and website were sparse, but mentioned that it did not need a hub and worked with Google Home out of the box. Great!&#xA;&#xA;I got home and installed the switch and set up the bulbs and they worked like a charm! I could even shout at a Google Home Speaker and they would turn on, off, and dim.&#xA;&#xA;Bam! The lights turned on.&#xA;&#xA;Bam! The lights turned off.&#xA;&#xA;Bam! My family got sick of how excited I was about light bulbs that did what light bulbs do best.&#xA;&#xA;Then I got more bulbs because we had recently finished part of the basement to be usable space as an office and kid cave. All the bulbs down there and in our upstairs landing got swapped out.&#xA;&#xA;It was exciting, until it wasn&#39;t.&#xA;&#xA;Turns out that the lack of a hub did not mean wifi. It meant Bluetooth. And not great Bluetooth. Outside of the living room (which I believe was using the wifi smart switch to send Bluetooth to the bulbs), none of the bulbs worked consistently. When they worked, they worked great! But that was rare. Eventually, only the living room used any of the smarts (because of the switch) and the others were effectively expensive regular bulbs.&#xA;&#xA;Brands or: Or How I Learned to Stop Worrying and Hate Everything&#xA;&#xA;In the meantime, I was able to get myself some much better networking equipment. Like, business grade stuff. It&#39;s been awesome.&#xA;&#xA;Then, we had to replace our oven. We decided to get a Samsung smart oven. It&#39;s a convection oven and has a built in air fryer (which I learned is just convection baking, but with a separate button). It has this great feature to turn the oven on from the app. Granted, the timer function starts before the oven is heated to temp... which makes no sense. And you can&#39;t use it remotely... which is not useful if you&#39;re buying frozen pizza and want to throw it in right when you get home.&#xA;&#xA;To Samsung&#39;s credit, the remote block is a safety feature of gas ovens only. Not to Samsung&#39;s credit, it only really works in the SmartThings app. It claims to hook into Google Assistant for voice support, but it does not. Nor does it work in Google Home. I can see the oven, but it does nothing.&#xA;&#xA;I also had to replace my garage door because it was literally falling off the hinges. It had been like that for well over a year before I was able to replace it. The installers put in a wifi-enabled Chamberlain. It doesn&#39;t work with Google Home or SmartThings. Just a select few home automation tools that have a huge upfront cost to install. And also Resideo (Honeywell&#39;s smart home app).&#xA;&#xA;I then got a Legrand smart outlet to manage power on a schedule. This was so I could turn off power to the kid cave so one of my kids couldn&#39;t sneak video games all night (long story, he&#39;s a teenager). I then learned after buying it and ripping it open that only one outlet is managed. It didn&#39;t say that on the box. After seeing the device up close, I then saw the tell tale sign of a single controlled outlet. Turns out most outlets are like this. I think it&#39;s dumb.&#xA;&#xA;I then started looking for smart bulbs. Something with wifi, and reasonably priced. I landed on Cree Connected Max. They are wifi, and they integrate into both Google Assistant/Home and SmartThings so it gives me one place to toggle everything and still shout at them. Unlike so much of this post, they have been great. I even reconnected my outdoor flood lights (that have no switch wired to them), and installed Cree bulbs that work like a dream.&#xA;&#xA;Though, since the switch I was using was also C by GE (same as the bulbs), I needed a new switch for the living room. I did a lot of research to find something that would work. I then chose something I hoped would work.&#xA;&#xA;It did not.&#xA;&#xA;I got a TPLink Kasa smart switch. To its credit, it does what it claims to do. However, it&#39;s the same as every other smart wall switch. It doesn&#39;t care about your bulbs (unless for some brands you buy their bulbs), it just turns your wired lights into smart lights. Why have smart bulbs, but no smart switch? or a button? Or anything? Why have a switch that can&#39;t also control bulbs?&#xA;&#xA;I get we&#39;re smart people trying to automate and shout at our devices like on Star Trek or something, but most of the world still reflexively goes for a switch. And if you have smart bulbs on wired lights, they become dumb bulbs when that switch (smart or not) turns the lights off. It is nonsense.&#xA;&#xA;When I grabbed the switch, I also got Outdoor Smart Plugs by TPLink. They worked except that they only worked on the home network. Remote access didn&#39;t worked for some reason. TPLink said that this issue was related to either DNS (which would make sense if I was using the internet provider&#39;s DNS) or my DHCP server.&#xA;&#xA;The DHCP server claim was a funny one. Their explanation was that I needed to set the IPs statically because devices may ask for the same IP address at the same time. For a house, that probably will never happen. That&#39;s not how DHCP works by default. You may get that in a business environment, but even then a good router or DHCP server would not hand out duplicate IP addresses.&#xA;&#xA;Either way, it meant that the Kasa devices didn&#39;t work in SmartThings or Google Assistant/Home. Those apps talked to TPLink&#39;s cloud service to connect to the devices. Since I couldn&#39;t get them to work remotely, it meant that those apps couldn&#39;t use them either.&#xA;&#xA;But what About [Insert Brand/Tech Here]?&#xA;&#xA;So before I get into my solutions. What about all those other options?&#xA;&#xA;Why not Hue? Well, to be frank, they are expensive. $30 per bulb is a lot. And I didn&#39;t want to keep buying devices that needed their own hubs, turning my network rack into a shelf of small hub devices.&#xA;&#xA;On that note, why not Z-Wave or Zigbee? Well, at the time, I was trying to avoid hubs because I was having trouble finding one with good reviews or would last longer than a year (cause it was tied to some small company&#39;s cloud service that would go defunct) or was even for sale anywhere.&#xA;&#xA;So yeah.&#xA;&#xA;Beating Everything into Submission with Home Assistant and Node-RED&#xA;&#xA;However, I did give in to a hub of sorts. I decided to try my hand at an open source smart home product since the nerds of the internet are as stubborn as I am. I asked for suggestions on Fosstodon, a Mastodon instance, and they all rooted for Home Assistant.&#xA;&#xA;Seeing as I had a spare Raspberry Pi 4, I installed it on that. Giving me a hub, but one that I can use as something else if this failed.&#xA;&#xA;Installation was simple. One of the options is to write Home Assistant (and all of the OS and libraries it needs) to an SD card, insert it, and power up the Pi. There are other options, but I wanted simple.&#xA;&#xA;There was some initial set up, but that was just filling in some forms. Afterwards, it immediately detected some of my devices when I loaded it up the first time. Setting those up was pretty simple.&#xA;&#xA;Now there was a caveat to the lights. Cree doesn&#39;t currently offer any kind of cloud service that Home Assistant can tie into. Fortunately, the Home Assistant community discovered that the cloud service is a re-branded device service by Tuya. It required some steps to take and to sign up for a developer program, but it did integrate into Home Assistant.&#xA;&#xA;So now I have my switch and bulbs and outlets and media players and garage door (cause they figured out how to get Chamberlain&#39;s API working with Home Assistant) working and automated.&#xA;&#xA;A Note about a Couple Devices&#xA;&#xA;Before I get on with talking about solving my light problems, I wanted to touch on my Nest Thermostat and Samsung oven. They are the two smart devices I have failed to add to Home Assistant.&#xA;&#xA;The oven may be able to added in the future. There&#39;s no direct integration, but I may be able to automate it by connecting to SmartThings. However, that requires some set up and webhooks for push notifications. I&#39;d rather not have that set up on my network and may add it later through Nabu Casa.&#xA;&#xA;Nabu Casa is a cloud service by the founder of Home Assistant. It&#39;s meant to simplify things like connecting to SmartThings, as well as connecting to voice services like Alexa and Google Assistant. It also offers a way to remotely access your Home Assistant install without having to configure a VPN connection.&#xA;&#xA;I can do all that myself, but I&#39;m also lazy and don&#39;t want to maintain it. Plus it helps to fund Home Assistant, so I&#39;m down for that will probably buy it later.&#xA;&#xA;As for the Nest Thermostat, it&#39;s not a simple integration and the community has been reporting various amounts of success since Google, Nest&#39;s owner, has been messing with the developer API and people&#39;s ability to use it. So that&#39;s on hold and I may look into another smart thermostat that requires less leg work with a chance of failure.&#xA;&#xA;Long paragraph short, I don&#39;t want to put in the effort if I may fail. I don&#39;t do enough smart thermostat things to make it worth it.&#xA;&#xA;Back to the Stuff About Smart Bulbs&#xA;&#xA;So my goal in all this was to get my living room lights to turn on and off using both a smart home app and a physical switch. I had everything in Home Assistant I could turn them on and off with toggles. Even got the app working and can toggle from my phone.&#xA;&#xA;However, there was no way to group them so that if one turned on or off, they all would do the same. So I looked to the docs to see what I could do. They suggested settings things up with automations. I could use the switch as a trigger (since I&#39;ll probably just hit the main toggle for the room in the app), and then set the other lights as actions to turn on and off along with it.&#xA;&#xA;And it worked!... sort of.&#xA;&#xA;It did work. I could hit the switch and the other lights in the room would turn on and off. The downside was that I was waiting for almost 10 sec each time. Everyone would think it was broken by that time and hit it more, just to confuse the system. So I did some digging...&#xA;&#xA;And I found (again through the community) that Kasa products use the cloud for initial set up to the wifi network, but then Home Assistant just talked to it directly on the local network. In order to get device status, it polls for updates every so often (I&#39;m guess every 10 sec or so). There were various solutions to remedy it, but the one that jumped out at me was Node-RED&#xA;&#xA;Enter Node-RED&#xA;&#xA;Node-RED is a device workflow tool. It&#39;s written in NodeJS and gives you a visual tool to create automation sequences. If your install has the Supervisor, it can be added as an add-on that is automatically integrated into Home Assistant. Which is what I did to great success.&#xA;&#xA;When I jumped into it, I then added a custom TPLink package for it that added support for Kasa devices. After much fiddling, I was able to shorten the check time to 1 sec, and would change the living room lights on and off based on the switch status using Home Assistant scripts.&#xA;&#xA;I then took it a step further.&#xA;&#xA;Node-RED has somewhat of a learning curve. It makes more sense if you&#39;ve done any programming, but it&#39;s still a little odd. The big thing that was tripping me up was that the documentation for the TPLink package was sparse and assumed you knew you had to add the Inject node to tell the TPlink node to start polling for events. I did not, and it required some reading of fine print to figure it out.&#xA;&#xA;And really, similar goes for Node-RED in general. It has decent documentation and some users have created videos, but they feel like they are explaining things to people who already get how it works. Which I did not so I had to dig a bit more to get what I needed.&#xA;&#xA;But once I got it, I got it. I tried using the Sun Events node to change the color temp of my lights based on the time of day. The node listed all of the events, but didn&#39;t say what order they go in and neither did the library it relied on. So I threw that away and had it check time ranges that I defined. When the lights were turned on, it would check the time of day and set a scene to match how they should be with the sun.&#xA;&#xA;Then I set a recurring check to update the scene for the time of day if they were already on (no sense in changing if they&#39;re off).&#xA;&#xA;Then I got real fancy and tied the lights to my Roku player (which is hooked up to an overhead projector). Once someone starts playing a movie or video, the lights turn off. They then stay off until someone goes back to the home screen. I did that just in case they pause or rewind very shortly. They wouldn&#39;t want the lights to flicker on and off as they do things.&#xA;&#xA;You can see my complete workflow below.&#xA;&#xA;A screenshot of a Node-RED workflow.&#xA;&#xA;Conclusion&#xA;&#xA;I like making my home into a smart home. I hate smart device brands because they feel anti-consumer (specifically in the &#34;we want you to use only our products even though we may not sell everything you need or do exactly what you need&#34; sort of way). I really like Home Assistant and Node-RED. I may think about adding Z-Wave or Zigbee to my Pi to adding support for more sorts of devices if they offer things like generic buttons and the signal is strong enough.&#xA;&#xA;I can&#39;t imagine regular people being able to set up a smart home. Consumer brands make it so frustrating and difficult and arbitrarily limiting, that I&#39;m not surprised most people don&#39;t go beyond Hue. Hue is expensive, but they also just work and they have wall buttons that just make the smart bulbs do what they do best.]]&gt;</description>
      <content:encoded><![CDATA[<p>Recently I have been attempting to improve my home in various way. Like a kind of “home improvement”, if you will. My home was built in 1910, and so it&#39;s very old. Much needs to be updated.</p>

<p>Since its construction, people have “improved” it and “fixed” it. And by that, I mean they half-assed upgrades and repairs. Everything is just a little bit wrong. Like a text translation done by someone new to the originating language.</p>

<p>This post, though, is not about the old wiring and plumbing and drywall over plaster. It&#39;s about making my home a smart home.</p>

<h2 id="bad-purchases" id="bad-purchases">Bad Purchases</h2>

<h3 id="the-thermostat" id="the-thermostat">The Thermostat</h3>

<p>Let&#39;s start off on the wrong foot. I have bought a lot of mistakes. I still own some of those mistakes. They sit on shelves now collecting dust.</p>

<p>The one of the earlier mistakes was a Honeywell Smart Thermostat. It was smart, reasonably priced, and wifi-enabled so I could check the temp and adjust it from anywhere. I was going to use the app to handle Geo-fencing so it would make sure to adjust the air before I got home.</p>

<p>I was excited. Then I was disappointed.</p>

<p>The thermostat did what it said on the tin. What it failed to mention (and my lesson in wifi smart devices) was that it was 2.4Ghz wifi only. Well, that&#39;s fine. I have both 2.4 and 5Ghz networks running. 5 for speed, 2.4 for distance. Nice!</p>

<p>Not nice. Wifi networks carry a name called an SSID. It&#39;s what you see when you try to connect your computer or phone. I set both the 2.4 and 5Ghz networks to the same name, and modern devices then make their own decision about which will give you the best performance. It works very well.</p>

<p>But not for Honeywell. Their thermostat actually had the hardware for both frequencies, but was set up to only use 2.4Ghz. What ended up happening is that unless I set up the networks with different names the thermostat would get confused and spew data packets everywhere and bring down the 5Ghz wifi. It would literally kick off almost every other device on the network.</p>

<p>I didn&#39;t have great networking equipment at the time, and I wasn&#39;t about to have two SSIDs for the frequencies like a savage. So I returned the Honeywell and got a Google Nest E (or whatever the cheap one was at the time). Which I would later learn was a mistake, but for a different reason and one I will have to live with.</p>

<h3 id="flakey-smart-bulbs" id="flakey-smart-bulbs">Flakey Smart Bulbs</h3>

<p>A later mistake was smart bulbs. Our living doesn&#39;t have ceiling lights. It&#39;s all lamps that you had to turn on and off manually. So I decided to try and make that better by controlling them all with a switch.</p>

<p>This being an old house, there were mistakes abound. Near the entryway was a blank wall plate. Something use to be there, but now it was just taped up wires. Using my low voltage skills, I learned some high voltage skills and pulled out the old wires. I installed a proper box and ran a new cable with grounding and everything. There I placed a new outlet with USB ports and a smart switch. That smart switch was a product line called C by GE (now called Cync... sort of) and had smart bulbs as well.</p>

<p>Details on the box and website were sparse, but mentioned that it did not need a hub and worked with Google Home out of the box. Great!</p>

<p>I got home and installed the switch and set up the bulbs and they worked like a charm! I could even shout at a Google Home Speaker and they would turn on, off, and dim.</p>

<p><strong>Bam!</strong> The lights turned on.</p>

<p><strong>Bam!</strong> The lights turned off.</p>

<p><strong>Bam!</strong> My family got sick of how excited I was about light bulbs that did what light bulbs do best.</p>

<p>Then I got more bulbs because we had recently finished part of the basement to be usable space as an office and kid cave. All the bulbs down there and in our upstairs landing got swapped out.</p>

<p>It was exciting, until it wasn&#39;t.</p>

<p>Turns out that the lack of a hub did not mean wifi. It meant Bluetooth. And not great Bluetooth. Outside of the living room (which I believe was using the wifi smart switch to send Bluetooth to the bulbs), none of the bulbs worked consistently. When they worked, they worked great! But that was rare. Eventually, only the living room used any of the smarts (because of the switch) and the others were effectively expensive regular bulbs.</p>

<h3 id="brands-or-or-how-i-learned-to-stop-worrying-and-hate-everything" id="brands-or-or-how-i-learned-to-stop-worrying-and-hate-everything">Brands or: Or How I Learned to Stop Worrying and Hate Everything</h3>

<p>In the meantime, I was able to get myself some much better networking equipment. Like, business grade stuff. It&#39;s been awesome.</p>

<p>Then, we had to replace our oven. We decided to get a Samsung smart oven. It&#39;s a convection oven and has a built in air fryer (which I learned is just convection baking, but with a separate button). It has this great feature to turn the oven on from the app. Granted, the timer function starts before the oven is heated to temp... which makes no sense. And you can&#39;t use it remotely... which is not useful if you&#39;re buying frozen pizza and want to throw it in right when you get home.</p>

<p>To Samsung&#39;s credit, the remote block is a safety feature of gas ovens only. Not to Samsung&#39;s credit, it only really works in the SmartThings app. It claims to hook into Google Assistant for voice support, but it does not. Nor does it work in Google Home. I can see the oven, but it does nothing.</p>

<p>I also had to replace my garage door because it was literally falling off the hinges. It had been like that for well over a year before I was able to replace it. The installers put in a wifi-enabled Chamberlain. It doesn&#39;t work with Google Home or SmartThings. Just a select few home automation tools that have a huge upfront cost to install. And also Resideo (Honeywell&#39;s smart home app).</p>

<p>I then got a Legrand smart outlet to manage power on a schedule. This was so I could turn off power to the kid cave so one of my kids couldn&#39;t sneak video games all night (long story, he&#39;s a teenager). I then learned after buying it and ripping it open that only one outlet is managed. It didn&#39;t say that on the box. After seeing the device up close, I then saw the tell tale sign of a single controlled outlet. Turns out most outlets are like this. I think it&#39;s dumb.</p>

<p>I then started looking for smart bulbs. Something with wifi, and reasonably priced. I landed on Cree Connected Max. They are wifi, and they integrate into both Google Assistant/Home and SmartThings so it gives me one place to toggle everything and still shout at them. Unlike so much of this post, they have been great. I even reconnected my outdoor flood lights (that have no switch wired to them), and installed Cree bulbs that work like a dream.</p>

<p>Though, since the switch I was using was also C by GE (same as the bulbs), I needed a new switch for the living room. I did a lot of research to find something that would work. I then chose something I hoped would work.</p>

<p>It did not.</p>

<p>I got a TPLink Kasa smart switch. To its credit, it does what it claims to do. However, it&#39;s the same as every other smart wall switch. It doesn&#39;t care about your bulbs (unless for some brands you buy their bulbs), it just turns your wired lights into smart lights. Why have smart bulbs, but no smart switch? or a button? Or anything? Why have a switch that can&#39;t also control bulbs?</p>

<p>I get we&#39;re smart people trying to automate and shout at our devices like on Star Trek or something, but most of the world still reflexively goes for a switch. And if you have smart bulbs on wired lights, they become dumb bulbs when that switch (smart or not) turns the lights off. It is nonsense.</p>

<p>When I grabbed the switch, I also got Outdoor Smart Plugs by TPLink. They worked except that they only worked on the home network. Remote access didn&#39;t worked for some reason. TPLink said that this issue was related to either DNS (which would make sense if I was using the internet provider&#39;s DNS) or my DHCP server.</p>

<p>The DHCP server claim was a funny one. Their explanation was that I needed to set the IPs statically because devices may ask for the same IP address at the same time. For a house, that probably will never happen. That&#39;s not how DHCP works by default. You may get that in a business environment, but even then a good router or DHCP server would not hand out duplicate IP addresses.</p>

<p>Either way, it meant that the Kasa devices didn&#39;t work in SmartThings or Google Assistant/Home. Those apps talked to TPLink&#39;s cloud service to connect to the devices. Since I couldn&#39;t get them to work remotely, it meant that those apps couldn&#39;t use them either.</p>

<h2 id="but-what-about-insert-brand-tech-here" id="but-what-about-insert-brand-tech-here">But what About [Insert Brand/Tech Here]?</h2>

<p>So before I get into my solutions. What about all those other options?</p>

<p>Why not Hue? Well, to be frank, they are expensive. $30 per bulb is a lot. And I didn&#39;t want to keep buying devices that needed their own hubs, turning my network rack into a shelf of small hub devices.</p>

<p>On that note, why not Z-Wave or Zigbee? Well, at the time, I was trying to avoid hubs because I was having trouble finding one with good reviews or would last longer than a year (cause it was tied to some small company&#39;s cloud service that would go defunct) or was even for sale anywhere.</p>

<p>So yeah.</p>

<h2 id="beating-everything-into-submission-with-home-assistant-and-node-red" id="beating-everything-into-submission-with-home-assistant-and-node-red">Beating Everything into Submission with Home Assistant and Node-RED</h2>

<p>However, I did give in to a hub of sorts. I decided to try my hand at an open source smart home product since the nerds of the internet are as stubborn as I am. I asked for suggestions on Fosstodon, a Mastodon instance, and they all rooted for Home Assistant.</p>

<p>Seeing as I had a spare Raspberry Pi 4, I installed it on that. Giving me a hub, but one that I can use as something else if this failed.</p>

<p>Installation was simple. One of the options is to write Home Assistant (and all of the OS and libraries it needs) to an SD card, insert it, and power up the Pi. There are other options, but I wanted simple.</p>

<p>There was some initial set up, but that was just filling in some forms. Afterwards, it immediately detected some of my devices when I loaded it up the first time. Setting those up was pretty simple.</p>

<p>Now there was a caveat to the lights. Cree doesn&#39;t currently offer any kind of cloud service that Home Assistant can tie into. Fortunately, the Home Assistant community discovered that the cloud service is a re-branded device service by Tuya. It required some steps to take and to sign up for a developer program, but it did integrate into Home Assistant.</p>

<p>So now I have my switch and bulbs and outlets and media players and garage door (cause they figured out how to get Chamberlain&#39;s API working with Home Assistant) working and automated.</p>

<h3 id="a-note-about-a-couple-devices" id="a-note-about-a-couple-devices">A Note about a Couple Devices</h3>

<p>Before I get on with talking about solving my light problems, I wanted to touch on my Nest Thermostat and Samsung oven. They are the two smart devices I have failed to add to Home Assistant.</p>

<p>The oven may be able to added in the future. There&#39;s no direct integration, but I may be able to automate it by connecting to SmartThings. However, that requires some set up and webhooks for push notifications. I&#39;d rather not have that set up on my network and may add it later through Nabu Casa.</p>

<p>Nabu Casa is a cloud service by the founder of Home Assistant. It&#39;s meant to simplify things like connecting to SmartThings, as well as connecting to voice services like Alexa and Google Assistant. It also offers a way to remotely access your Home Assistant install without having to configure a VPN connection.</p>

<p>I can do all that myself, but I&#39;m also lazy and don&#39;t want to maintain it. Plus it helps to fund Home Assistant, so I&#39;m down for that will probably buy it later.</p>

<p>As for the Nest Thermostat, it&#39;s not a simple integration and the community has been reporting various amounts of success since Google, Nest&#39;s owner, has been messing with the developer API and people&#39;s ability to use it. So that&#39;s on hold and I may look into another smart thermostat that requires less leg work with a chance of failure.</p>

<p>Long paragraph short, I don&#39;t want to put in the effort if I may fail. I don&#39;t do enough smart thermostat things to make it worth it.</p>

<h3 id="back-to-the-stuff-about-smart-bulbs" id="back-to-the-stuff-about-smart-bulbs">Back to the Stuff About Smart Bulbs</h3>

<p>So my goal in all this was to get my living room lights to turn on and off using both a smart home app and a physical switch. I had everything in Home Assistant I could turn them on and off with toggles. Even got the app working and can toggle from my phone.</p>

<p>However, there was no way to group them so that if one turned on or off, they all would do the same. So I looked to the docs to see what I could do. They suggested settings things up with automations. I could use the switch as a trigger (since I&#39;ll probably just hit the main toggle for the room in the app), and then set the other lights as actions to turn on and off along with it.</p>

<p>And it worked!... sort of.</p>

<p>It did work. I could hit the switch and the other lights in the room would turn on and off. The downside was that I was waiting for almost 10 sec each time. Everyone would think it was broken by that time and hit it more, just to confuse the system. So I did some digging...</p>

<p>And I found (again through the community) that Kasa products use the cloud for initial set up to the wifi network, but then Home Assistant just talked to it directly on the local network. In order to get device status, it polls for updates every so often (I&#39;m guess every 10 sec or so). There were various solutions to remedy it, but the one that jumped out at me was Node-RED</p>

<h3 id="enter-node-red" id="enter-node-red">Enter Node-RED</h3>

<p>Node-RED is a device workflow tool. It&#39;s written in NodeJS and gives you a visual tool to create automation sequences. If your install has the Supervisor, it can be added as an add-on that is automatically integrated into Home Assistant. Which is what I did to great success.</p>

<p>When I jumped into it, I then added a custom TPLink package for it that added support for Kasa devices. After much fiddling, I was able to shorten the check time to 1 sec, and would change the living room lights on and off based on the switch status using Home Assistant scripts.</p>

<p>I then took it a step further.</p>

<p>Node-RED has somewhat of a learning curve. It makes more sense if you&#39;ve done any programming, but it&#39;s still a little odd. The big thing that was tripping me up was that the documentation for the TPLink package was sparse and assumed you knew you had to add the Inject node to tell the TPlink node to start polling for events. I did not, and it required some reading of fine print to figure it out.</p>

<p>And really, similar goes for Node-RED in general. It has decent documentation and some users have created videos, but they feel like they are explaining things to people who already get how it works. Which I did not so I had to dig a bit more to get what I needed.</p>

<p>But once I got it, I got it. I tried using the Sun Events node to change the color temp of my lights based on the time of day. The node listed all of the events, but didn&#39;t say what order they go in and neither did the library it relied on. So I threw that away and had it check time ranges that I defined. When the lights were turned on, it would check the time of day and set a scene to match how they should be with the sun.</p>

<p>Then I set a recurring check to update the scene for the time of day if they were already on (no sense in changing if they&#39;re off).</p>

<p>Then I got real fancy and tied the lights to my Roku player (which is hooked up to an overhead projector). Once someone starts playing a movie or video, the lights turn off. They then stay off until someone goes back to the home screen. I did that just in case they pause or rewind very shortly. They wouldn&#39;t want the lights to flicker on and off as they do things.</p>

<p>You can see my complete workflow below.</p>

<p><img src="https://i.snap.as/xlSwSAt5.png" alt="A screenshot of a Node-RED workflow."/></p>

<h2 id="conclusion" id="conclusion">Conclusion</h2>

<p>I like making my home into a smart home. I hate smart device brands because they feel anti-consumer (specifically in the “we want you to use only our products even though we may not sell everything you need or do exactly what you need” sort of way). I really like Home Assistant and Node-RED. I may think about adding Z-Wave or Zigbee to my Pi to adding support for more sorts of devices if they offer things like generic buttons and the signal is strong enough.</p>

<p>I can&#39;t imagine regular people being able to set up a smart home. Consumer brands make it so frustrating and difficult and arbitrarily limiting, that I&#39;m not surprised most people don&#39;t go beyond Hue. Hue is expensive, but they also just work and they have wall buttons that just make the smart bulbs do what they do best.</p>
]]></content:encoded>
      <guid>https://bryanredeagle.writeas.com/smart-homes-dumb-components</guid>
      <pubDate>Sun, 28 Nov 2021 17:53:00 +0000</pubDate>
    </item>
  </channel>
</rss>