LINUX Unplugged - 408: Linux Road Warrior

Episode Date: June 1, 2021

We’re joined by a special guest who’s built his very own Linux battle bus. We get the technical details on how Linux is at the core of this open road machine. Special Guest: Aaron Bockelie. ...

Transcript
Discussion (0)
Starting point is 00:00:00 Did you ride the school bus as a kid, Wes? Yeah, I did. I mean, well, until I got kicked off anyway. You got kicked off the school bus? What'd you do? Alright, well, let's say you're a young'un in high school, you're getting excited learning about technology and electronics, and someone tells you you can make a taser out of a disposable camera. Wait a minute, you brought a taser on the bus, Wes? Yeah, turns out the school district wasn't so keen on that.
Starting point is 00:00:34 Hello, friends, and welcome back to your weekly Linux talk show. My name is Chris. My name is Wes. Wes, is that a giant plate of scrambled eggs? Extra maple syrup. Nice. This episode's brought to you by a cloud guru, the leader in hands-on learning. The only way to learn a new skill is by doing. That's why ACG provides hands-on labs for cloud Linux servers and much more. Go get your hands cloudy at a cloudguru.com. Coming up on the show today, I'm going to chat with Aaron Bocley, who built a home out of a school bus. And then he took it to the next level and automated all kinds of things on this bus using Linux and Home Assistant. It's an incredible
Starting point is 00:01:14 journey of learning things from scratch and taking one challenge after another and building something incredible that the whole family gets to enjoy. And it gets really, really geeky. And you guys know I'm a big fan of road trips and I have a lot of automation in my RV, Lady Joops. So this is a great chat and it's amazing to hear how somebody can kind of come into Linux and discover these things through the avenue of building a project like this for their home, for their family and all of that. So there's just some really kind of geeky stuff we get into.
Starting point is 00:01:48 So we thought maybe we should define some terms. Yeah, first up, hardware Victron. That's a power inverter, charge controller, basically the unit that's the brains of the electrical system and keeping everything going. Yeah, in fact, the same exact gear I have in Lady Jupiter. So it was really neat to listen to Aaron talk about how he's using the Linux system that runs inside there to get extra information. But we'll get to that. And that's called the Victron Venus, right? That's the tiny little Linux box that takes data from the Victron itself. Yep. Very cool.
Starting point is 00:02:21 There's also Shelly or Shelly.cloud, which is a maker of a range of small IoT products that you can use to turn non-smart devices into smart devices. Think things like physical controls that reflect in software, and a whole lot more. Yeah, you'll hear us talk about how he can use some of those in his build. And then there's the whole software aspect of it, some services that we talk about that run on Linux. Yeah, there's M whole like software aspect of it, some services that we talk about that run on Linux. Yeah, there's MQTT, which is the Message Queuing Telemetry Transport. And it's a lightweight
Starting point is 00:02:51 PubSub network protocol that transports messages between devices, sort of like the underpinning of the whole network that lets your various IoT gadgets and systems that monitor them all talk together. And the last bit of jargon you need here is Node-RED, which is a web-based visual development tool that you can use to create JavaScript functions and tie complex automations together between hardware, software, and basically everything on your network. Recently, Aaron joined Chris to tell him about his Linux and home automation journey. And they start with how Home Assistant changed everything.
Starting point is 00:03:34 Let's get into Home Assistant because I was Googling around, trying to figure out ways I could bring in power information into Home Assistant. And just even for display purposes, but maybe even for automation triggering. And you can see how this can be applicable to somebody who lives in a house that has solar or maybe has a battery wall or something like that. Or just wants to have a smaller environmental impact. I've always dreamed about pulling all that information and getting the state of charge of my batteries. How much solar is coming in? How much power are we using right now? And this seems like a real journey you went down.
Starting point is 00:04:04 And you must have had to familiarize yourself with Home Assistant. You had to familiarize yourself with how all the Victron equipment communicates and then how they bring that over the network. And I'm guessing you probably also had to teach yourself MQTT in this process. So can you tell me a little bit about this journey?
Starting point is 00:04:21 This is- Don't forget RS-485 and CAN bus as well. So yeah, they've got a couple of things. So device bus over RS-485 and CAN bus also came into play. Okay. So how did you get started with HomeOSystem? Was it to solve a particular problem that involved the electrical system or was it something else entirely? So in the Victron world, they have a thing called VRM. If you Google VRM world, it's kind of a really interesting thing. My bus, I won't tell you where it's at, but you can find it. It's this graphical 3D map of the world.
Starting point is 00:04:51 And you can zoom in on people that have decided to share the information about their Victron installations on the world. It's pretty cool. And so Victron internally, they have a thing called the Venus OS. It's like an open source version of Linux kind of distro that goes with it. This is the reason I went with Victron equipment. It's actually, I looked at a lot of different vendors for power infrastructure, for solar controllers and inverters and things like that. But many of them had semi-documented API interfaces or not really at all,
Starting point is 00:05:24 or just closed loop, like plug it in and trust us. It'll work. Here's your firmware upgrade. That is a black box that might add more features. I don't know. Versus I'm looking at the Victron stuff and it's kind of all over the place, but as I'm digging through it, I'm like, oh my God, there's a reason it's all over the place is because they're actually allowing their software to be installed or anything. So they're like, go ahead and install Venus OS on a Raspberry raspberry pi not their own embedded thing oh i had no idea so at the time i bought the venus gx which was the product that they were using and it's it's the system integrator it's got can bus interfaces and their proprietary serial bus interface ethernet wi-fi things like
Starting point is 00:06:00 that and their software so the idea is you buy a Victron inverter or a solar controller and you plug their cables, the appropriate cable into this box. And it just renders a little display that as shows the status on it. So it shows like the battery and the inverter state and the charge and battery percentage and stuff like that. It's all kind of a plug and play kind of deal. And I was like, man, you know, $350 is a lot of money for that thing. Um, so I'm like, well, I can get $350 is a lot of money for that thing. So, I'm like, well, I can get a Raspberry Pi for $40, and their software's right there, and they're even releasing an image that you can just install on an SD card, and it works. And lo and behold, I put it on there, and it booted up,
Starting point is 00:06:35 and I'm like, wow, this is pretty cool. I ended up putting a GitHub gist on my travels through that, and this is at the time I was discovering this, I hadn't even finished the installation of the Victron equipment in the bus. I had just finished the battery. I knew this was the direction I was going. So, I was just kind of researching. There was stuff that was taking forever to ship and, you know, real life was going by and things like that. And I didn't have, I couldn't work on it all the time, so I kind of spent some research time looking that up.
Starting point is 00:07:08 After a while, I ended up buying CanTact. It's called CanTact Cannibal is the name of it. It's a little CAN bus interface. It's just like open source hardware kind of deal. USB plugged it into that. You said it was the CanTact Cannibal? Is that what it was? Yeah, Cannibal. Okay. Not cannibal like you eat things
Starting point is 00:07:25 but cannibal can't c-a-n-a-b-l-e just a neat little dingus of a usb can bus interface okay started loading up the software and digging through because victron uses dbus for messaging on everything inside of their devices and so there's just all this stuff hanging off of device trees and started kind of putting in my equivalent stack. I got a RTC real-time clock hat that had digital analog converters and some optocouple decoupled contactor controls for like relays and stuff. And then I got just one diagnostic style USB Victron proprietary Victron interface to plug into it that normally plug in in your laptop. But it just, if you plug it into the Raspberry Pi, their OS detected the device and kind of worked. But after I started adding up the cost of all these individual components, what I realized is that I'm now about the same price as just buying a Venus GX. about the same price as just buying a Venus GX. And now I've got sort of a Frankenstein CompSci 201 project sitting in here that's controlling thousands of dollars of equipment. And we're
Starting point is 00:08:31 depending on it to work all the time. And I'm like, I just, I couldn't get behind that. So I just went and bought their actual device, which has been a fantastic little box ever since. It's nice to be able to play around with the Raspberry Pi though. You know, it gave you the confidence to make that purchase. Exactly. And I think that was a very shrewd marketing thing on their side, because I can still just open up on their production device. I can get a root console and I can make changes to the operating system.
Starting point is 00:08:57 I can make ephemeral changes that get wiped during a firmware update. Firmware update actually is, if I'm using air air quotes there is actually just a reload of the disk partition on the on the little device or there's a persistent partition that you can load modifications to that persists across updates of it so you can write custom code and modifications to this thing in python or whatever you can fit on the thing and it stays there so you can write permanent upgrade and changes to these things and change them how you want. And if it can talk over ethernet or USB, there you go, you got your extension to this device. So it's very extendable. So anyway, after kind of going
Starting point is 00:09:36 through that process, I started using that device. I just got it installed with the rest of Victron equipment and I just kind of left it at that. So we drove and traveled and things like that. And about a year in, I was a little dissatisfied over the fact that I had to stay connected to the internet to publish internet to VRM. I knew this conceptually at the time, but I didn't know the details. But there's an MQTT mosquito broker sitting on the Venus that's running that collects all this information from Dbus that's published onto it from their software. Victron is shipping essentially that thing that you installed as a Linux box with MQTT running on it? Yeah. Wow. It's got Mosquito on it. And what it's doing is it's a broker that's connecting to VRM. And VRM is just a giant cloud mosquito broker. And they do some magic on the back end to, you know put your data in one spot and
Starting point is 00:10:27 if you have a device it doesn't matter if it's a raspberry pi or whatever if it's running the victron stuff and can authenticate against vrm you get a free account and you get like six months of of data storage for that since the data is sparsely populated up there when the vrm is the the local device pushes the data up through Mosquito, you get the resolution of whatever it's publishing. So you get some pretty great detail on that. So you get every sensor and every aspect that it's collecting is pushed up to VRM and stored there. I thought that was super neat. And that's what I had been using the whole time, like from when we pushed off and sold the house and started doing things. If I wanted to see the status of solar or power or
Starting point is 00:11:04 whatever, batteries, that's how I just went to VRM and looked doing things. If I wanted to see the status of solar or power or whatever, batteries, that's how I just went to VRM and looked at it. So for the benefit of the audience at a really high level, what kind of information is in these stats? Every temperature sensor, the amperage and voltage of your system on both the AC side, the inverter side, the input side, like what's the voltage coming in?
Starting point is 00:11:23 What's the battery voltage? What's the watts computed? What's your actual location? If you have a GPS plugged into this thing, it'll save that. Any type of alarms or failures that are going on. So if you set some boundaries about what is going on or the status is degraded. Example is I have a smart battery controller. It's made by RecBMS. It talks to the Victron and its protocol and format over CAN bus. If there is a failure or something going on, a cell imbalance or whatever, the REC BMS system will publish that on the line. And then the Victron unit picks up that alarm and forwards it on to VRM.
Starting point is 00:11:59 And so then I would get an email that the battery is bad or is having a problem, something like that. I find it fascinating because it's like this hidden functionality exists in my rig that I have yet to really tap into. You know, really in small ways, I've glanced it. But what kind of things can you do once you start collecting this information? It's fairly limited. I would say that it's in many ways is geared towards an installer that manages several installations because you can track and monitor lots of installations. That was my impression, is that maybe you go to a specialist and they set up a high-end customer, and then that customer
Starting point is 00:12:33 has a problem. They can pull up this portal on their end and get their client's information, like draw, battery issues, temperature stuff. Yeah, and not only that, you can reverse HTTP. It basically holds a connection so I can get to the user interface, the little buttons that you can push to control and configure things through VRM. So anywhere in the world, if I load their client, either on a web page or the software goes on a phone, I can then remote control that GX if it has an internet connection, the Venus or the C-Serbo, or they got a couple of different lines now. So you can configure and control it. The warning is, is you never hook up your device
Starting point is 00:13:11 to something that you can accidentally push the power to turn it off. Because if you do that now, it doesn't come back on because you just turned it off remotely. So, you know, don't do that. Yeah. So a lot of monitoring history, things like that. You can set like thresholds for alarms on any of the sensors if you want that kind of stuff. It's pretty good for that. But it requires an internet connection. And that's where getting this data into Home Assistant seems extremely appealing. That's actually the exact conclusion I came to as I want to have this remotely. I like the fact that it ships it up and it wasn't ever a problem with the amount of data going out. It was more like sometimes I just didn't have reception. I'd be
Starting point is 00:13:48 parked in somewhere and it gets this terrible reception. And I didn't want to lose the data because I'm kind of a data nerd and I wanted to, I didn't want to see big gaps of zero. The Venus devices can only cache it for so long. I think it's like 12 or so hours before it starts discarding old data. And you have those graphs on a dashboard. You don't want them to look bad. No, they can't look bad. Otherwise, what are you? So what I ended up doing was Victron has a published page help doc on how to get the MQTT data out of there. You have to do this. It's not just a pub sub thing. It's actually have to send a keep alive to a specific branch of device off of it
Starting point is 00:14:26 based on the serial number of your machine. Easy to do, relatively. I ended up making a keep alive that ran inside of Node-RED. It was like a two-node node. It was pretty simple to build. And that way, it just pinged it every 15 or 20 seconds. And then it would... It's funny.
Starting point is 00:14:41 So if you had like MQTT Explorer, which is the tool I use, and you pointed it at the end point for this thing after you enabled the ability to see it um in the ui it shows nothing and then you ping it once and then suddenly there's like hundreds of if you just subscribe to all to star everything on it there's like hundreds of parameters that show up on this thing and mqtt explorer is like holy, is it like this giant list that's like thousands of items inside of it, literally thousands. And then if you stop the keep alive, it all just evaporates because it all disappears because of the way MQTT is telling it to discard its last will and testament message. It says go away.
Starting point is 00:15:21 And so, yeah, once I published that, I'm like, well, okay, what am I going to keep? And then, so what I noticed is that it didn't matter if I subscribed to the whole thing, it's kind of this giant warehouse of parameters I could dig through. Many of them I didn't care about, but as I started setting up sensors in home, so I'm getting ahead of myself. So home assistant, I was like, okay, so this is the platform I'm going to play with. And quickly realized like the learning curve for home assistant was don't run it on an, on a SD card. Yeah, that's right. You know, that was step number one. Cause you'll burn a hole right through it. Are you on a pie? Yeah. So I'm on a pie and then the production one, um, I'll just, I know we don't have video on the final thing, but I have it out of the bus
Starting point is 00:16:02 right now. Cause I'm kind of redoing it. I alluded to that. So this is the whole deal. You can see there's a... This is a metal housing for a Pi with a space for an SD card, or I'm sorry, an SSD in there. Yes, there's an SSD drive in this. So you can see the little bridge, SSD bridge right there going through it. So this thing is a 12-volt box. So it just runs off of the 12-volt subsystem on the vehicle. What is that called? I want that. That one's like the old crappy one. Oh, really? Here's the cooler, better one, which I'm actually building for my house. So since then, that's a whole other story.
Starting point is 00:16:31 We've got a home base now. This is the DeskPi Pro, and it's far, far better than the other box. The first one is like an Amazon special. This one is like you buy it from DeskPi Pro store. If you see this cover on the front, this is actually a plexiglass cover on the front. So it allows RF to come out of the box. The metal box, RF is killed from it. Like Bluetooth and Wi-Fi are extremely attenuated, whereas this one works totally fine.
Starting point is 00:16:56 There's a sidecar inside of this that redirects the position. If you note, it's got full-sized... Ports along the back. Yeah, this is a Pi 4 because usually it's the micro HDMI. Right, and it has the GPIO pins in the back like a port. Yeah, it's great. So if you wanted to, you could just get a big old header cable, ribbon cable, and just kind of shove it on there.
Starting point is 00:17:16 So that is called the DeskPi Pro. I'll have to look that up. It's a good little kit. Yeah. All of my home assistant stuff in my bus, which is just a class ARV, it's not actually a bus, is all on Pi 4s. And they're just in the Flick case, which is great. But, you know, that's a step above right there.
Starting point is 00:17:36 It's cool. It's a nice little desktop unit. There's also some other units that are DIN rail components. So if you looked in the build on the bus, I heavily invested in DIN rail for all of the electrical components. And I just didn't have the space to stick it in there without getting another enclosure. And so I ended up with just the metal box I did. If I were to rebuild this whole thing again, I might integrate it even tighter. Yeah, that's kind of what I've been wondering too. I've been thinking a lot about that recently. Okay, so you have a Pi 4 with Home Assistant running on it, and you've decided this is your platform. Did you start to integrate other aspects of the bus into Home Assistant?
Starting point is 00:18:14 Give us an idea of what's in there, what Home Assistant is aware of, and what it's doing. So the first thing that happened was after connecting Victron, I hooked up my air conditioning to it. So you have the mini split heads. They're made by Gree, G-R-E-E. And they have a little Wi-Fi module. I think the Wi-Fi module that they sell is made to connect to call back to some home base in China and then serve up a phone app on your thing. Somebody figured out by using Wireshark and some other tools, they figured out the line protocol for it. Based on the size and shape of the little dingus that plugs into the head,
Starting point is 00:18:53 I guarantee it's an ESP32 on a little board that has some proprietary connector for their stuff. Right. So these people took it apart, figured out the auth protocol, figured out how to provision it. So you can just, you use curl to send a special magic JSON string to the thing to configure it for your wifi network. And then it's connected. And so home assistant has a add on for that to directly control it as a climate module. And I'll tell you what, when I got that thing going and it presented a thermostat with
Starting point is 00:19:20 heating, cooling, dehumidify, fan speeds, all this stuff. I was like, man, that was pretty great. That was a cool day that I did that. Yeah, no kidding. Gosh, that's so great. And then it's right there in Home Assistant available for automation. Yeah, because before we were just using the remotes. And so sometimes it was like, where'd the remote go? Like a caveman.
Starting point is 00:19:41 So no longer chasing the remotes down. We could do it from the phone phone like on our phones and stuff and that was kind of the beginning of the iteration of the user interface for home assistant because you know you gotta be real careful about what type of tabs to present what and things from there i started adding like more information from the victron like tank levels. So, for a while, Victron didn't support anything really good on the sensors. They only supported like a US style resistance and a European style resistance sender in there. Neither of them worked for the propane system. And I had like this capacitive reading sensor system that was like, okay, but it wasn't really compatible. It didn't give good information.
Starting point is 00:20:24 sensor system that was like, okay, but it wouldn't really compatible and didn't give good information. So they finally went through a feature update on the Venus that allowed you to do abstract resistance values for your tank senders. So then it was, I knew it was going to happen eventually. I just assumed at some point somebody would get tired of it and push an update that actually worked. I started crying and posting requests for features and stuff as well. So maybe I helped push that over a little bit, I'd like to think.
Starting point is 00:20:47 It worked. Yeah. And so I got water levels for fresh and gray. And then propane levels came later. I know, pretty crazy stuff. One of the things I started building in was like a waste tank. So if the waste tank's too high and there's still fresh water, it turns off the pump now. So the pump will cut out so you don't overflow your waste back into the floor of the shower drain, for example.
Starting point is 00:21:09 That's so sweet. As a father, I totally understand why you did that. Yeah. Same goes for like the washing machine stuff. Sometimes the washing machine would suck the water dry and you're sitting there, why is the water, why is the wash not going? Well, it's because we ran out of water. Right. And the pump's sitting there pulling up from an empty an empty tank yeah and it's like sucking an empty tank yeah so yeah like why did it do that oh that's why that got to a point to where i realized the value in this and i got an old amazon tablet reflashed it with uh lineage os there's a couple different like um apps that you can install that help you enable you to make a
Starting point is 00:21:45 kiosk mode sort of deal on it and so just open the web page for home assistant and kiosk mode and suddenly the kids were able to see that my one of my daughters she was really excited because she could see the power because if you have maybe not perfect awesome son coming in and it's kind of so so you kind of have to judge the number of laundry loads you can do. Not just that. You really kind of have to have the whole family on the same page. Is this a day you can leave the TV on or do we need to make sure if we're done, we turn the TV off right away?
Starting point is 00:22:14 Like getting everybody understanding that is tricky when you're off grid. Surprisingly, if we're not running the air conditioning, everything else. You have infinite power. Yeah. It's like a rounding error at that point. The TV could 24 7 600 amp hours over here yeah but i have to imagine a display at least helps the family understand this is where we're at this is what we can do today yeah and it was really cool because they got excited about it and like can i do wash and i'm like well what's it say over there and they do the thing and then like looking at i was like oh, I was like, oh, I can do it. And I was like, yeah. So, then it was just,
Starting point is 00:22:47 it was cool to watch them get involved with something that I had basically been my own, the dad project for a long time to sort of let me know where things are at, because I have to then make the announcement, the grievous announcement. Okay, we got to pack up because we got to go get water because it's a surprise. And instead, it's no longer a surprise and we can plan and that made a big difference absolutely and i imagine you know because i've done the same thing i have a fire tablet actually just upgraded it last week fire tablet mounted uh about midway in our rig and uh the family really took to the automation a lot more and all of the other smart devices when there was a dashboard they could use. And, you know, they had feedback and I made a lot of tweaks to the dashboard based on their feedback. I imagine you probably did something similar. Oh, yeah. Yeah.
Starting point is 00:23:34 And I would kind of just watch. I'd be like watching them poke at it. And I'm like, you see them sort of clicking around. And I was like, well, I probably should remove that because it's a little too much information about stuff. Or maybe they wanted to see this because they'd ask, well, I probably should remove that because it's a little too much information about stuff. Or maybe they wanted to see this because they'd ask, how do I know what X is? I'm like, oh, here, let me show that kind of thing. That was sort of a learning curve. It kind of, it got static enough to where it really served our purposes.
Starting point is 00:23:57 The next level after that was honestly, I started digging into Node. Well, actually sort of simultaneously with like getting Grafana in there and a real SQL database to serve the history and InfluxDB for tracking the metrics locally. InfluxDB was really the big turning point for collecting the Victron stuff locally.
Starting point is 00:24:20 I was only still collecting stuff I'd configured sensors for in Home Assistant. I wasn't picking up every single crazy turn of events that happened through the Victron. I didn't need it. But it's still quite a bit of data. It gives you a lot of more information. Are you running that and Home Assistant on the Pi? Yeah.
Starting point is 00:24:36 So I went with not just the Home Assistant version that is just installed standalone. It's actually this Docker-style container where if you just do the add-ons for those, because there's add-ons in the store for those things with the HasIO implementation, it just sets itself up and becomes a Docker container, and so you can just run the thing. As long as you have persistent config, you're good. Same with Node-RED and some of these other tools.
Starting point is 00:24:59 There were some slight tweaks to some of the Docker config files to be able to allow egressive traffic out of some of them, but nothing major that I had to change. What happened, though, is that I started collecting interesting trends. So I would make fake sensors based on other sensors, based on historical running averages and things like that. And those then became the sensor feeds for doing things inside of Node-RED, which were things like power is trending this way. The prediction is that we
Starting point is 00:25:31 will reach the zero more power available for things at this date and time. So try scaling back the temperature of the air conditioning by one degree every five minutes until you don't get that. So basically, I want to see that trend flatten out to just a balanced average. So there were some soft endpoints to configuring air conditioning and power and stuff like the air conditioning because the biggest deal that would scale back AC if there was limited power sort of thing. So that meant a little discomfort, but it also meant our power didn't go out. That really seems like things, again, manufacturers should be actually just building into the rigs at this point. But that's a great example. I was thinking about doing the reverse
Starting point is 00:26:12 for heating up here in the Pacific Northwest. You should. That wasn't actually a thing that I got later. If you're in a mobile vehicle, heating with propane directly in your vehicle, like some of these schoolies and stuff I've seen, they do that. It's terrible, introduces lots of moisture. A propane furnace is typical RV fare. Great, it gives dry heat, but you gotta have a lot of propane to do that.
Starting point is 00:26:34 I had a lot of propane, but I dedicated it specifically to the stove, oven and the hot water heater. So I went with diesel heaters instead. So there's these cheap Chinese aftermarket diesel heaters you can get, Amazon, places like that. They're about $250 or so. And a 5-kilowatt heater is $250. So that's like, what, 18,000 BTU or something like that?
Starting point is 00:26:56 And they consume like a gallon of fuel every 24 hours at that output. And if you're really running 5 kilowatts of output, you'll cook yourself right out of a 40-foot vehicle. Yeah, did you say multiples? Did you buy multiples? So I got two. One up in the front, one in the back. Yeah. I bet it cooks.
Starting point is 00:27:10 The one was good enough. But what I found was that to control the moisture on the single pane glass of the windshield and things, I really needed to heat up the front too. Those have a little Chinese controller in there that's good enough. It's got a timer. You can push the on and off button, set your set temp. But there's no integration with that. So there's this guy named Ray, Ray something, Ray, I can't remember his last name. It's a product called Afterburner. And he's this Australian chap who has been building these boxes and they're super cool. They have a little,
Starting point is 00:27:41 they're built, they're kind of based around ESP32. He supports the firmware update. They got a web interface, MQTT, all that good stuff. And so configured that to just publish their status into the device tree as well. So this MQTT tree that's being held on the Mosquito broker or on the Home Assistant is collecting a whole crap load of stuff. We got all the Victron stuff.
Starting point is 00:28:03 We got the air conditioning. We got status about all the victron stuff we got the air conditioning um we got status about all the the pumps and switches and valves and things for the plumbing and stuff in the vehicle we got the heater controls we have you know just position date time all that good stuff it's sitting there so there's just this wealth of data to start building a bunch of logic into things so um one of the modes i had set set up was a, uh, collaborative agreement between the air conditioning and the heaters. If the humidity, Oh, that was the other thing. Um, so Shelly got into play on the mix on this. So that Shelly HTs, the little spherical deals,
Starting point is 00:28:35 you can get a 12 volt adapter for those. So those are screwed in. So they're persistently powered instead of off a battery. And then I also got some Shelly RGBW controllers for lighting so we could control lights and stuff from the same deal. So, your typical home assistant kind of stuff, lighting and environmental monitoring. So, the Shelleys, when they would pick up that the humidity was climbing to the moon, when you're winter in somewhere that's cold and wet and raining, very easy to pick up lots of humidity. Sounds crazy to run your air conditioner, but in a car, one of the most effective ways to run your air conditioner, but in a car, one of the most effective ways to reduce your humidity in the vehicle to keep it from fogging
Starting point is 00:29:09 up is to run the heat and the air conditioning simultaneously. You mobilize the moisture with the heat, and then you condense it and extract it with the cold coils of the AC. So Node Red would then coordinate the Chinese heaters with the Gree air conditioning system. Because if you use the dehumidify mode in the Gree system, it wasn't really effective on its own because it was just pumping out cold. You need to heat it too. And so between those two, you'd set the Gree to dehumidify and it was below a certain temperature outside and inside. There's some settings there. It would kick on the heaters to help it out. That was a huge comfort thing. Yeah. Did you ever have a situation where you were in a low power scenario and some of these
Starting point is 00:29:50 systems are kicking in and draining you even faster and you look at the percentage of power left, you're like, oh, what? What happened here? No, I don't think I've really encountered that. No, you and your infinite power. Yeah. The funny thing is, is that some of the best power situations can honestly be if it's sunny in wintertime, because you don't have to heat or you don't have to cool. I mean, yeah. And you really, if the sun's out, a bus heats up. Well, kind of. I mean, we don't mind. Yeah. We have quite a bit of insulation. We have like three inches of
Starting point is 00:30:21 insulation all the way around. So it stays fairly consistent. If it's air temperature, it definitely heats up though. Eventually it's just, you know, the air exchange will happen. And you have six, I don't think we've actually said you have six people living in this. Right. So, you know, this, it's, it makes a big difference in a lot of, in a lot of ways with humidity and with temperature. Yeah. Four kids, two dogs, a cat, my wife and I. And then I'm sitting up in the front in my office, which is one of the chairs with a
Starting point is 00:30:48 fold-out monitor and computer and everything. So I'm running a real desktop PC, not just a, you know, like a laptop usually. And talking on the internet with work calls and doing all the stuff that people do on a mobile remote thing there. So now you're rebuilding, it sounds like. You're kind of, you've had the opportunity to set up a home base and can kind of redo some of this stuff. What are you going to change?
Starting point is 00:31:12 What are you tweaking in the next build? I've been always sort of light on understanding how Docker works and Kubernetes and deploying things and reliably redeploying configurations and stuff. So I have been experimenting a lot with virtual machines and running Home Assistant just on just a machine because it's frankly kind of a pain in the butt to cycle back and forth between keyboards and monitors on an actual physical Raspberry Pi. The fundamentals are the same. So for me, it's been learning about how to control my Docker environments, how to revision control them, how to keep all my configs in play and working. And hopefully,
Starting point is 00:31:51 with Home Assistant finally getting to version one, I don't know if you've seen their version numbering has changed in the last now it's date based, yes, date based. And so it's like, I feel like they're, they've turned a corner in like, maturity on things. And the API isn't changing, not retiring so much stuff. Stuff seems to be consistent for longer periods of time. And I feel like I can kind of trust that more now. Are you doing any home assistant in your home base? I am. So that little extra buck, the DeskPi Pro,
Starting point is 00:32:20 I can turn my sprinkler system on from that. It's pretty great. That is. I picked up some furnace controls for the house. I can turn my sprinkler system on from that. It's pretty great. That is. I picked up some furnace controls for the house. So I have my heat HVAC is now controlled through it. Very straightforward now. I picked up Shelly, the AC clamp meters that they have.
Starting point is 00:32:39 So you got split phase clamp meter powering. So that's showing up actually in the mail. I'm just going to hook it up and wire that to mains. So, you know, you clamp it around the mains on it. So, it's not – you have some power, but that's about it. And then that way I can get some status on that and just sort of see what's going on. Yeah. And that'll be nice if you do hit the road or when you do hit the road again. You can keep an eye on home, too.
Starting point is 00:32:57 Yeah, yeah. Actually, my wife just snuck it around the corner here. You can see what it looks like. This is the – here's the clamp meter, one of the clamp meters for it. So, you can see what it looks like this is the here's the clamp meter one of the clamp meters for it so it's you can see kind of the size right of it going on here so this will clamp around 120 amp leg of your power panel that's kind of like what the Victron stuff is sort of giving me in those spaces you can derive a lot of the other information from just knowing the amps going
Starting point is 00:33:25 through something if you know the voltages. Does a house feel like a bigger problem domain? Because that's how I felt. I was sort of motivated because a rig, I could wrap my head around the entire thing from the ground up. But a house, it felt like I don't know where to start. I don't know why I had it. I just had a different approach. I think after going through the process of going on the bus and having to make things small, effective, and efficient, the house is easy. It's like cake because there's lots of space. It doesn't go down the road.
Starting point is 00:33:54 It doesn't drive down the road. It stays in one place. When you come back to it, it's still there. It's very stable in a weird way compared to a bus, yes. So in a lot of ways, it's almost like reverse now. I can use the house as an incubator for ideas and practice this and fine-tune this better. We're really looking forward to getting back out on the road and doing some trips. You know, it's not like we're going to go for just a week.
Starting point is 00:34:15 We'll probably go for longer than that, hopefully. My work being full remote allows me to do that. And then I'll be able to run out with another iteration of this whole home assistant process again, and hopefully then take what I've learned from pushing it on the bus to make it easy to recycle that concept back to the house and make the house rebuildable. Right. I love your idea of trying things at home, experimenting with things and then road testing them. Yeah. One of the most important lessons I've learned with all of this is that it's really easy to start acquiring a whole lot of nerd knobs to play with.
Starting point is 00:34:52 It's like you plug in a few things and suddenly you have data galore everywhere. And it's really easy to lose sight of the goal here is to make your life easier. Sure, it could be your hobby to just swim like Scrooge McDuck does in the money bin full of coins of data everywhere and doing everything in all of the possibilities. But I find I will get lost in the possibilities when the reality is I don't really need to do that. And everything you add, every feature you add, this is the classic software development corundum everywhere is that too many features.
Starting point is 00:35:27 Even just for self-hosting, the more you build, the more you have to maintain. Yeah, and I think that's been my balance right now. So I left the hardest thing for last, which is to make it easier to scale and rebuild and redeploy.
Starting point is 00:35:39 And so that's what I'm really working on right now. Well, Aaron, I look forward to following your adventures in the future. And if you're ever in the Pacific Northwest, let me know. Absolutely. what I'm really working on right now. Well, Aaron, I look forward to following your adventures in the future. And if you're ever in the Pacific Northwest, let me know. Absolutely. Yeah. Keep track of us on our Instagram. You'll probably see things here and there. And it was really fun kind of getting a chance to dive into this a bit more details.
Starting point is 00:35:59 Linode.com slash unplugged. Go there to get $100 in credit for 60 days on your new account, and you support the show. Linode is our hosting provider for everything we've built for JB 3.0 and everything I've personally built for the last couple of years. Linode's infrastructure is solid and flexible, and the nice thing is you can focus on your work, not on infrastructure problems. You get 11 data centers around the world to choose from. Every machine has super fast SSDs. Every system is backed by their awesome customer support, the best in the business. I often talk about Linode in terms of hosting,
Starting point is 00:36:34 like a server, but they also have object storage, which we use the crab out of here at Jupyter Broadcasting. A really handy tool is when you combine the Linode command line tool that just uses their fantastic API with the object storage. So I'll have like a JPEG on my hard drive that I want to link to somebody. I have this link command, like all set up already in Phish. So where I can create a file or I can delete a file or I can upload a file and mark it as public
Starting point is 00:37:01 and then generate a URL for it and then bring it back to my clipboard. And then I can just paste that URL into a chat. It feels like magic. And then just recently I was experimenting with static websites to do like a single purpose, like a status page that gives you just information if a service is down. And I'm experimenting with just running those directly out of object storage. It's so awesome. It feels like I figured out some kind of hack
Starting point is 00:37:28 to host web pages without a web server in front of it that are just super fast and static. Like, why is this just not a thing more people are doing? You know, there's really a lot you can play with. They have an impressive set of applications you can just one-click deploy from entire stacks of web servers to game servers and
Starting point is 00:37:45 everything. And the pricing is ridiculously great. They've really been able to hone in and do this right so they can charge a really reasonable price. I mean, 30 to 50% less than big cloud there over at AWS or Google. And you get a real nice balance of technology and price for that sweet price to performance ratio that really nobody else gets right. Linode's really special that way. So go check them out, support the show, and see what I've been saying. Linode.com slash unplugged. Well, before we go today, we've got one extra little surprise AMA question to throw in here. Deckbot from Indiana writes,
Starting point is 00:38:28 what can you and your host tell us about being internet famous, the pros and the cons? If you could send an earlier version of yourself one markdown document of advice about podcasting and internet fame, what would be on that doc and to what date would you send it? He flatters us, Wes. You know, he flatters us. No kidding. The only time Wes and I would be considered internet famous is when we are at an open source event and then everybody kind of knows who we are generally. Not everybody, but a lot of people. It helps if there's like a big Jupiter
Starting point is 00:39:01 broadcasting logo somewhere. The funniest thing actually is a lot of people have to hear us talk first before they realize it's us. And that's kind of, man, if that's not a sweet spot. It really is. It's adorable. Yeah. And outside of that, we don't really have to worry about it. And when I'm at a community event, I'm there to see people. So it's great that people want to come up and say hi.
Starting point is 00:39:24 It's one of the things I love about this niche. You know, if, if we were, if we were doing, I don't know, the expanse podcast and it was huge because that's my secret dream, an expanse podcast, then it would be kind of, it would suck to go out. Cause I'm kind of, I'm kind of an introvert when I'm on, I'm on, but when I'm off, you better not make me be on, because then I don't like it. But I like this question about sending ourselves a markdown document with advice about podcasting and internet fame.
Starting point is 00:39:54 I think I know two answers for myself. Do you have anything that you would tell Past Wes? Yeah, I think two things. I would send it maybe like 2010 era, I think. And one would just be, I mean, I always liked podcasts. I was a podcast listener, but I don't know, up until I got involved with Jupyter Broadcasting, I don't think I ever really considered that I would be making podcasts. I would want to put that little, you know, that little worm in past Wes's ear to
Starting point is 00:40:25 think that might be a creative outlet that you would really enjoy. I mean, between the actual content itself and learning all about audio and the hardware we get to play with, it's been fantastic. And clearly it's on my list of things I nerd out about now. But the other one, the other one would be prepare yourself for the work because there's a lot more that goes into it than I would have ever considered. Yeah, but then would you just scare past Wes off with that second part? Well, that's why I thought they might be a nice combo. You know, you're going to really like this, but it's going to be a lot of work. Yeah, so that way when it's those times it is a lot of work, you're like, no, no, I remember future me said this is going to be worth it.
Starting point is 00:41:03 Exactly. Yeah, it'd be like that little motivator. That's, that's interesting. I think if I could send myself a letter, it would be pretty generic other than it would say, come up with one way that really works for you, for everyone to get ahold of you and only ever talk about that one way, remain extremely consistent about that one way, because it kills me when I get notes. I just get notes on all these, any platform that has a messaging aspect. So every social media platform, Reddit, YouTube, everything, there's messages in there. And I go in there and I get messages from people that are like, how come you're not responding to me? And, or I'll get a, I'll get an email from
Starting point is 00:41:40 somebody that says, I've been trying to get ahold of you for three weeks. I just feel so bad about that. Um, because I just can't keep up with the platforms. You're like, I legitimately had no idea. Yeah. And it comes up, it comes up, you know, a couple of times a week at least. So I would love to be able to send past Chris a note that just says, be super consistent about how people should get a hold of you. And I don't really know what that way would be. It's definitely not email though. Yeah. I mean, it is for the shows. Like, if you want to get something into the show, the contact forms are the best way. Those come in via email.
Starting point is 00:42:09 So, like, for show content, that's really good. I mean, email, you know, Wes, actually, as I get to be an old man who's grumpy with social media, I kind of think, you know, email's great. So you've evolved on this, because I was just thinking of you, you know, sort of talking about the horrendous size of your inbox and how hopeless of a situation it was. Oh, I do absolutely hate email.
Starting point is 00:42:30 I have to schedule time on Monday for a project that I don't even know what it's going to be. But every Monday I get something in my inbox that action that morning I have to take action on and I have to spend a couple of hours that morning. Sort of your blocked out Monday morning surprise time. I have to because there is no social clear expectations on email. And so people wake up Monday morning and they got an agenda and they want to get some stuff done and they either need something from me or information from me or an answer from me. And that ends up in my inbox. They need it now. Yeah. And they, cause they, otherwise they can't go on with their thing. So I would, I would be very clear about communication. And then the other thing I think I'd say to my past self is don't
Starting point is 00:43:13 do the RMS interview that I did years ago. The whole thing was just kind of a wild last minute thing that just sort of came up. It was a crazy opportunity, just two things lined up. But I just had rolled out of bed, and it was like my third night with a CPAP machine. I had just gotten a CPAP, and I had not slept because it wasn't working well for me at the time. And you can see in the video, if you look, maybe, you'll see like marks on my face, red spots on my face. Those are my CPAP straps. The interview was like at 5 a.m. because of where RMS was in the world at the time. And so it was a lot. And I don't think I had time to even think about what we were doing or what I wanted to ask RMS about.
Starting point is 00:43:55 And I don't like the way it went. But I suppose that's for, you know, the history of the internet. Because there's a lot of interviews that I think really do hold up and that still are good to listen to. So I think I have outnumbered the bad, but I would have just said, just don't do it. That is an interesting and maybe unexpected at first sort of tip that it's easy to get caught up with, you know, the excitement of like, oh, I have the potential of this interview. This is an opportunity. And it feels like, why would you say no? But it's worth trying to carefully think about when you can.
Starting point is 00:44:26 Yeah, I'd have to, you know, I could do a few markdown bullet points, you know, just boop, boop, boop. Don't do it for these reasons. You'll thank me later. Yeah, and, you know, maybe warn myself about a few co-hosts here and there. But I think that would have been it really. It's just a communication thing. And then maybe don't do the RMS thing.
Starting point is 00:44:44 And part of me, though, doesn't want to change anything because it's pretty great that we get to do this. And it's pretty – the community we've built and that has stuck with us over the years is really, I think, the best of the best out there. And we're just – we're incredibly humbled by that. And so if, like, if I tweak any of that stuff, it's like maybe you warning yourself off accidentally. Like, things just might not have turned out the same. Right. Whatever pain you have suffered, it was worth it since you're here. That's right.
Starting point is 00:45:10 All right. Well, the show's back live. We're back on June 8th on Tuesdays. Go over to jblav.tv at noon Pacific, 3 p.m. Eastern, or get it converted to your time at jupiterbroadcasting.com slash calendar. Hey, don't forget, too, we have the Linux flies on Mars sticker that I made myself over at jupitergarage.com for just a little bit longer, and you can pick it up.
Starting point is 00:45:32 And every time you look at it, you'll think to yourself, Linux made history. Linux is flying on Mars. I also, the other thing I like about the sticker is I think Linux runs on more planets than Windows, and I like that, too. You can follow the show on Twitter, at Linux Unplugged, for announcements and stuff. The whole podcast network is at JupyterSyctle. And we have a whole range of great shows, a lot more self-hosted topics, and Linux Action News as well.
Starting point is 00:45:57 All of that at JupyterBroadcasting.com. So don't miss those shows. They're a great companion to this here show. Hope to see you live next week, but otherwise, thanks for downloading, and we'll see you right back here next Tuesday. Thank you.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.