Showing posts with label Swimming Pool. Show all posts
Showing posts with label Swimming Pool. Show all posts

Friday, March 1, 2019

I Finally Gave Up On My Hayward Variable Speed Pool Pump.

Several times over the years I've mentioned my Hayward Variable Speed Pump. When I got it, it was a dream come true. Here was something that could filter my pool and save me money doing it. I could control the speed and pretty much design my pool filtering around the power company's lowest rate requirements.
But, right off the bat, it failed. Hayward fixed it and all was well with the world. Then, it failed again. Hayward fixed it again. Then, you guessed it, it failed again. This time Hayward told me it was out of warranty and would cost me $550 to get the new 'drive' unit. I bought one, but from a supplier on ebay because I didn't want to pay the required installation fee they wanted to hook up the wires that replacement would require. I'm perfectly fine with hooking up wires.

It failed again a few days ago. At that particular time it was actually snowing here in the Arizona desert. Surprisingly, we had about four inches of snow on the ground that morning. No, it wasn't frozen, I checked and the darn thing failed before the temperature dropped below freezing. Remember, I record the power usage of the house and monitor the status of the pool as well. The way I discovered the pump had failed was noticing a thin layer of ice on the pool. That has never happened because the no freeze controls on the pool keep the water moving.



Looking at it, there was an error message, "Motor Stalled". I actually believed that message and took the pump loose from the plumbing (yes, in the snow) and turned the impeller. The motor was not frozen. It did cog a bit from the magnets, but it turned freely. Next, I pulled the wiring loose and took it to the patio table (out of the snow) and pulled it further apart. There was nothing mechanically wrong. Fine, look on the internet.

There was story after story about this pump. "Drive Error," and "Motor Stalled" were the two that most often occurred. I asked around, and a friend recommended a place that specialized in pool pumps. I called them. and they were very nice to me, consoling me on the problems with that pump, but didn't offer much in the way of suggestions other than replacing the electronics for $650 plus a small labor charge.

Gag!

I asked about just replacing the dog gone thing. For a little over $500 I could get a 2.6 HP two speed pump motor installed on the existing impeller housing. Really? You can do that? Yes. I'll be down tomorrow morning. Here's the pieces sitting on the garage floor waiting for me to do something else to it:



I loaded up the Hayward VSP pieces into the Jeep and took it in. True to their word, they fitted the motor to the impeller housing and replaced all the gaskets and worn parts as well. These folk actually did it while I waited, and I got to talk to several people that came in for various problems and parts. 

I noticed on their outgoing shelf waiting for pickup were three pumps just like mine. All of them waiting for pickup after having some similar problem. Of course the "doctor" analogy applies. I'm at a doctor's office so everyone I see is sick, but it certainly made me feel better because, "Misery loves Company."

Here's what it looks like with the old impeller housing and new motor.



I'm sure someone wants to know what the motor is, so here's a picture of the label on the side of the motor. Thinking about it, I need to put clear packing tape over that so I'll be able to read it in a year or two.






























And, here are the pieces that should go in the trash, but I want to play with that motor some. I suspect I may be able to used a three phase converter from some ebay supplier and turn this into a variable speed motor for my drill press. A three horsepower variable speed drill press !  Sweet.




