• Water Heater Controller Functional

    Dustin05/22/2021 at 16:08 0 comments

    I've had far too many updates to list here lately, so I'll just cover the latest breakthrough, as quickly as possible, because I drank too much coffee and water and have to pee.

    I used the camper's Arduino Mega 2560 to make a water heater controller. We have a 6 gallon electric water heater installed, with a special 12 volt solar dump load heating element installed in it. I use a DHT11, clamped to the bare steel water tank, and a 40 amp automotive relay connected to the heating element. It uses a 30 amp fuse, mounted in a marine grade fuse panel. The Arduino uses one of the GPIO pins to read the temperature of the water, and turn on a small relay, which turns on the big automotive relay. I have the water temp set to 140F, which is the highest reading that the DHT11 will report. It's honestly incredibly hot, and likely hot enough. I want to use a DHT22 or better though, as I can heat the water to 180F and then dilute with cold water to make the water last longer for showers and dishes. 

    The code running on the Arduino is pretty simple, but has taken me a while to get right. At its most basic level, it checks the temp, compares to the desired temp, then turns the element on and off as needed. That was great, but I wanted a way to monitor the status. I wrote some code to allow the Arduino to communicate over USB(serial). At first, I just had it print out what all it was doing, periodically. After that I learned how to send commands to it, and have it act on those commands. Things such as turning the water heater on and off manually, and setting it back to automatic mode. I then added a way to set the max and min temps. Max temp for when power is plentiful, min temp for when it is limited. That cuased issues when the board lost power and reverted to the max temp by default. I learned how to use the EEPROM.update() and EEPROM.read() commands and used it to save settings. Now I didn't have to worry about power loss. I still ended up with a dead battery bank on our first off grid test though. I hadn't added in voltage monitoring yet. I have the sensors for it, they just need hooked up. Soon it will be able to tell when voltage drops to a certain level, and refuse to run the hot water heater, as it is a luxury that I can live without. The first real safety feature I added was a system to shut off the water heater and refuse to turn it back on if a valid reading wasn't received from the temperature sensor. That little tank will literally boil water, and I've had it do so and trigger the overheat reliefe valve and pour steaming water out the bottom of the camper during testing. If the sensor reports 32F, the water heater is forced into the Off state and cannot be turned back on until valid readins are restored. There is no alert yet for this condition, but I will add it soon. 

    I finally got around to making my first ever GUI. I used tkinter and python as they are pretty well supported by most things. The GUI is very simple, allowing you to change modes between Auto, Off, and On, as well as set temp to Min and Max. You can reset the serial link, and check the current state of the heater as well as current and desired temps. The backend stuff is pretty simple as well. Commands are encoded as bytes and sent over USB from the Raspberry Pi 4 terminal to the Arduino Mega. COmmands such as "whoff" and "getwhstat" are pretty simple and effective. It works quite well, aside from not being able to refresh the current temp reading without restarting the program. Another bug is that the Arduino doesn't give the DHT11 enough time to get a valid temp reading, and therefore will not start the water heater when plugged in for the first time. I have to turn it to Auto and leave it connected to the Pi. Annoying but an easy fix. I just need to go do it. SO, the water heater is functional, and good enough for now. I have some updates to do, then I'll create a project for it and upload everything as I keep developing it.

  • Light Molding Started, Battery Terminals, Coding

    Dustin12/24/2020 at 00:41 0 comments

    Today feels like a lost day. We spent a few hours running errands to get various things. I'm ending my work day by deleting all of the code for the serial communications section of the Arduino and Raspberry Pi stuff. If I need to change the temperature for now, I'll just reporgram the Arduino and be done with it. I have spent a few days struggling with sending commands to Arduino from Python, and having it actually do anything. I can send the commands and the Arduino can even respond with what commande it got. It just won't act on anything it receives. Really frustrating to spend days on something and make no progress, so I'm giving up on that for a while. Just getting really burned out on everything and can't wait to leave this horrible place we live in. Ohio is the most depressing and infuriating place I have ever been. Horrid.

    We got some trim mounted in the camper and put an LED strip on it. The lights point up at the ceiling. The ceiling will be white, so it should reflect nicely. That was fairly easy. Just drilled through the trim and wall panel, then put in drywall anchors and screwed the trim to the wall. Electrical tape was used to hold the light string on top of the trim. The lights would be invisible to most people until they are turned on.

    I had a very stupid problem with the Renogy litium iron phosphate batteries we got a while ago. We have two of the old style and one of the new. The old style came with bolts that don't fit in the terminals, and the terminals are a non standard size, so I couldn't even find a replacement at a dedicated fastener store. No one there had ever seen such a blunder, straight from the factory. I looked it up and it turns out I'm not the only one with this problem. Ridiculous. The bolts it comes with are M8 .75 thread pitch, 14mm long. I ended up getting M8, 1.0 thread pitch bolts and just slowly working them into the terminals like you would a tap. The terminals are brass, so it was easy to cut new threads and it worked just fine. Such a stupid problem. I don't uncerstand how someone threaded those bolts into thos terminals at the facotry and thought they ok. You could push the bolts straight down into the terminals. They couldn't be tightened because they were too small. Way to fail hard Renogy. Otherwise the batteries are fine.

    Today has just been a very stressful day. I'm stuck on a few jobs with this, and just don't want to do it. 

  • Water Heater and Grey Tank

    Dustin12/23/2020 at 02:23 0 comments

    Grey Tank

    Today was a very productive, but frustrating day. I got the grey water tank temporarily mounted. No more bucket under the sink. That was a massive relief, because my confidence in my plumbing abilities is not strong. I had to climb under the camper, where it was wet and cold, and hold up a tank while I screwed the steel straps onto the steel frame. Luckily I've gotten very foot with my hands and such. I don't imagine the average non-tool person would have been able to wrestle all that crap into place. I still find stuff like that very frustrating. I had to drill a 2 inch diameter hole in the floor of the camper, above the grey tank, then mount the tank and drill a new hole in the top of that. It's not the ideal solution, but space was limited and I didn't have a better way of getting the sink drain into the tank. The tub drain should be interesting. Hopefully pretty simple. I've gotta mount the tub frame to the floor, push the tub back into the corner where it will ultimately rest, then drill through the plywood tub frame floor, then the camper floor. I'm trying to keep the u-bend for the tub inside the camper so it doesn't freeze and block the drain. I'll put it under the camper and build a box around it and heat that if needed. After that's done, I can connect the tub drain to the top inlet port on the grey tank and have all the drainage installed. Well, all but the waste water drain for the reverse osmosis water filter. That's just a matter of drilling a hole into the sink drain and connecting a fitting over top for the little drain to connect to. I'm so close to being able to take a hot shower in that little camper. I can cook, make drinks, and wash things in the sink with hot water. Being able to do laundry in the tub and shower is the next big step. The bathroom wall and ceiling panels need installed, then the ceiling trim that will hold the LED strip lights, and the shower curtain rod and curtains. Oh, and of course the little bathroom door if we decide to install one. I kind of doubt it, as the tub walls are high enough to keep the shower curtain in the shower. It used to have this little wall that closed the shower off from the kitchen. We burned that. It was gross. 

    Water Heater

    The water heater has been plumbed in and full of water for a few weeks now, but it's been freezing cold. Until tonight! Before I went inside to write this up and clean up, the water was at about 100 degrees F. It started off at 45F before I hooked one side of the double sided heating element up to power. I converted a 6 gallon electric water heater from 120 volts AC to 12 volts DC with a solar dump load heating element. It threaded right into the water tank and has 4 terminals. 2 are for the first heating coil, the other for the other. Each coil is rated to draw 25 amps at 12 volts DC. That's 300 watts per coil, 600 watts total of water heating power. Considering that our solar system is rated at 600 watts output and has been seen bringing in 800 watts, it's a perfect dump load for the camper. On power scare days, I'll have a thermostat setting that conserves energy. We'll just have to conserve hot water on those days. On days of abundant solar power, or when plugged into shore power, I'll have a separate thermostat setting that will heat the water as hot as we safely can. Hotter water goes further, and we need it since we only have 6 gallons of hot water for 2 adults. Luckily we don't use much hot water as it is. It's quite an amazing feeling to be able to turn on hit water in that camper. It's really starting to feel like a home to me now. It's still full of tools and clutter, but it's coming along very well. Soon I'll have both heating elements hooked up to the Arduino and we won't have to think about hot water any more. It's all coming together nicely.

  • RV Power Center Day

    Dustin12/19/2020 at 04:15 0 comments

    Today was a very special day for this project. The power center arrived. We picked it up from Home Depot and got se of the supporting equipment for it. It took me a few tries to get all the right electrical connectors for it, but I finally rigged up something that works. We have 120 volt AC power in the camper for the first time. Until today, we were just using an extension cord run through the floor and connected to the electric heater. That worked, but was crude. Now we can use all the outlets in the camper, including the two very nice ones with USB-C charging ports on them. I was able to charge my phone and GoPro off the camper outlets for the first time. 

    It wasn't all smooth sailing. At first I had a locking 20 amp power receptacle installed, with what I thought was an adapter to connect that to an extension cord. I ended up with 2 female ends... I went back out and got what I thought were the right parts to build my own adapter. I ended up with a 30 amp plug that didn't fit into the 20 amp receptacle. I ended up just wiring the camper AC input right into a regular household plug and plugging that into a heavy duty extension cord. It's not great and is very temporary, but it works. It gets out lithium battery bank charged which keeps the lights on in there.

    I started wiring up the custom 12 volt DC furnace, but had bought the wrong connectors. I got to the part where I connect the heating element power lines into the relays the Arduino will control, and found the problem. I ended up calling it a night and making gingerbread oatmeal and an egg sandwich. I've got all day tomorrow to get more wiring done. I think I'll take Sunday off to rest and work on enjoying the progress we've made in our lives lately. I plan to end tomorrow's work day by cleaning up the camper, making tea, and getting ready to sleep in the camper. We slept in it a few nights ago and it was great. It will have a furnace and hot water at the end of this weekend. Almost done with all the critical systems. We started this project in April, and it sat for months with no progress. It feels amazing to be able to enjoy the fruits of all our labor. 

  • Winter Water Management

    Dustin12/18/2020 at 04:36 0 comments

    I can't think of anything I accomplished on the camper today. The lady and I ended up buying a vintage sled and tent from a thrift store, having a friend over, and starting her travelling massage business today. It was a surprisingly productive day, just not really camper related. We did show the camper to a friend, and he liked it. I also confirmed that the garden hose doesn't freeze solid overnight and can be used in the morning. A feature I will be adding soon is automatic water purging. Basically the Arduino that manages all the various appliances and such will have control over a solenoid actuated water valve. When the aoutside temperature reaches freezing temps, the Arduino will dump a little bit of cold water from the garden hose directly into the grey tank every few hours or so. This will keep the water moving and prevent the hose or lines from freezing up, even if the camper isn't heated due to low reserve power or heat failures. Normally I'd have to turn off the hose and open the kitchen sink faucet, or make sure I let a little water out right before bed and as soon as I get up. If I slack on that, we could end up with burst water lines, leaks, and just no running water. Normally people just winterize their camper and put it away for the cold months, but we want to live in it full time. I have an Arduino with 16 relay modules under it's control, so no too much to add a feature that fully automates the winter water management. I was going to implement this feature today, but we were too busy and having too much fun. 

  • Many More Updates

    Dustin12/17/2020 at 03:06 0 comments

    Not even sure where to start... I'll start with the pictures.

    The first one is looking at the back of the camper from the kitchen.

    The second one shows the new kitchen. The counter top is temporary. I used my GoPro to get the wide angle pictures.

    New things since the last log:

    - Rug in the middle for keeping the feet warmer, floor cleaner, and make it look nicer.

    - The two white vents on the left will soon be connected to the custom 12 volt DC furnace I made

    - LED strip lights on the ceiling. Those will be mounted on top of the trim.

    - Silver window covers as it's below freezing now in Ohio.

    - New feet for the slide out bench bed things.

    - 12 volt power lines run in the ceiling.

    - 12 volt DC power line connected from bottom of camper to top of camper.

  • Sealing The Roof: Day 2

    Dustin12/14/2020 at 03:38 0 comments

    A few days ago, we knocked out the rest of the roof sealing. We riveted  the remiaining roof vents on and sealed them. I really don't remember what all we did, and I have other projects to attend to, so I'll make this very brief. We sealed the roof, then it rained next day, and I found a slight roof leak I have to seal later. No big deal, as all the wood and stuff that can rot was replaced with not rotting materials. I also got the reverse osmosis water purifier installed and fully purged. It's currently filling the storage tank, and I'll have 1.75 gallons of drinking water made from hose water waiting for me in the morning.

  • Sealing The Roof: Day 1

    Dustin12/11/2020 at 02:18 0 comments

    I'm exhausted from the work on the camper today, so I won't include much detail. The camper came with a giant air conditioning unit on the roof, which left a 24 inch by 36 inch rectangular hole in the roof. We had a piece of plexiglass that came with the camper on there, but that sucked. It cracked when I drilled the holes and bolted it down, and leaked like crazy, even with plumber's putty all over it. That putty dried out and cracked, leaving many leaks. The camper has had a tarp over it for months now, and the electronics have been in storage. We ended up using an RV roof sealant tape and copper coated rivets to hold everything down. We cleaned the tape mounting areas with denatured alcohol, laid the various roof vents and solar panel mounts down, riveted them down, then used the tape to seal over top of the rivets and seams. The roof is very thin sheet aluminum, so I used many rivets on all the mounting points. It worked very well. The underside of the the roof needs some support to get rid of the sagging, so I have to figure that out. Tomorrow should be the last day of roof work on the camper. Most of the roof insulation is installed, and the last roof vent goes up tomorrow. With this roof work done, I can safely install the electrical system, hook up the solar panels, and start using the camper ammenities. The water lines went in the other day, and I should have the drains installed soon. It will be done this winter. THe more I get done, the more comfortable it will be to work in. 

  • Plumbing and Returning An Inverter

    Dustin12/10/2020 at 01:44 0 comments

    Electrical

    I got the electrical system dropped into the camper for a mock up, and the damn inverter was dead. I remember finding out that the main AC connection was dead on arrival, and that this is a known problem. I was hoping it wasn't actually the case, but it is. The inverter was actually worse than before I put it into storage. The outlets, which were working, are dead now. We returned the stupid thing to Home Depot and ordered an even better power system for the camper. This one should do. It solves the huge problem of choosing an RV power center and inverter. It works out to about the same price as an inverter and shore power center as well, but in one unit, and designed for lithium batteries. Right now the only way to safely charge the camper batteries that we have is the solar system on the camper. It's been shut down for months, due to some roof leaks. We've had the roof tarped and the panels covered. Tomorrow should be a good day to take the panels down, seal some leaks and put the permanent fasterners in place.

    Plumbing

    After returning the inverter, wepicked up the plumbing bits to connect the reverse osmosis system and the city water connection. The city water connection has a crappy plastic clip the stops it from spinning when you connect the hose. That broke during installation, then had a very nice little leak stick around. I have a much nicer connection on hand and will likely use that instead. All of the PEX plumbing and Sharkbite fittings went together leak free on the first time. Those fittings are very expensive, but have made it very easy to install and change thing. I have maybe an hour total into the plumbing installation. It would have taken me far longer with copper. I have to purge the RO water filter and hook up all the drains, but it goes well. I can't really focus to do any more logging, so I'll end it here.

  • Power Distribution Frame Complete

    Dustin12/09/2020 at 05:33 0 comments

    I spent a few hours making a little wooden frame for all of the power equipment. Mainly it just lets me elevate the inverter off the ground, and safely mount the solar charge controller on top of that. I mounted the main bus bars and fuse panels to this as well. I now have a single unit that contains all but the batteries. I'll be adding another small panel box for all of the 12 volt relays that run cooling fans, heating elements, and other power hungry devices that need to be switched by the Arduino Mega that monitors and controls everything. Speaking of the Arduino: I also mounted the LCD keypad module to the case for easy use. It's not avery glamorous interface, but it's simple and reliable, assuming I didn't damage it during install. I also mounted the voltage sensor to the inside of the Arduino case. This sensor will be connected directly to the main 12 volt system to monitor the voltage and shut down all non eseential devices if battery voltage drops too low. There will be many safety features like this, but voltage monitoring is the first. The lithium batteries for the camper have low voltage safeties built in, but they require using a special device to turn them back on and start charging again. The solar charge controller can activate the batteries, but that would require me to power the charge controller with a differnet source. 

    Side view of the power distribution center. Inverter is down on the bottom, solar charge controller on top. The two boxes on the left are fuse panels. The black box in the background on the right is one of the three lithium ion batteries for the camper. The two large bus bars on the right distribute power to all of the things.

    Front view. 

    Back view. The little box takes 12-24 volts DC and converts it to 5 volts DC for powering the Arduino, Raspberry Pi, and a USB charger.

    Underside. Not much under here, just some extra pieces of wood to raise it off the ground. This box has to live next to the water heater and plumbing, so it has to sit off the ground. I may raise it up further.

    I got the Arduino set up with my new laptop, pulled all my old files off of my old laptop, and got everything ready to finish programming it and get it taling to a Raspberry Pi over USB. I need to be able to get updates from the Arduino and send commands to it from the Pi. I'll likely start on that tomorrow.