{"id":457077,"date":"2026-02-08T21:51:14","date_gmt":"2026-02-08T21:51:14","guid":{"rendered":"https:\/\/www.newsbeep.com\/us\/457077\/"},"modified":"2026-02-08T21:51:14","modified_gmt":"2026-02-08T21:51:14","slug":"how-i-built-the-star-trek-lcars-control-panel-of-my-dreams","status":"publish","type":"post","link":"https:\/\/www.newsbeep.com\/us\/457077\/","title":{"rendered":"How I Built the Star Trek LCARS control panel of my dreams"},"content":{"rendered":"<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy2 _17nnmdy0 _17nnmdy7 _17nnmdy5 _1xwtict1 _17nnmdyb\">One of my pandemic hobbies that stuck was home automation. I discovered <a href=\"https:\/\/www.home-assistant.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Home Assistant<\/a> \u2014 the popular open source, extremely customizable home automation platform \u2014 and all the intricate things you can do with it to make your home work better.<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">I have ADHD and have found Home Assistant to be a valuable tool for managing executive dysfunction. I use it for audible calendar reminders, laundry reminders, timers, and monitoring my doorbell camera and my nanny cam for my dog. Its also a great source of pure nerdy joy for me. And I recently took the most joyously nerdy step yet in my home automation fixation.<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">Home Assistant lets you create custom dashboards to interact with your smart home devices. Community members spend untold hours perfecting their dashboards and some of them are really <a href=\"https:\/\/www.youtube.com\/watch?v=7g9T_vKD4ww&amp;list=PLHCmYWBoMir-iFsAeatdl_xY1kTKdGPV3&amp;index=9\" rel=\"nofollow noopener\" target=\"_blank\">impressive<\/a>. I even discovered a community <a href=\"https:\/\/community.home-assistant.io\/t\/star-trek-lcars-theme\/511391\" rel=\"nofollow noopener\" target=\"_blank\">theme<\/a> for Home Assistant that goes a long way to looking like the <a href=\"https:\/\/en.wikipedia.org\/wiki\/LCARS\" rel=\"nofollow noopener\" target=\"_blank\">LCARS<\/a> computer control system in the Next Generation era of Star Trek I grew up on. LCARS is not a practical or useful computer interface. Its stated purpose is to \u201c<a href=\"https:\/\/trektoday.com\/interviews\/okuda_qa.shtml\" rel=\"nofollow noopener\" target=\"_blank\">suggest something well-organized when a viewer sees [it] in the background of a scene<\/a>.\u201d What it is, though, is gorgeous. The aesthetic got hold of me at eight years old and has never let go.<\/p>\n<p><a class=\"kqz8fh1\" href=\"https:\/\/platform.theverge.com\/wp-content\/uploads\/sites\/2\/2026\/02\/LCARS-Dashbaord-2.jpeg?quality=90&amp;strip=all&amp;crop=0,0,100,100\" data-pswp-height=\"1918\" data-pswp-width=\"1206\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img alt=\"The my iPhone\u2019s Home Assistant dashboard, using the LCARS community theme.\" data-chromatic=\"ignore\" loading=\"lazy\" decoding=\"async\" data-nimg=\"fill\" class=\"x271pn0\" style=\"position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url(&quot;data:image\/svg+xml;charset=utf-8,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'\/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'\/%3E%3CfeComposite operator='out' in='s'\/%3E%3CfeComposite in2='SourceGraphic'\/%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3C\/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='none' style='filter: url(%23b);' href='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN8+R8AAtcB6oaHtZcAAAAASUVORK5CYII='\/%3E%3C\/svg%3E&quot;)\"   src=\"https:\/\/www.newsbeep.com\/us\/wp-content\/uploads\/2026\/02\/LCARS-Dashbaord-2.jpeg\"\/><\/a><\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">Most of my home automation happens through actual automation without my input, and I do make extensive use of voice control ( yes, \u201cComputer\u201d is my wake word. The false alarms when I\u2019m watching Star Trek are worth it). But there are some things I\u2019ll always want a dashboard for. Sometimes you want to control things manually. It\u2019s nice for weather displays or triggering custom lighting scenes. Since the beginning of my infatuation with Home Assistant, I\u2019ve been dying to use an LCARS-style interface. The theme linked above is very good \u2014 I use it for my phone\u2019s main dashboard. But it\u2019s not perfect.<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">The sizing and the proportions of the elbow dividers is a little off, and the buttons are all broken up into two pieces. It\u2019s small stuff. But I\u2019m the kind of fan who wants to take the accuracy thing as far as it can go. So I made my own.<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">I recently discovered <a href=\"https:\/\/lvgl.io\/\" rel=\"nofollow noopener\" target=\"_blank\">LVGL<\/a> (Light and Versatile Graphics Library), which lets you make graphic interfaces that are far more customizable and sophisticated than the stock Home Assistant dashboard setup. I figured there had to be some way to make LVGL talk to Home Assistant. The final piece of the puzzle was <a href=\"https:\/\/esphome.io\/\" rel=\"nofollow noopener\" target=\"_blank\">ESPHome<\/a>. ESPHome is an open-source firmware framework that lets coding novices like me use relatively simple markup language to program Wifi-enabled microcontrollers like the ESP32, ESP8266, and RP2040, and it integrates deeply with Home Assistant. The possibilities are immense. I use ESPHome components as motion detectors, presence sensors, an air quality sensor, and controllers for LED strips. And ESPHome supports LVGL on specific display hardware.<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">So I bought this <a href=\"https:\/\/www.waveshare.com\/esp32-s3-touch-lcd-7.htm?sku=27078\" rel=\"nofollow noopener\" target=\"_blank\">Waveshare 7\u201d touch display with an ESP32-S3 microcontroller<\/a> built in and I got to work.<br \/>I spent hours scouring the internet to find screenshots and fan recreations of some of the many LCARS panels featured in \u201990s-era Star Trek. And I narrowed it down to this:<\/p>\n<p><a class=\"kqz8fh1\" href=\"https:\/\/platform.theverge.com\/wp-content\/uploads\/sites\/2\/2026\/02\/Tuvok-LCARS.jpeg?quality=90&amp;strip=all&amp;crop=0,0,100,100\" data-pswp-height=\"1740\" data-pswp-width=\"3004\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img alt=\"An LCARS computer control panel from Star Trek: Voyager\" data-chromatic=\"ignore\" loading=\"lazy\" decoding=\"async\" data-nimg=\"fill\" class=\"x271pn0\" style=\"position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url(&quot;data:image\/svg+xml;charset=utf-8,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'\/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'\/%3E%3CfeComposite operator='out' in='s'\/%3E%3CfeComposite in2='SourceGraphic'\/%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3C\/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='none' style='filter: url(%23b);' href='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN8+R8AAtcB6oaHtZcAAAAASUVORK5CYII='\/%3E%3C\/svg%3E&quot;)\"   src=\"https:\/\/www.newsbeep.com\/us\/wp-content\/uploads\/2026\/02\/Tuvok-LCARS.jpeg\"\/><\/a><\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">It\u2019s a graphic you see in Tuvok\u2019s quarters in Star Trek: Voyager. I\u2019m not sure what it\u2019s supposed to do in the show, but it has plenty of colorful buttons and rounded corners. And crucially there are two gauges at the top for who knows what. But to me those looked like lighting brightness controls. So I had my design.<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">Next was to build it. To build an interface in ESPHome using LVGL, you use <a href=\"https:\/\/yaml.org\/\" rel=\"nofollow noopener\" target=\"_blank\">YAML<\/a> to specify the characteristics (size, positioning, color, etc) of the graphic element you want. LVGL calls them \u201cwidgets.\u201d So I first created my design in Adobe Illustrator as a reference.<\/p>\n<p><a class=\"kqz8fh1\" href=\"https:\/\/platform.theverge.com\/wp-content\/uploads\/sites\/2\/2026\/02\/Illustrator-screenshot.jpeg?quality=90&amp;strip=all&amp;crop=0,0,100,100\" data-pswp-height=\"1964\" data-pswp-width=\"3024\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img alt=\"A screenshot from Adobe Illustrator showing a design for an LCARS computer control panel from Star Trek\" data-chromatic=\"ignore\" loading=\"lazy\" decoding=\"async\" data-nimg=\"fill\" class=\"x271pn0\" style=\"position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url(&quot;data:image\/svg+xml;charset=utf-8,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'\/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'\/%3E%3CfeComposite operator='out' in='s'\/%3E%3CfeComposite in2='SourceGraphic'\/%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3C\/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='none' style='filter: url(%23b);' href='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN8+R8AAtcB6oaHtZcAAAAASUVORK5CYII='\/%3E%3C\/svg%3E&quot;)\"   src=\"https:\/\/www.newsbeep.com\/us\/wp-content\/uploads\/2026\/02\/Illustrator-screenshot.jpeg\"\/><\/a><\/p>\n<p>The advantage of building in Illustrator first is that the properties panel gives me all the numbers I need to build my YAML.<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">I then began the rather tedious task of recreating that design in the ESPHome editor in Home Assistant. Thankfully you don\u2019t need to know C (the language LVGL is written for) to use it in ESPHome. Instead you use YAML, which is much more forgiving for an enthusiastic amateur like me. Component by component, I specified the dimensions of each button, its location, its color, what label it would have, and its shape. It\u2019s best practice in LVGL to use the inbuilt widgets instead of just inserting pictures. LVGL does have that capability, but ESP32 microcontrollers don\u2019t have tons of spare resources, and images will eat them fast. The only actual images used in this design are the two gauges at the top right. All the other shapes are LVGL button widgets.<\/p>\n<p><a class=\"kqz8fh1\" href=\"https:\/\/platform.theverge.com\/wp-content\/uploads\/sites\/2\/2026\/02\/YAML-screenshot.jpeg?quality=90&amp;strip=all&amp;crop=0,0,100,100\" data-pswp-height=\"1120\" data-pswp-width=\"1908\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img alt=\"YAML showing the construction of two buttons for an LCARS control interface from Star Trek\" data-chromatic=\"ignore\" loading=\"lazy\" decoding=\"async\" data-nimg=\"fill\" class=\"x271pn0\" style=\"position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url(&quot;data:image\/svg+xml;charset=utf-8,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'\/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'\/%3E%3CfeComposite operator='out' in='s'\/%3E%3CfeComposite in2='SourceGraphic'\/%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3C\/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='none' style='filter: url(%23b);' href='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN8+R8AAtcB6oaHtZcAAAAASUVORK5CYII='\/%3E%3C\/svg%3E&quot;)\"   src=\"https:\/\/www.newsbeep.com\/us\/wp-content\/uploads\/2026\/02\/YAML-screenshot.jpeg\"\/><\/a><\/p>\n<p>A small snippet of the YAML that makes all this work. <\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">I did have to cheat a little for the irregular shapes. Some of the buttons in the LCARS interface only have two rounded corners. LVGL buttons are all or nothing when it comes to rounded corners. Thankfully though, LVGL doesn\u2019t mind if you stack shapes on top of each other. For the buttons that are half rounded, I simply stacked a circle on the end of a square button. They\u2019re the same color, so it looks like a single shape. The elbows in the middle are made in a similar way.<\/p>\n<p><a class=\"kqz8fh1\" href=\"https:\/\/platform.theverge.com\/wp-content\/uploads\/sites\/2\/2026\/02\/Screenshot-2026-02-02-at-4.39.16%E2%80%AFPM.jpeg?quality=90&amp;strip=all&amp;crop=0,0,100,100\" data-pswp-height=\"988\" data-pswp-width=\"972\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img alt=\"Make the shapes the same color and add a black background, and you have LCARS.\" data-chromatic=\"ignore\" loading=\"lazy\" decoding=\"async\" data-nimg=\"fill\" class=\"x271pn0\" style=\"position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url(&quot;data:image\/svg+xml;charset=utf-8,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'\/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'\/%3E%3CfeComposite operator='out' in='s'\/%3E%3CfeComposite in2='SourceGraphic'\/%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3C\/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='none' style='filter: url(%23b);' href='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN8+R8AAtcB6oaHtZcAAAAASUVORK5CYII='\/%3E%3C\/svg%3E&quot;)\"   src=\"https:\/\/www.newsbeep.com\/us\/wp-content\/uploads\/2026\/02\/Screenshot-2026-02-02-at-4.39.16\u202fPM.jpeg\"\/><\/a><\/p>\n<p>Make the shapes the same color and add a black background, and you have LCARS. Image by Ursa Wright \/ The Verge<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">Eventually I got there. An honest to goodness authentic-looking LCARS touchscreen in my living room. 12-year-old me would be so impressed. 41-year-old me certainly is.<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">All that was left was to connect it to my devices. While undertaking this project, I was hanging out in my living room, so I chose my living room lamps. (Yes, I made this entire project before I had a clear idea of what exactly I would be doing with it. This is not a hobby for people who are entirely pragmatically minded.)<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _1xwtict1\">I configured a certain button to turn white when the lights were on, and return to its original color when the lights were off. A different button actually toggled the lights on and off. The more buttons that do more things, the more authentic it feels to me. And this panel has more buttons than I have lights in my house. One of the gauges both reflects and controls the brightness of those lamps. There are status buttons that show me whether my home\u2019s operating mode is \u201cnormal\u201d or \u201ccozy,\u201d which determines the lighting scenes in my extensive <a href=\"https:\/\/kno.wled.ge\/\" rel=\"nofollow noopener\" target=\"_blank\">WLED<\/a> setup.<\/p>\n<p><a class=\"kqz8fh1\" href=\"https:\/\/platform.theverge.com\/wp-content\/uploads\/sites\/2\/2026\/02\/dashboard-glamour-shot-2-rotated.jpeg?quality=90&amp;strip=all&amp;crop=0,0,100,100\" data-pswp-height=\"3024\" data-pswp-width=\"4032\" target=\"_blank\" rel=\"noreferrer nofollow noopener\"><img alt=\"Still not quite perfect. But gosh do I love it.\" data-chromatic=\"ignore\" loading=\"lazy\" decoding=\"async\" data-nimg=\"fill\" class=\"x271pn0\" style=\"position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url(&quot;data:image\/svg+xml;charset=utf-8,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'\/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'\/%3E%3CfeComposite operator='out' in='s'\/%3E%3CfeComposite in2='SourceGraphic'\/%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3C\/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='none' style='filter: url(%23b);' href='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN8+R8AAtcB6oaHtZcAAAAASUVORK5CYII='\/%3E%3C\/svg%3E&quot;)\"   src=\"https:\/\/www.newsbeep.com\/us\/wp-content\/uploads\/2026\/02\/dashboard-glamour-shot-2-rotated.jpeg\"\/><\/a><\/p>\n<p>Still not quite perfect. But gosh do I love it. Photo by Ursa Wright \/ The Verge<\/p>\n<p class=\"duet--article--dangerously-set-cms-markup duet--article--standard-paragraph _1ymtmqpi _17nnmdy1 _17nnmdy0 _17nnmdya _1xwtict1\">The touchscreen with the panel rests on a stand near my couch. It\u2019s not remotely practical. We already knew that about LCARS. However, it is beautiful. And it makes my nerd heart extremely happy that I can now control my house the way my childhood heroes controlled their starships.<\/p>\n<p>Follow topics and authors from this story to see more like this in your personalized homepage feed and to receive email updates.Ursa WrightClose<img alt=\"Ursa Wright\" data-chromatic=\"ignore\" loading=\"lazy\" decoding=\"async\" data-nimg=\"fill\" class=\"_1bw37385 x271pn0\" style=\"position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url(&quot;data:image\/svg+xml;charset=utf-8,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'\/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'\/%3E%3CfeComposite operator='out' in='s'\/%3E%3CfeComposite in2='SourceGraphic'\/%3E%3CfeGaussianBlur stdDeviation='20'\/%3E%3C\/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='none' style='filter: url(%23b);' href='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN8+R8AAtcB6oaHtZcAAAAASUVORK5CYII='\/%3E%3C\/svg%3E&quot;)\"   src=\"https:\/\/www.newsbeep.com\/us\/wp-content\/uploads\/2026\/02\/URSA_BLURPLE2.jpg\"\/><\/p>\n<p>Ursa Wright<\/p>\n<p class=\"fv263x1\">Posts from this author will be added to your daily email digest and your homepage feed.<\/p>\n<p>FollowFollow<\/p>\n<p class=\"fv263x4\"><a class=\"fv263x5\" href=\"https:\/\/www.theverge.com\/authors\/ursa-wright-2\" rel=\"nofollow noopener\" target=\"_blank\">See All by Ursa Wright<\/a><\/p>\n<p>EntertainmentClose<\/p>\n<p>Entertainment<\/p>\n<p class=\"fv263x1\">Posts from this topic will be added to your daily email digest and your homepage feed.<\/p>\n<p>FollowFollow<\/p>\n<p class=\"fv263x4\"><a class=\"fv263x5\" href=\"https:\/\/www.theverge.com\/entertainment\" rel=\"nofollow noopener\" target=\"_blank\">See All Entertainment<\/a><\/p>\n<p>Smart HomeClose<\/p>\n<p>Smart Home<\/p>\n<p class=\"fv263x1\">Posts from this topic will be added to your daily email digest and your homepage feed.<\/p>\n<p>FollowFollow<\/p>\n<p class=\"fv263x4\"><a class=\"fv263x5\" href=\"https:\/\/www.theverge.com\/smart-home\" rel=\"nofollow noopener\" target=\"_blank\">See All Smart Home<\/a><\/p>\n<p>Star TrekClose<\/p>\n<p>Star Trek<\/p>\n<p class=\"fv263x1\">Posts from this topic will be added to your daily email digest and your homepage feed.<\/p>\n<p>FollowFollow<\/p>\n<p class=\"fv263x4\"><a class=\"fv263x5\" href=\"https:\/\/www.theverge.com\/star-trek\" rel=\"nofollow noopener\" target=\"_blank\">See All Star Trek<\/a><\/p>\n<p>TechClose<\/p>\n<p>Tech<\/p>\n<p class=\"fv263x1\">Posts from this topic will be added to your daily email digest and your homepage feed.<\/p>\n<p>FollowFollow<\/p>\n<p class=\"fv263x4\"><a class=\"fv263x5\" href=\"https:\/\/www.theverge.com\/tech\" rel=\"nofollow noopener\" target=\"_blank\">See All Tech<\/a><\/p>\n<p>TV ShowsClose<\/p>\n<p>TV Shows<\/p>\n<p class=\"fv263x1\">Posts from this topic will be added to your daily email digest and your homepage feed.<\/p>\n<p>FollowFollow<\/p>\n<p class=\"fv263x4\"><a class=\"fv263x5\" href=\"https:\/\/www.theverge.com\/tv\" rel=\"nofollow noopener\" target=\"_blank\">See All TV Shows<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"One of my pandemic hobbies that stuck was home automation. I discovered Home Assistant \u2014 the popular open&hellip;\n","protected":false},"author":2,"featured_media":457078,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31],"tags":[88,5254,11878,172,74,6703],"class_list":{"0":"post-457077","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-technology","8":"tag-entertainment","9":"tag-smart-home","10":"tag-star-trek","11":"tag-tech","12":"tag-technology","13":"tag-tv-shows"},"_links":{"self":[{"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/posts\/457077","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/comments?post=457077"}],"version-history":[{"count":0,"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/posts\/457077\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/media\/457078"}],"wp:attachment":[{"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/media?parent=457077"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/categories?post=457077"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.newsbeep.com\/us\/wp-json\/wp\/v2\/tags?post=457077"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}