So, the only piece that is going in the trash (after I see if there's anything inside worth keeping) is the part with the heat sink on it.

I brought the new assembly home and have it sort of installed. I didn't have to change the plumbing at all since it was the same impeller housing. I do have to add a wire for low speed, but (surprise) I want to change some things.

I want to add multicolor wiring for the various line power items. I had a heck of a time chasing down which wires went where and it was a real pain walking back and forth from the power panel each time I wanted to shut off the power to the pump. So, since the controller housing has facilities for breakers, I'll add breakers right where I can get to them and multicolor wiring so I can tell which things hook to what. That should make it much easier to work on next time.

But, since the motor technology is over a hundred years old, all I'll need is bearings, seals and an occasional start capacitor. If the motor wears out entirely, there will be plenty of choices on what I can stick in its place.

Heck, for that matter the Goldline controller I use is not made anymore and I probably can't get parts for it when it fails, so next time it fails, I'll gut it, keeping the power supply, power relays and tossing everything else. That complex, ever failing, mess will be replaced with a simple XBee, Arduino, and the power relays that the controller already has.

Yes, the VSP was a cool piece of technology, and did save me money on power usage. However it simply didn't save me as much as I spent on it to keep it working. Where's the fun in that?

And, yes, that means all the research I did on the protocol and operation of the motor won't ever be used by me. Others have leveraged that work and I know there are some control systems for this motor out there based in part on that work, plus it was fun to work on.

But what about saving energy? I have friends that are energy conscious, and they don't understand my motives. I'm not energy conscious as much as I'm MONEY conscious. The latest rate increase my power company put into place played right into my hands. Without thinking about it, they gave me the periods of greatest need at the lowest rate. I need to run the motor while the sun is at its peak, around noon or so, so the solar heater can have maximum impact. That's also the time for sitting by the pool and cooling off from the intense summer sun. The (idiotic) power company in their infinite greed made the peak sun period part of the "off-peak" period so they could screw over the solar installations since that is also peak solar production hours and they get to credit the solar folk less.

That played right into my miserly little hands. I can run the pump at any speed I want to from 8 PM until 3PM the next day. Sure, that falls right across dinner hours, but I can easily work around that little problem.

And while we're at it, take that Hayward. You charged me a small fortune for the pump, and due to your own bad engineering, had to fix it twice (which must have eaten up the profit). I had to fix it once, but learned my lesson, and used part of your mess and created my own custom pump arrangement.

Soon, I'll be looking for a three phase converter to try on that fancy motor.

Saturday, June 27, 2015

Arduino, Raspberry Pi, Pool Controller and Another Guest Speaker

Let me introduce Mike He's another one of us folk that wanted automation, but didn't want to pay unreasonable prices or be locked into the control of some system 'out there.' He's been working on a project that I want to get into deeply at some point (when I get sorta caught up), and he's way ahead of me on it. Go ahead Mike:

The initial project...

   Several years ago, I was trying to think of a way to extend my swimming season without breaking the bank. I have a heat pump on the pool but they aren't very cost effective to operate. As I live in Florida,  we have plenty of sun so solar was an obvious choice.  Problem is that I didn't want my roof covered with plastic pool panels as I intend to install PV electric panels there and since they tend to develop leaks, i didn't want salt water on the roof. I already heat my hot water with solar so I started looking into using the same concept for the pool.

   I located a pair of glazed DHW panels and set them up with a titanium heat exchanger so that I wasn't running corrosive salt water through the panels. Here's a picture of the panel...



   I used a circulation pump to pump the water in the closed solar loop and quickly discovered I could gain 5 to 6 degrees a day in pool temperature in March. I was losing 2 to 3 degrees at night but the idea was successful as I was still gaining heat. Since I didn't want to heat the pool past a certain point and I didn't want to have to manually control it, I needed a contoller. I was already  toying with my first Arduino (a Uno) so it was an obvious choice.

   I began to research temperature sensors and ran across the "Differduino" project. All I had to do was modify the hell out of it and I had my basic controller! I added an ethernet shield so that I could send data to an external site now known as Xively.

   The controller monitors the pool temperature and the panel temperature and turns the circulation pump on and off on a differential provided the pool temperature is below the setpoint. This part of the project has not changed, much....



The evolution begins...

   Then one day, I stumbled across the "Desert Home" page. Don't remember what I was looking for but this crazy fool was doing things I had thought about but hadn't figured out how to do practically. As he had put up all of his code and wanted people to see it and benefit from it, I decided to do so. Dave was (and still is) very helpful in getting things up and running and I soon had a Raspberry Pi to play with.

   The Ethernet interface on the pool controller was replaced with an XBEE radio and the data was being magically sent through the air to the RPI where it was being stored to do with as I chose. This led to a Web interface that can be seen at myeager.no-ip.biz that allowed me to see the data in real time. I added a temperature and humidity sensor so I knew what was going on outside. Here's a picture of the controller about this time..

The house controller...

   The heart of the project has actually shifted from the pool controller to the house controller. This creation started out as Dave's, 100%! As it was written in Python, it was a learning curve. My programming experience was mostly C++. As I came to figure out more of Dave's code, it became more natural to read and much easier to learn from. Once again, Dave would prod me along rather than hand me the answers. Kudos to Dave for that...

   As I was collecting more data from the pool controller and have built a few other devices as well, data was getting tedious to process. I ran across a library called ArduinoJSON and spent a weekend in the woods figuring out how it best suited my needs. I'd like to think I turned Dave on to that little treasure but he may have been exploring JSON already. If you haven't looked at JSON, I suggest doing so. I learned quickly that only so much will fit on an Uno...

Reboot!!!

   I got hold of a Mega 2560 and loaded the code to it. I had a ton of memory now (and 3 extra hardware serial ports). The SoftwareSerial library I was using could now go away but I didn't do that until I realized that it didn't work well with two way communication on the Mega. I added and GPS module I scavenged from Streets and Trips. Now I had Dave's house clock as well so I could set up timers for the pool. A Timezone library even correctly handled the time change twice a year. This has come in handy on a few other devices. I intend to add a pH probe to monitor the pool and an acid pump to keep the pH at a certain point but I haven't done it yet. I have added two way communication with the pool controller and several things are now adjustable from the Web interface.


   The pool controller and all other devices I've built so far operate entirely on their own and continue to do their thing even if the house controller is offline. I recently had to replace my pool pump motor and chose to get a Hayward variable speed unit instead. Best decision possible in my opinion. Much quieter and the energy efficiency is a big benefit.  Electric bill went down almost $60! I'm now using the timer that I programmed to run the pool pump to run the chlorine generator and the timers on the pump to vary the pump speed. I let it run at a low speed overnight instead of turning it off.

   The house controller also now incorporates ZWAVE and controls several lights and doors. It's function grows almost every time I look at it. The power of these inexpensive machines is impressive.

What's next?

   The pH monitor and acid pump are still on the list. I need to get my panels finished up, right now I'm operating on just one, and I need to get them permanently mounted. I'm working on replacing my DHW controller with one that integrates into this system and I've got an LED sign that displays weather data and pool information all over the XBEE network.  I'm also looking into adding an FPH system from Hotspot. I'll do my own controller rather than using theirs but between it and the solar, I should be able to swim almost year round. We don't get much of a winter....

This is Dave again. Nice job Mike, and thanks for chiming in. See people, you're not the only one that does this kind of thing.

Have fun.

Monday, July 28, 2014

Controlling the Hayward Ecostar Pump

Quite some time ago I got fed up with the huge amount of power a pool pump uses and got one of those cool permanent magnet, variable speed pumps.  It's really is cool, it can run from a few RPM up to way over 3000.  All of the speeds use less power than a conventional motor and you can actually circulate water with 200 watts of power usage.  This is what they look like:

There's three pieces to these things, the controller, the actual motor and the filter-impeller.  Hayward calls the controller the 'drive'; I don't have any idea why except maybe because they make pool controllers and they don't want customers to get confused.  The drive is this part here:


Yes, I stole the image off the web.  It was too hot to go out and take my own picture.  The drive can be separated from the motor and remotely set up.  This makes it convenient for ease of use, and nice if you have the rest of the stuff inside an enclosure.

The drive has its own controls, but it can also be controlled by my Goldline P4 controller.  The problem is that the darn controller only supports two speeds: low and high.  Sure, I can set the speed for each of them to anything I want, but I only have two speeds for my variable speed motor.  That has always ticked me off.  Hayward decided that I only get two speeds for the motor that are easily done.  To do anything else I have to futz around with settings each time.  Really ??

A few weeks ago one of my readers asked if I had ever pursued breaking the protocol between my controller and the drive.  I hadn't, but it sounded like a cool project to take on.  So, armed with my motor, his motor, his skills, my lack of skills, we embarked upon a project to get control of this motor.  Naturally, there is zero documentation on the protocol, but we had some hints.

It's RS485 half duplex because it works on the same line as the other controls for the P4.  It's 19.2Kbaud for the same reason.  That meant that we could set up monitors and code to listen to the conversations between the devices as we changed things and might stand a chance to get a hint on how to control it.

Guess what?  After a few false starts, we beat it.  We can now control the motor and change the speed to anything we want to.  It turns out the protocol is relatively simple; you send a command to the motor periodically telling it the speed you want it to run.  If you stop sending, the motor stops.  If you send a speed of zero, the motor stops.  If you send a specific speed, the motor runs at that speed.

The motor protocol works in percentage.  If you send 100%, it will run at the top speed.  If you send 0%, it stops.  You can choose any percentage in between and the motor will go to that speed.  You can't send 1000 RPM, you have to send a percentage instead.  Still, it works quite nicely.  The protocol looks like this:

Off     0x10, 0x02, 0x0C, 0x01, 0x00, 0x00, 0x00, 0x1F, 0x10, 0x03

100% 0x10, 0x02, 0x0C, 0x01, 0x00, 0x64, 0x00, 0x83, 0x10, 0x03

45%   0x10, 0x02, 0x0C, 0x01, 0x00, 0x2D, 0x00, 0x4C, 0x10, 0x03

The 0x10, 0x02 is the start of packet indicator.  The 0x0C, 0x01 means from device 1 to device 12.  The 0x00 is just a zero, never saw it become anything else.  the 0x00 or 0x64 or 0x2D is the percentage in hex (0, 100, 45) the next two bytes are the checksum and the 0x10, 0x03 is the end of packet indicator.  So, to change the speed, change the percentage, recalculate the checksum and send it.  The motor will change speed.  You have to send this at half second intervals to keep the motor running.  Actually, I've gone up to a second and a half and still had the motor run, but better safe than sorry.

The checksum is a matter of adding the byte values and sticking them in place.  In the first packet above, 10 + 2 + C + 1 + zeros = 1F.  Remember, it's hexadecimal and the checksum is two bytes long, so it's 0x00, 0x1F.  Similarly, the 100% packet is 10 + 2 + C + 1 + 0 + 64 = 0x00, 0x83.  The last two bytes, 0x10, 0x03 are not used in the checksum.

Each of these control packets is responded to immediately by the drive unit with something like:

0x10 0x02 0x00 0x0C 0x00 0x00 0x2D 0x02 0x36 0x00 0x83 0x10 0x03

It starts off with the begin packet bytes of 0x01, 0x02.  Then 0x00 , 0x0c which would mean, from device 12 to device 0.  Strange that it would reply to device zero when device 1 sent the command, but ??  Byte 6 of the packet is the speed, in the packet above it is byte 6 counting from the first byte being index [0].  Bytes 7 & 8 are the power and they threw me for a loop. They’re in nibble form of the actual speed if you read it out loud. For example:

0x10 0x02 0x00 0x0C 0x00 0x00 0x62 0x17 0x81 0x01 0x18 0x10 0x03

Byte 6 is 0x62, for 98 percent and bytes 7 & 8 are 0x17 0x81, this reads as one, seven, eight, one or a power reading of 1,781 watts. Is that weird or what?   I tried big endian, little endian, hex, some obscure rotations I’ve seen in the past and other stuff until I just happened to read it out loud and then look at the motor. Shocked is probably the correct term for my reaction.

Edit: I had a face-slap moment on this a couple of months after I posted here. The number is simple binary coded decimal; the reason I missed it is because I haven't seen BCD used since the late '70s of last century. I gues it's still used somewhat, but I completely missed it.

So, to calculate the speed: Serial.print(((long)3450 * buffer[6]) / 100); seems to work just fine. It’s a tiny bit off from the actual motor reading on its LCD sometimes, but I think that’s because of the calculations on the two devices being a little different. The power is right on for every instance I have tried.

The code for something like this was relatively simple to put together, but it gets really complex when you add in whatever method you use to control it.  I have an XBee network that I send commands through, but most folk out there want wireless ethernet or wires.  It can be controlled from a board as simple as an Arduino (like me and my colleague), or any other device that can either provide RS485 or handle an adapter to convert TTL serial.  My setup is described here <link>, I just added code to it to handle the motor separately and turned off control of the motor in the Goldline P4 I have.

The physical connection is with two wires from your RS485 device to the motor drive unit on the communications port.  You may have to use shielded cable and connect the ground up as well; these motors are extremely noisy on both the power line and RF near the unit.  So, grab some of that shielded CAT5 cable and go for it.


I cut this right out of the installation manual for the Ecostar motor.  Pin 7 is the plus (+) side of the RS485 link and they clearly label the comm connection.  This image also shows how the connection is made to a pool controller like my P4.

If you do this to control your motor, there is something that will help you.  When you send something to the motor that it can't understand, it locks up the drive unit.  I sent many a packet that was constructed incorrectly and the drive would go nuts and not respond after that.  You have to actually power down the motor and then turn it back on to continue.  Not the most robust software in the world.

There is another protocol here that I will research in more depth later.  Not only is the 'drive' controlled by the pool controller, the motor itself is controlled by the 'drive'.  Yes, the motor itself has a protocol all it's own that the drive supplies.  That's why you can separate the drive from the motor and mount it somewhere else with some wires running between.  This is also RS485 and it runs at 1200 baud.  It has a different checksum scheme and there are bits in there that have to be figured out.  We haven't made much progress on this protocol, but we can make the motor turn on without the drive unit even being there.  This may come in handy at some point in the future when the drive dies and the warranty has expired.  Those drives cost almost as much as the entire assembly ... jerks.

There you go folk, you now have control of that expensive motor Hayward has been keeping secret. Plus, for people like me, you can monitor the power usage real time to keep energy costs down.  You won't be limited by some arrangement of relays or the two speeds Hayward saw fit to allow.

That's two of their secret protocols I've put on the web now <link>; maybe I should think about hiding for a while...

Saturday, August 24, 2013

Waterco Multicyclone Filter for My Swimming Pool part 2

Part one of this is here <link>.

It's been a week with the new pre-filter on my pool and I can actually say that I'm satisfied.  No leaks and it works as advertised; nice device.  Here's what it accumulated in the reservoir:

Yes, this is a weeks worth of the sand and stuff that would have been starting to plug up my cartridge filter already.

The white layer on top is the calcium carbonate and calcium sulfate that is created by my salt generator.  That's the stuff they call 'snow' that accumulates in the corners of the pool and annoys the heck out of me.  This filter catches that stuff and keeps it from getting into the cartridges...nice.

Now I feel comfortable recommending this device for other folks to use on their pools.  I don't have enough experience with how much it will save me in the longer term, but if it keeps me from having to clean the cartridges every couple of weeks in the stormy season, it's worth every penny I paid.  Cleaning the filters tears them up over time forcing me to have to buy new ones.  At almost 90 dollars a cartridge and having 4 of them in the filter, it adds up in a real hurry.  Just saving me just one purchase of replacement cartridges will pay for the cyclone filter.

The fact that it's capable of filtering out the 'snow' gives me an idea.  If I put another one in the path of the chlorine generator, it should remove the snow before it gets to the pool to annoy me.  This would also lower the calcium level in the water because I would be constantly removing it after the generator formed it into the snow.  That would be good if it didn't lower the calcium level enough to cause leaching from the walls of the pool.  I don't have enough money to experiment with that right now, but maybe in a year or so I could get another one and install it to remove that stuff.  Heck, two of them might be enough to get rid of the cartridge filter entirely, or scale it back to a much smaller device that doesn't cost so much to maintain.  I have to worry about flow rate though, smaller filters may not have enough flow.

At any rate, if you live in a dirty area and have to clean your filter unreasonably often, this is a good device that just may relieve some of the burden and expense.  I really like it.

Edit: 7/12/2015 :

It's been a while now that I've had this in operation and a reader asked me for an update. First, there has been exactly zero problems with the construction or operation of the device. However, last year I had a flood and the pool filled up with muddy water that washed in. This completely filled the Waterco filter and the cartridge filter I have down line from it. This pushed the water pressure up so high it blew the fitting on the top of the filter off. That, in turn, stripped the threads so the union fitting wouldn't hold unless the pressure was less than 15 pounds.

I called Waterco and they helped me get the fitting I needed, and after replacing it, all was well again. I still get a nice pile of debris in the bottom of the filter from the sand and such that blows into the pool, but the stuff that floats cannot be caught by the filter. It's only for sand and such, so I still have to clean the cartridges.

So, for me, it's a welcome addition to the pool and cuts down on the number of times I have to clean the cartridge filter (a lot). It's still as easy to clean out as it was on day 5 or so when I got to try it the first time. It survived being totally filled with fine clay from the flood, and only suffered because I went way past the specs in pressure pumping muddy water around.

Therefore, if the trash you're trying to get rid of is mostly heavy inorganic material, it should do a great job for you. If the trash is mostly light weight, floating organics, you'll get less obvious results.

Mechanically, it's great, just don't expect it to handle flood water that is filled with sand and clay.

Saturday, August 17, 2013

Waterco Multicyclone Filter for My Swimming Pool

I have had nothing but trouble with my pool since about a month after it was installed.  Sure, it's fun to laze about in it on the hot summer days; it makes desert life bearable, but darn it's hard to take care of.  I have a salt water pool as mentioned several times in the tab above labeled "Swimming Pool" <link> and that generates its own chlorine, but that creates "Ph creep", which I deal with by pumping acid into the pool at regular intervals using  an Acid Pump <link> that I created.  However, there's still problems.

See, I have a cartridge filter instead of the more traditional diatomaceous or sand filter.  These things require cleaning and replacement.  Cleaning can be as often as every couple of weeks in dirty weather or a few months when there's no sand storms, bug migration, tree blooms, or dirty dogs to mess it up.  However, this year I've been pestered by caterpillars, crickets, beetles, frogs, sandstorms, and tree blooms such that I've had to clean the cartridges several times.  Add to that the calcium carbonate snow that accumulates due to the chlorine generation and summer has been a pain in the pool department.

I decided to get a pre-filter to get rid of some of the crap to keep the work load down.  I got one of these:
This is the Waterco Multicyclone 16.  Basically, it's a Dyson vacuum cleaner that works for your pool.  It goes after the motor and before the big pool filter and removes most of the crap before it gets into the filter.  Theoretically it should keep me from having to clean the cartridges as often, maybe as little as once a year.

Frankly, I'm skeptical.  However, after looking at the various videos and hunting around for honest reviews of the thing (I couldn't find one), I took the plunge and bought one.  I just installed it today, so I don't have a history to call on, but I can say that it wasn't hard to install and looks like it's doing what they say it does.  Here's the installation:

Yes, it's tall.  I could have mounted it closer to the pump, but then I would have had to get a new drain faucet and it would have only been six inches shorter.  I used two 45 degree fittings because 90 degree fittings impede flow and I wanted all the flow I could get.  The idea of the pump is that the water goes up through a pipe in the middle, swirls around through 16 cyclone fixtures inside where centrifugal force removes debris allowing it to fall to the bottom of the clear area where it can be discharged using the red valve at the bottom.  The cleaner water then goes to the cartridge pump and gets 'polished' before discharging into the pool.

I used the glue technique I learned when I was working on the solar heater.  I found out that to get the absolute best seal, forget the normal PVC cement and purple primer, go directly to the blue 'Red Hot' cement and forget the primer.  That little trick took me almost a week and calls to the pipe manufacturer to discover.  Here's a picture of the filter in action:
No leaks !!  You really can't tell from this picture that there is water in there, but I expected it to be swirling around; it didn't.  The cyclone action is all in the top section and the relatively serene clear bowl at the bottom is just clear water.  At least it was clear at first.  Over the next 20 minutes particles started to appear in the bowl, then a bug, then some of the white snow created by the chlorinator.  After about 20 minutes, I purged it by opening the valve and everything that had accumulated shot out the pipe to the side.  So far, it is doing exactly what they claimed.  Just before I purged it, I took this picture of the bowl:
See the accumulation at the bottom and in the discharge pipe?  That's after 20 minutes !  Yes, that's the kind and amount of crap that is getting into the cartridge filters and clogging them up.  I suspect I'll be purging this thing every couple of days during the dirty season.  That is after the new wears off; right now I purge it every time I go out there because it's cool to watch the debris shoot out.

In all honesty, I can't recommend this device for other people yet, I haven't had enough experience with it yet.  However, if the accumulation of particulates is any indication, this thing works.  I'm going to watch it like a hawk for the next week or so (naturally, it's new and cool) then determine if it is actually doing the job it's advertised to do.  I'll hook up the vacuum head and clean the pool and see what happens when I flood it with the stuff that hangs around on the bottom of a pool in the desert; that should be a good test.

At any rate, stay tuned, I should know more in a few weeks.

Edit: I've had some experience with it now, more information here <link>

Wednesday, June 26, 2013

Back to the Swimming Pool Acid Pump

A couple of folk have sent me notes pointing out that I have spent more money and time on the Acid Pump <link> than is justified.  They're right.  Totally, absolutely right.  That doesn't change the fact that I'm going to continue this project until I finally get a nice working device that maintains the Ph of my pool with minimal human intervention.  Yes, it's cost me more time than just pouring acid from a jug into the pool every few days and more money than many, many gallon jugs of acid.  But that's not the point to automating a house.

The latest problem is a failed check valve.  Originally, I had a problem finding a check valve that was acid resistant and had a pipe fitting on one end and a tubing barb on the other.  I finally got one from the people that supply the pump I'm currently using.  It has been in service for the last year and did a good job.  However, when I replaced the tubing as part of my twice yearly maintenance, the valve stuck and wouldn't open.  I had a spare and installed it to get things going but I wanted to know what went wrong.  This is the valve I'm talking about:

 Notice that the two ends seem to be removable.  Turns out they are.  That's how this manufacturer designed maximum versatility into the device.  You can specify the end pieces to any configuration you need (within reason).  That way special purpose valves can easily be created.  So, being the curious monkey I am, I took it apart to see what was wrong:
Notice it's a basic ball valve complete with a spring that is a simple effective design.  What happened in this case was the black seal failed in the acid and the black debris in the picture is parts of it that plugged up the ball mechanism.  The material is Viton, which has a high resistance to acid, but apparently, not enough for prolonged exposure in the hot desert sun.  Not a big problem, just keep a couple on hand and replace them each year to be sure they hold up over time. I can live with that since every other valve I tried died in less than a month.

The problem came when I tried to get a replacement.  There were lots of them out there in the marketplace, but suppliers wanted between $17 and $50 for these little plastic parts.  Frankly, that ridiculous.  I called the manufacturer and asked for advice.  A nice lady there found me the industrial number of the same device and a supplier of their valves in Colorado that I could call.  I called him and ordered six of them because that's all he had in stock.  The cost was $8.60 each, and the shipping was around $10.  Quite a savings going the industrial part route instead of a swimming pool repair part.  Especially since the swimming pool suppliers wanted from $15 to $18 for shipping and handling to get them to me.

Basically, I got six of the valves for the price of one of them as a swimming pool repair part.  That makes treating it as an expendable part reasonable.  So, now each year I replace the tubing with tubing I get from Home Depot, a piece of Tygon tubing that I order in five foot lengths, and a check valve I buy from this supplier.  Sure, that's a bunch of stuff to remember, but just write down in a book somewhere the part numbers and suppliers and there shouldn't be any problem, and I won't have to pay more than twice what it's worth.

When I get the new ones in I may sacrifice one of them to see what the Viton seal looks like and how it fits in place.  It may be possible to get a Viton seal and just replace it as a maintenance part.  There are places out there that make Viton and even Teflon seals and washers; it could be possible to build up a replacement that will last even longer, or be easily repaired.

I'm starting to understand why so many people buy from Chinese suppliers.

Friday, April 19, 2013

Pool Controller 2 for Goldline P4

No, I didn't take a month off; I've been off on other projects that aren't technical or related to power.  Stuff like fixing a chip in my motorcycle paint, equipping toy hauler to tow it, and spring pruning.  But, I started having some trouble with the transmissions from my pool controller.  I have a whole section on my swimming pool page <link> where I describe how I decoded the Goldline protocol and built a controller for my swimming pool.  Yes, there are remote controllers out there that allow you to change settings and such from the house, but mine hooks into the House Controller and allows me to change things from the internet.  Yes, I can turn my pool motor on from anywhere.

However, as I described, there are some problems.  First, it's based on an Arduino Uno which only has one serial port.  I need at least two, one for the XBee to transmit status and the other for the RS485 link to the Goldline pool controller.  It would be nice to have another one for debugging and testing commands as well.   I used SoftwareSerial code to handle the extra port needs, but there's the occasional over run and I'm really running the little Arduino on the edge with two high speed ports cranking away all the time.  Guess what, I have a Mega2560 that isn't doing anything.

So, I pulled the device off the fence and rebuilt it essentially from scratch.  I put the XBee on Serial3, the pool controller on Serial2, and use the regular Serial as my command and debugging port.  This is all possible because the watchdog timer and boot loader problems have been fixed as I detailed in several posts, and I discovered a new enclosure that I have already used on my Garage Controller <link> that gives me plenty of room and easy access.

Since it was going on a Mega2560, there would have to be software changes.  I decided to take the time to incorporate all that I've learned over the last couple of years and update the XBee and timer handling.  The device now uses the Arduino XBee library and is in API mode so the packets are handled well.  It knows what time it is by catching the House Clock <link> transmission, so it's possible to build in specific time of day alarms or do special things on the weekends.  There's room in memory and in the enclosure to incorporate the Acid Pump timer as well, freeing up a device.  I will also be able to hook in the float I installed in my septic tank so it can alarm when the tank filter gets clogged <link>.  Of course, it will be more than a Pool controller then, but what's in a name?  Besides, a septic tank is sort of a pool ... isn't it?

Here's a picture of the device after I mounted the boards into the enclosure:


And here it is on the fence working:

Here's the devices on that side of the house:

No, I didn't mount it crooked, the fence goes down hill at that point.

Naturally, I'll post the code on the Swimming Pool page, but I'll get to that in a day or two because I have to change a lot of stuff to illustrate it the way I want to.

Why aren't more people doing this kind of thing around their house?

Edit:  I had to turn off comments on this page...  Darn bots from all over were flooding this particular page with crap.  Don't ever have a page with a title line that has 'Gold" in it.

Thursday, August 2, 2012

Swimming Pool Controller

I have an entire page devoted to my swimming pool controller and other devices related to the pool here.  The device works pretty well, but since there are two protocols, (Goldline and my own) and they are real devices, there have been some annoying problems over the period I have been using it.  The problems all stem from the fact that there is no 'on' or 'off' command for the various functions.  They all work like a garage door, you push a button and something changes state.  Push a button, the valve opens, push it again, it closes.  This makes things like turning off the pool light a bit of a problem if you don't know if it is already on.  About a year ago a nice person gave me the command string he was using to turn his pool off, unfortunately it didn't work for my controller, but when I tried it I got an idea I should have come up with a year ago.  Simply look to see if the light is already off, and don't do anything if it is.

Obviously this was too simple an approach for me to come up with when I was developing the controller.  I was getting into loops where I would turn on the light, the delay before the various devices recorded that the light was on was erratic (real devices, remember) and I would issue the command again, thinking it got lost somewhere.  That would make the light turn on, wait a few seconds, turn off, wait a few seconds, turn on, etc.  Annoying at times.  Most of the time everything worked perfectly, but when it got into one of these loops, it might take 10 minutes or so to get out of it.  So simple code like: if (light already on) don't do anything, should fix the problem

Guess what?  It did.

I modified all my pool commands to work this way and the pool controller is very reliable now.  I got the idea when I started working on a controller for my garage doors.  I hate getting a few miles from home and suddenly starting to worry that I left the garage door open.  There is little risk of theft out here in the desert, but I hate having a squirrel move into the garage and a dozen or two cactus wrens deciding it's a nice place to live.  I had a squirrel cause some damage once and I don't want to repeat that.  So, I need to know if the door is open and close it.  I came up with a design where I'll put a magnetic switch on the door and that way I'll know when the door is open and can close it from far, far away.  This made me realize that I have the status of the various controls on the pool already, why not just use them.

There was also the problem of ambition, it worked mostly OK, why fix it?  This lethargy went away when my new, variable speed, permanent magnet, super motor died.  Yes, it died.  It developed some kind of fault and declared, "Emergency Stop in Effect."  Nice informative message.  I called Hayward and they said they'd have to send out a repairman.  The first comment out of my mouth was, "How much is that going to cost?"

"Nothing." was the reply.

Sure enough a nice guy came out, looked the problem over, and REPLACED THE ENTIRE PUMP.  Yes, I got an entirely new pump with zero hours on it as a warranty replacement.  How cool is that?  I hooked my controller up and was annoyed immediately by the toggle action.  That's how I came up with the idea and implementation.  While I was making the changes to the code, a couple of bugs turned up that I didn't encounter before and they got fixed as well; nice side benefit.

I'm waiting for parts to come in for the garage project, but thinking about it, there's a few lessons to learn here.  1. Never give up on an idea, let it percolate a while and a solution might appear.  2.  Don't be afraid to call the manufacturer for advice; you may get a really good response.  3.  some other project may suggest a better way to do something; don't ignore it.  4.  DIY projects are never really done, they just settle down for a while.

Saturday, July 14, 2012

Acid Pump - Back in Service.....Again

A few posts back I declared that I was done trying to make the Hanna Dosing Pump work.  That was a fact, I've just had too many problems with this device and am totally tired of messing with it.  I did some more research and turned up another alternative.  Since there are only two types of pumps that are used for this kind of thing, peristaltic and diaphragm, and diaphragm had too many problems, I went for a peristaltic device.  I found this one that somehow avoided my research the first time:

This is a Rola-Chem RC-25 and comes complete with everything in the picture.  It can handle either chlorine or muriatic acid in the concentrations used for swimming pools.  I normally try to use 30+ percent muriatic acid in my arrangements, so this thing should do the job just fine.  Notice that they provide a brass fitting for the pool injection?  They explain this by illustrating that the tubing should be pushed way down into the pipe so the water flow from the pool pump should dilute and carry it away from the fitting.  This might just work since the flow rate of pool water is many gallons a minute and the pipe is two inches (usually) in diameter, the acid should dilute and move away quickly.

One of the major problems with the diaphragm pump was the force of the fluid motion.  The diaphragm was solenoid operated and really shoved the fluid out hard.  This wouldn't be a problem except for the operation of the various check valves: they were pounded by the movement of the water and that caused the diaphragms in the valves to wear very quickly.  I discovered this by ripping apart several of the valves after they had failed.  There were distinct wear marks on the internal diaphragms that would leak fluids both directions.  This pump produces a relatively gentle flow that will build up to enough pressure to overcome the pools flow and its own check valve quite nicely.

This pump is made of plastic on the entire exterior.  I couldn't find any place that would dissolve in the muratic, so it should stand up better than the last attempt.  It comes with several feet of vinyl tubing to hook it up with.  This led me to a discovery that I wish I had run across earlier: Vinyl is actually PVC.  Yes, vinyl tubing (if it really is vinyl) should stand up nicely to muriatic acid.  The resistance of PVC is lower than other materials, but the tubing will wear out due to exposure in about a year and need to be replaced anyway, so that shouldn't matter.  Also, vinyl tubing is cheap and easy to get; just go the Home Depot, Lowes, or Ace and pick some up.  The pump also uses standard size tubing and fittings that you can get most anywhere; just avoid nylon fittings, look for pvc or vinyl and you should be fine.  The pump tube (the one inside) comes in two materials: Tygon and Norprene.  Tygon is resistant to most chemicals and is used a lot in the food industry.  Norprene is actually a form of Tygon that is specifically formulated to be UV resistant, flexible, and extremely durable.  Rola-Chem recommends the black Norprene for muriatic and the clear Tygon for HCL.  This is mostly because the acid is extremely corrosive and a little leak will mess things up over time; best to be safe.

So, I modified the box I had on the wall holding the Hanna pump and installed the Rola-Chem pump.  This is after running the Rola-Chem into a bucket for a couple of weeks to be sure it worked and I understood how to use it.  I discovered that the pump puts out about a cup (8 ounces, 225ml) every 8 minutes so I'll start out at 10 minutes and see how the acid level holds up in the pool, adjusting as necessary.  I'm not using the timer control on the pump because I want to control the device from my House Controller; I just turned the switch to 'On' and hooked it up.  It was relatively easy since I already had an injection point I installed for the previous pump and the bucket with level sensing has been working fine.  I ran it for a couple of days on water to be sure it didn't leak and the timer controls were working correctly.  Today, it was filled with acid and put into service.  I was surprised how well it worked.  This little device self primes in about a minute and the just rolls away moving the fluid through the tubes.  Yes, I'll have to replace the pump tube twice a year and the other tubing every winter, but that's not a big deal at all.  The internal tube costs about U$20 and the other tubing is less than that (remember, you can get it at Home Depot).  It also needs lubrication periodically; I checked the label on the O-ring lube I use and it should work great.  Just go out every month or so and put some in and it should be fine.  I'll look at everything each time I clean the filters to be sure it's standing up to use.  Here's a picture of the installation:
This pump was larger than the Hanna, so I had to enlarge the box (thank goodness for waterproof glue), but it should work nicely to shelter it from the hot sun and little rain that falls here.  Notice the bottom is open?  This worked well for the last several months.  If it leaks, it doesn't set in the box and corrode things and it gets plenty of ventilation to keep things dry.  There is the occasional spider though.  Here is the injection point:
Notice the check valve?  It's the gray thing that the clear vinyl tubing slips onto.  This check valve was a pleasant surprise also.  It is acid resistant and has a Hastelloy spring inside.  Hastelloy is one of the few metals that is resistant to muriatic acid and hard to find in devices that normal people use.  I chased down the manufacturer and it is available in several configurations from SMC, but they require a minimum U$100 order.  I may pursue getting some of these to keep around if this works out. I didn't use the brass fitting that was supplied with the pump; I just don't trust brass and acid in proximity to each other.  I've had too any bad things happen with that combination.  

I haven't dressed the tubing or tied it down yet.  I want to try it for a week or so first to see how things work out before making it more permanent.  Also, I need to make sure it is easy to change periodically for maintenance.  I don't have clamps all over the place because the peristaltic pump produces such gentle flow that it doesn't look like I need it.  With the heat here and various weather conditions that may cause problems, I will have to watch it over time to see and learn more.  So, right now, the installation looks like this:
I haven't removed all the old tubing and will have to dress stuff up so I don't stumble over it when I go in there, but it works.


Monday, June 11, 2012

Acid Pump - Fine, I Give Up.

I've been working on an Acid Pump system to automate the injection of acid into my swimming pool.  There are a ton of details on this effort on my Swimming Pool page.  Well, it failed again today.  After a few months of perfect operation, all four of the check valves have failed and the pump itself is not priming at all anymore.  I replaced the check valves as they failed and now, the pump diaphragm itself doesn't work any more.  So, either I go through the process of getting the pump replaced again or just give up.

I give up.

That doesn't mean I give up on the idea, just that I'm finally going to give up on the Hanna Dosing Pump.  This darn thing isn't made from material that can withstand the chemicals it is supposed to be designed to handle and does little but fail annoyingly often.  Although it did work for a few months without a problem, I noticed that the stainless steel screws that hold the pump head on are starting to corrode, the steel around the rate control is starting to corrode as well.  The environment is just to harsh for this pump to work over a prolonged period.  Yes, I could do more work to isolate it from the environment, but what the heck?  They advertise a pump that is supposed to work with extremely harsh chemicals and it should do just that.

As my Accounting 101 professor told me a long time ago, there is such a thing as "sunk cost."  That's where you finally realize that putting more time, research, and money into something just isn't worth it and you kiss the previous effort goodbye.  Smack.  Goodbye.  Now, I'm back looking at peristaltic pumps.  I didn't like them because the devices can have a failure in the flexible tubing that the rollers use to create the pumping action. This would result in a bunch of acid being released into the pump head destroying that whole section of the device.  That's still a concern, but with a check valve on the pool side where the pressure is and a little help from gravity to allow the acid to drain back into the reservoir when a breech happens, maybe I can get this to work.  The big name in these devices is Stenner, but darn, they are really expensive.  There are other devices, some are available on ebay, mostly for use in aquariums.  I've got some more stuff to learn.

At least the knowledge I picked up on materials and environment can help me tell if something is actually going to work.  I'm going to dismantle the check valves I tried using to see what the heck happened to them.  They are rated way beyond the usage I put them to and worked real well for a short period; there must be something going on I don't understand....yet.  There were four of them in the flow path and they failed differently.  One would allow flow both ways; another plugged up and wouldn't flow at all; two of them would allow a little reverse flow; obviously, there is something odd here.  The problem is that they are small and sealed really well so dismantling them will be a pain.  I have a lead on a check valve that has a barbed fitting on one end and 1/4 inch MPT fitting on the other; that would be perfect for this application, if its construction can withstand the acid.  I can't get enough information on it though so I may have to buy one of the darned things to see how it's made.

Sigh.

Thursday, March 29, 2012

Acid Pump - Running Again

Well, it's installed.  I got the clamps in and tried them out.  Everything was fine and I put it all together and installed it.  Naturally, I had to build a new enclosure for it and there were a few problems installing it, but it's working now.  Here's the device on the fence:


I made the enclosure from some plywood I had in the garage and painted it with a thick layer of latex paint to help keep the wood from being attacked.  I may tie down the cables and tubing after it runs a while.  There's no  bottom on it because I wanted plenty of ventilation for later in the summer, also it will help dry things out if something does leak somwhere.  Here's how I hooked it into the pool plumbing:


It's just too bad I couldn't find check valve in Kynar that had threaded fittings; that would make it a really clean installation.  Everything works and doesn't leak; now I just have to watch it a few days before I trust it.

When I pulled the foot valve out of the acid to put in a new check valve, the nut that held the tubing had completely dissolved.  The tubing was still attached, but the nut was just gone.  This validated my diagnosis that the nuts were losing grip because they were dissolving in the acid.  This is really irritating because the pump is advertised specifically for chemical dosing.  It seems that the entire problem set I've been trying to overcome would never have happened if they had used high density polyethylene nuts to hold it together.  Since the nuts are custom to their fittings, they can't be second sourced to eliminate the problem either.

Here's the entire installation in place.  To review, the remote control timer that is on my XBee network is on the left in the gray box and the pump is in the new white box; they are both attached to the fence around my pool equipment.


Now I hope I don't have to mess with it for months except refilling the tank.

Update:  I listed the parts and their numbers at the end of my general write up on the injection system here.

Saturday, March 24, 2012

Acid Pump - Getting There Slowly

I got the fittings I ordered and tried them out.  They work very nicely and seem to be just the thing for this particular application.  Here's a picture of the construction so far:
There's a bit of illusion here.  The pipe and elbows are 1/4 inch, not huge like the picture seems to show.  I switched to 3/16 inch barbed Kynar check valves too.  Yes, I know I said they would restrict flow, and they do, however they pass enough water to work OK.  I'll just have to run the pump a little longer.  I have the compression fittings in place and they seal it real nice.

Be sure to put Teflon tape on all the joints.  If you don't the plastic binds up and causes leaks; the Teflon does a great job of lubricating the fittings and sealing any leaks.  I've already tested the Teflon for acid resistance back when I was working on the level indicator.  There are a few things to note about putting this together though.  As I mentioned before, the tubing is a tiny bit large to work with the fittings without doing something.  After destroying a couple of feet of tubing trying to get it to work, I came up with a simple procedure.  First, take the compression fitting apart:
The main body piece has a tapered insert that you should bottom the tubing into, but it won't fit so, break out the heat gun and soften the plastic.

Once the plastic is soft, shove it into the body fitting all the way to the bottom. 

Let it cool and  take the body section off and put the other pieces in place.
Notice the positions of the pieces; this is important.  The one nearest the nut is compressed by the nut and grabs the tubing, the other one slides into the body completing the seal.  So, now just shove the tubing into the body, work the compression nut down and thread it on.
This method has given me an easy to make connection that doesn't leak.  I did this for both sides of the pump and will have to do it for the foot valve and injection valve when I install it.

Now, the only thing holding me up is a set of clamps.  The 3/16 inch check valves need a smaller clamp than I have and I have to wait for them to come in.  The seal on the barb fitting is quite good, but there's a lot of vibration and temperature extremes to deal with and I want clamps on the fittings.  The problem is that the clamps are acetate, and they will react to the HCl that will be flowing.  That's OK for everything except the foot valve, fortunately, that's on the suction side and under the level of the HCl, so if it leaks some, I don't care.  

I hope that I can get this installed and go back to electronic projects for a while soon.  I want a couple of timers and a way of telling the garage door is closed from way far away, but I've been stuck with other things for months now.

Monday, March 19, 2012

Acid Pump - Continuing Drama

I'm still working on the darn acid pump.  I don't mess with this full time obviously, but I keep getting back to it. The latest is that I'm not entirely happy with the new fittings and setup.  The tubing is 5/16 inch OD and 3/16 inch ID; this is an odd size, and of course, doesn't fit the 1/4 ID barb fittings.  3/16 inch barb fitting have too small a hole for fluid to pass easily and reduces the volume too much.  It is possible to expand the tubing, but thick wall polyethylene tubing is tough to work with.  I heated several little pieces of tubing and experimented until I could actually put one on the fitting, but it was a trial and error process.  When I tried the pump out, it didn't leak, but the vibration worries me.  Here is the setup as I tested it:

Notice the clamps I used to hold the tubing and the 3/8 inch MPT fittings?  The Kynar check valves worked great and didn't have any back leakage at all.  They have Viton diaphragms that shouldn't have any trouble at all with acid.  They will wear out over time though so I'll have to replace them periodically.  

My concern is that the vibration shakes the tubing and it could leak over time since it gets hard and soft as the temperature changes and could shake loose.  Now, I'm looking at some compression fittings for plastic tubing.  The problem is that most compression fittings are Nylon, which will dissolve, or have a metal insert, which will also dissolve.  I found some compression fittings that should work and even have configurations that may work for me:
This one only comes in 1/4 inch MPT, so I need reducers and adapters to fit it to the pump and direct the tubing.  I have an assortment of 1/4 inch MPT fittings, nipples, and elbows on their way to accomplish this.  These compression fittings are very different from the ones on the pump originally; they compress from the outside and have a built-in compression ring.  The tubing fits much farther inside as well, and they are supposed to handle quite a bit more pressure than I will be putting on them.  Oh, did I mention that they are solid molded Kynar.  That'll show that stupid acid who's boss.

I still have to use tubing barbs to connect the kynar check valves, but I'll address that problem (if necessary) when the plumbing parts arrive.  Strange, I never even knew there was such a thing as 1/4 MPT fittings.  I'm real familiar with 1/2 and 3/4 inch fittings from working with water and natural gas piping, but the thought of 3/8 inch and below never even occurred to me.  Home Depot and Lowe's don't even pretend to have many of these items; certainly not in materials like Kynar or Viton.  No wonder people don't try to do obscure projects like this.


Monday, March 5, 2012

Acid Pump - Replacement Arrived

I got my replacement acid pump a couple of days ago and just now got to testing my ideas for valves and fittings.  I'm trying these:

 

These are 3/8" NPT x 1/4 HB connectors and thread into the pump head just fine once I removed the valves they shipped with it.  I went with tubing connectors for two reasons, these have really long barbs and should seal well, and I couldn't find Kynar valves in anything except tubing configuration.  The Kynar valves look like this:


Notice how long the barb piece is?  That should stop any leaks if they don't dissolve in the acid like the other fittings.

I wrapped the pipe fittings with Teflon tape and screwed them into place.  The 1/4 tubing didn't want to go on the fittings so I got a heat gun and softened up the tubing.  I was able to slide it on just fine.  Now I've got the valves in place with some tubing pumping water around in a five gallon bucket.  I'll test this for a while before I put the pump in place and test it with acid.  I did notice though that the new check valves work really well.  They have no back leakage at all and open with very little pressure.  This should help a lot with my problems priming the pump.  The lines will have four of these valves in them to prevent backflow and loss of prime just like the original shipment so my cost is greatly reduced for maintenance.  These little valves cost less than a buck and a half while the original ones are more than thirty dollars (and don't work).

The pump will be in test mode for at least a day and then I have to get a couple of 1/4" elbow barb fittings because the tubing is so stiff I can't bend it like I want to.  I'm also going to get some tubing clamps like these:


I'll use these clamps around the barbs to make sure the tubing doesn't get warm and flex off during the summer heat.



Thursday, February 2, 2012

Acid Pump - Continuing Drama

I had to give up and send the acid pump back to the distributor.  I say distributor because Hanna Instruments gets the pumps from some company in Romania.  Well, they're not Chinese...they might have worked if they were.  It seems the acid caused the pump electronics to rust up and corrode.  The pump body was nicely sealed except for the potentiometer.  It leaked around the shaft and things went down hill from there.

At any rate, when the new one comes back (still under the 1 year warranty), I'll try it with the new fittings and check valves.  I did find out that the check valves I was wanting to use, see here, fail after a few months.  No, the spring didn't dissolve, the valve seal started to leak.  These little check valves can be taken apart, so I took it out and looked to determine the cause.  They should be fine if you're using them for controlling water, but not acid.  I have a couple of Kynar check valves to try this time.  If they work, I'll retrofit all the valves and see what happens.  These pump systems have valves at the injection point for the pool, both into and out of the pump head, and at the pickup point (foot valve).  Lots of redundancy to make sure there's no single point of failure.  That is if it doesn't melt and leak acid all over the place.

Just waiting for the pump to come back to try again.....