Building Nixie from cannibalized EasyTouch #801
Replies: 15 comments 33 replies
-
Here are the list of parts that I've determined that I need, and how they map to cannibalizable Pentair parts: Box 24V power 10k sensors Raspberry Pi Stack Relays Bottom line is that my out of pocket cost is $140 + shipping. Not bad when compared to the cost of a new Pentair system. One of the big benefits of this approach is how simple the build is. Other than configuring the RPi & njsPC software its a matter of wiring the following to Sequent Building Automation Hat / Relay Hat. Most of the wires are already there, and just need to be moved:
And I also need to wire one of the spare Omron relays for the solar valve, as the Pentair board is currently doing this duty directly. All the rest of the wiring is already in place, such as:
Am I missing anything obvious? Or is it really this easy? Maybe not so easy, since it took me 6 months of thinking/planning, but another set of eyes is always appreciated. |
Beta Was this translation helpful? Give feedback.
-
Well... I feel seen 😂 Your setup is very similar to mine. I've been happily running my 4P and njsPC for years and I already have the Pi stack in a separate enclosure, but small quirks (scheduling, heat setpoints, etc) have always made me wonder about converting to 100% nixie. I'll need to read your post about 20 more times and then I'm sure I'll have some questions. Also I usually tackle any pool projects in the FL winter where I have a little more wiggle room if I miss something up. We are swimming every day during the summer. Thanks for posting. Please keep the updates, (and pics!) coming |
Beta Was this translation helpful? Give feedback.
-
Thank you for the review and input! This became slightly more complicated than I originally hoped. Let me explain why. It starts with the Omron relays. The Omron G7L specs state that the relay has a "Wide-range AC-activated coil..." However, my relay clearly has a 24VDC activated coil as rstrouse suggested (pic below). So either Omron makes two different relays with the same model number with different coil styles, or I'm losing my mind. To confirm, I probed the coil with my multimeter and confirmed that when the Pentair system is holding these relays open, there is 28VDC on the coil. That fact surprised me too - these seem to be normally-closed relays, and I was expecting normally-open. There must be a rectifier on the Easytouch board that I can't see without completely disassembling it. So one more piece I need to buy. The Meanwell NDR-120-24 is $33 on Amazon right now, so I'm up to $173 out of pocket so far if you're keeping track. And since I'm now buying an AC to DC transformer, I might as well power the RPi stack with the 24VDC instead of the 24VAC as I previously planned. In terms of the 24V source of AC power, I was going to use the Ensign transformer as I stated above. While I was probing around the relay coils, I probed the 6 (!) outputs from this transformer as well, and I'm not happy. FYI, the striped outputs are on 3A breakers, the non-striped outputs are not breaker protected, as can be seen on the door label below. One other joy of Pentair: The board says the blue wires are 10VAC outputs (pic below), the label on the door says the blue wires are 12VAC outputs - which to believe? These measures were stable regardless of varying loads that I put on the OCP:
So is the 24VAC Red wire output at an actual measured 17V good enough to drive the valve actuator? It must be, since it is working today. For now I'll hold off on buying a transformer with 24VAC output, and test this Red 24VAC wire first. Also as rock-crusher noted, I'll just use one of the relays on the Sequent Relay Hat to switch this 24VAC circuit to the valve actuator. Your other comments: "The first relay you should hook that up to the filter in njsPC." "the metal enclosure might interfere with the PI receiving a good wifi signal" |
Beta Was this translation helpful? Give feedback.
-
Here's how I'll structure my next posts on this thread. Kind of a project plan, I guess. I'll include pics at every step of course. Step 0: Document the salvageable parts in my current Easytouch 4P OCP. Step 1: Build the RPi stack, configure the njsPC, dashPanel, and REM software. Step 3: Move 10k Ohm air and water temperature sensors to RPi and test. Step 4: Connect Intelliflow Pump RS485 communications to the RPi & test. Step 6: Move pool light relay control to RPi and test. Step 7: Setup pump speeds and schedules. |
Beta Was this translation helpful? Give feedback.
-
Step 0: Document the salvageable parts in my current Easytouch 4P OCP. The pic below shows my 2008 Easytouch 4P in all its glory. Beauty, eh? The 120/240 VAC high power distribution in the middle is a big cost and time saver. I'll feed the Meanwell AC-DC transformer from the top right breaker, which is currently feeding the Ensign transformer on the top right. Other than that, I'm not touching any of the breakers or the red wires that feed off of them. The IC20 transformer middle right stays and will continue to power the IC20 due to its particular 240V/39V configuration. The Omron relays middle left will stay. There's a row of 3 more above the one you can see; the top left is for the IC20 transformer, the top-middle is for the pool light, and the other two are unused. Only change I need to make is to power their coils from the Sequent Relay Hat. The 120VAC-24/18/12VAC transformer in the top right will stay, but only if I can make use of the 24VAC rail. As I mentioned in my post above, its 17V actual on that rail, so it may not work out. If I need to replace it with a better transformer, it will be removed at the end of the project along with the rest of the Easytouch board and wiring in that top compartment. It might be a bit until I get to Step 1. The Building Automation Hat is on its way, but not in my hands yet. Everything else is ready to go though! |
Beta Was this translation helpful? Give feedback.
-
Step 1: Build the RPi stack, configure the njsPC, dashPanel, and REM software. Observations: I know this is in the wiki article, but the RPi stack must be built in this order: RPi, then Building Automation Hat, then Relay Hat. If you switch the order of the two hats, then they won't fit together properly. This is a physical limitation, not a system limitation. Ask me how I know :( The Building Automation Hat has space for a CR2450 coin shaped battery. This battery is not included when you buy the hat, and is not needed for what we are doing here. The only thing the battery will do is keep the internal clock on the Hat correct if there is a power failure. njsPC or even Raspian can be configured to set the time on reboot, so I chose to leave the battery slot unfilled. Powering the stack is done on the Building Automation Hat. There is a thread here that talks about the changes to v4.1 of this Hat, and I'll reiterate here, as that is the one I received in June 2023. The Hat has "24 VAC" printed next to the power input, but the Sequent website says "24VAC or DC Power Supply". So, 24 VDC will still work with v4.1 of this Hat. The two hats have some optional software that can be installed. This software is mostly helpful is to test the Hats and make sure they are working correctly. See here: The Building Automation Hat is a computer with its own CPU, and has its own firmware to run it. This firmware should be updated to the most recent version before doing anything else. See here: Configured njsPC to use REM, following this wiki article. Configured the basic MEGABAS and RS485 settings following this wiki article. Configured REM with the Sequent Relay Hat following this wiki article. This was a bit of work, as REM did not automatically detect the Relay Hat, so I had to do a Step 1 complete. |
Beta Was this translation helpful? Give feedback.
-
Step 2: Wire in the Meanwell NDR-120-24 transformer in the OCP box. Move the RPi stack to the OCP box, provide power to the RPi stack from the Meanwell, and boot it up. Well, I encountered my first physical challenge with my plans: The EasyTouch box is not deep enough for the Meanwell 24VDC transformer - the transformer is 1/4" too deep. If I remove the DIN mounting bracket from the back of the transformer, then it fits exactly, and I can close the door. So my plans to use the Easytouch box to contain everything is probably not going to work. I think I'll probably keep the Easytouch box and use it for high power distribution (i.e. the mini breaker panel, the Omron relays, the IC20 transformer, and a new 24VAC transformer if I need one), and then some point later, I'll add a new box to the right of it that will hold the low voltage stuff, the RPi, and so on, kind of like this: Second challenge was determining the positive and negative 24V power pins on the Building Automation Hat, as they don't seem to be documented anywhere, that I could find at least. Through some careful observation, the negative pin is the one that's closest to the edge of the board. After I figured this out, I noticed that our developers also identified the negative pin in this picture: https://user-images.githubusercontent.com/47839015/128580883-e3927ef3-5321-494b-ad2b-f77d22a6f19a.png But after all that, the RPI stack and the Meanwell 24VDC transformer is in the Easytouch box, and the RPi is booted up and connected to my home's WiFi. Step 2 complete! |
Beta Was this translation helpful? Give feedback.
-
Step 3: Move 10k Ohm air and water temperature sensors to RPi and test. I changed the order of my steps a bit, as after some consideration, the temperature sensors seemed the easiest thing to tackle first. All I had to do was move 2 wires for each of my two 10k temp sensors from the EasyTouch board to the 10k inputs on the Building Automation Hat. Configuring REM took a bit of deciphering, the reading of lots of wiki pages, and trial and error. 1st: Configure the two inputs on the I2C bus tab in REM as so: wiki 2nd: Add temp probes on generic devices tab: wiki 3rd: Back to the I2C tab to set up the data feed from the MEGABAS input to the Generic temp probe: wiki And victory! We now see actual temperatures being reported in REM! Now, this is where the wiki ends in terms of hand-holding, and it's a bit of trial and error from here on. But I'll document how I figured it out. In REM, there is a "Feeds" tab for each Generic Device that was setup in the 2nd step above. REM needs to be told here to send its data over to njsPC, then it will show up in dashPanel. Here's the REM config: And then we get temperature goodness in dashPanel. So basically, the process to get data from the RPi stack into njsPC is as follows:
I assume this will need to be done for every wire coming into the RPi stack. P.S. This is complex and convoluted to a first timer, but after walking through it, I understand the complexity. It allows for quite the varying configurations depending on individual needs, and is quite the opposite from Pentair's solutions which force you into their model. An analogy is Android vs. IOS: If you pick Apple, you can only do what Apple says you can do; if you pick Android, you have much more flexibility. With that flexibility comes responsibility to learn and understand, of course. But if we wanted the easy path, we'd pay the easy tax to Pentair or Apple and be done with it. We're hackers, and so we like the flexibility. Well done @rstrouse and @tagyoureit! Step 3 complete. |
Beta Was this translation helpful? Give feedback.
-
Step 4: Connect Intelliflow Pump RS485 communications to the RPi & test. To isolate just the pump, I disconnected the yellow and green wires for the pump from the RS485 block on the Easytouch board, and connected them to the RS485 port on the Building Automation Hat. I'll wire up the whole bus together with all devices in the next step. A side note, as I got stuck on this step. If you are like me, njsPC automagically detected all of your equipment when you connected it to your OCP by way of the RS485 bus. Nixie doesn't work this way, but expects you to configure everything yourself. I was staring at the Comms tab for hours wondering why there were no packets flowing over the bus, and it was because I had not manually entered my pump into the Pumps tab. Once I did that, communications started flowing. Nixie requires a full-DIY mindset shift - it won't automatically do anything for you and requires you to set up everything yourself the way you want it. So after that epiphany (with the help of @rstrouse here), this step is complete. Here are the relevant configurations: And here are the pics demonstrating victory: |
Beta Was this translation helpful? Give feedback.
-
Step 5: Connect Intellichlor RS485 communications to the RPi. Move Intellichlor relay control to RPi. Test. After I got the pump communicating in step 4, I joined all the RS485 wires together using the molex block that was orignally attached to my Easytouch board. For me there were only three yellow and three green wires to join:
Here is the surge board. It is small, and from its name, I assume it blocks power surges in one or both directions. If you want to LOL, look at the price to replace this thing: link. $300 for a half-dozen electronic components! The famous Pentair tax I guess. You'll notice that my board is older than the one in that link and is missing a few resistors and diodes. I was considering removing this board out of the power path, because after all, if you didn't have an OCP, but bought the IntelliChlor separately, it wouldn't come with one, right? Wrong. The Pentair 520556 is a "Intellichlor Power Center" that is required to power the SWCG. For $500 you get a 240/39V transformer, and a cut down version of that surge board that doesn't include RS485 connections (from what I can tell), and a metal box. Sigh. Nice scam/business if you can get it. I didn't need to do any relay work, because my pump and IC20 are on the same relay/circuit breaker. This is per Pentair instructions, guidance here, and code (I think). The relay was already moved over to RPi control in step 4 when I realized that I needed a "Pool" circuit in njsPC in order to test things. And since I did NOT remove the surge board from the power path, there was no power wiring to do; since I am cannibalizing my EasyTouch, it was already all wired up. So then I needed to add the IC20 to njsPC. Here I made a mistake and had to ask for help. This is the proper way, don't choose "External", do choose "Nixie": And then it shows up in dashPanel, and I can set Output levels and so on. Output level changes are reflected on the IC20 within a second or two. The inability to set output levels when njsPC was connected to my OCP was one of the things that finally pushed me over the edge to move to Nixie. I assumed that my OCP was just dying, but there are others with this issue. Regardless, step 5 complete. |
Beta Was this translation helpful? Give feedback.
-
Step 6: Move pool light relay control to RPi and test. This one was easy. When I did the pump/IC20 relay in step 4, I did the pool like relay at the same time. After I removed the wires that connected the relay coils to the Easytouch board, it was a matter of hooking up three new wires for each relay:
Add it to REM and njsPC and Bob's your uncle. Step 6 done. |
Beta Was this translation helpful? Give feedback.
-
Step 7: Setup pump speeds and schedules. Here's how I was running things when njsPC was connected to the Easytouch the OCP:
I'll show the cleaning/vacuum setup in this step, and talk about the solar speed at the same time I configure the solar valve. This is a three step setup in Nixie: All done, and working as before. In case you are wondering about my weird pool schedule, I'm on an electric plan with my utility that saves me money if I don't use power between 3-6pm M-F. So I schedule everything to shutdown for those 15 hours per week. |
Beta Was this translation helpful? Give feedback.
-
Step 8: Move solar valve actuator control to RPi & test. This step was definitely the most complicated, so I'm glad I saved it for last. Like other steps, this step also required a shift in thinking, and some assistance from @rstrouse here. Since you are reading this thread, you may be like me and are transitioning from an OCP to Nixie. In the OCP paradigm, there is a big "Solar" button that shows up on dashPanel - tapping this button simply rotates the valve appropriately to turn the solar system on or off. In Nixie, solar heating is NOT controlled manually in this way; it is better to automate solar heating based on temperature comparison algorithms. First the hardware:Adapter for valve actuator plug With the adapter in place, I wired up the valve to a relay on the Sequent Hat and tested it. Turns out that I had the NO/NC ports on the relay reversed, so I swapped them. I then confirmed that it was working by tapping the relay in REM, and watched the valve rotate accordingly. 24VAC power Solar temperature sensor So I had an insight that works for me. My pool equipment is surrounded by a 3 foot high wall, and covered by shade cloth to keep the sun off the equipment. The top of that wall gets almost as hot as the top of my roof, so why not just mount the solar temp sensor there? So that's what I did, I bought a 5 pack of cheap sensors, and ran the wire the 3 feet from the top of my wall to the input on the Building Automation Hat. Maybe not the perfect measure of solar temp, but certainly good enough for this purpose. And it was 99.99% easier than mounting something on the roof. Software configuration:Add the valve and temp sensor to REM Configure heating/cooling set points I then thought about what I wanted to happen, and it is seasonal:
The problem is that you can't do both of these at once unfortunately, as dashPanel forces you to have a Cool Point that is greater than the Heat Point. So I'll need to move these manually as the seasons change. A wishlist item might be to have a setting that directs the solar circuit to be in either heat mode or cool mode; right now it does both all the time. So for now, I've set it up like this. Note that you have to tap on the red box area to bring up the page to set these values: NotesNote 1: Longitude and latitude need to be entered in Settings/General/Personal Information in order to determine sunset/sunrise and to allow the nocturnal cooling algorithm to work. Note 2: There may appear to be bug in the algorithm that decides whether to engage nocturnal cooling. If you need this to work while waiting for the developers to adopt this into the code base (or not), the change is easy. In the file nodejs-poolController/controller/boards/SystemBoard.ts, change line 4274 from It will recompile with the fix when you "npm start" or "pm2 restart njsPC", or whatever you typically use. At this point, Nixie is as functional as my Easytouch was before I started all this. Future improvements will be detailed in my next post. |
Beta Was this translation helpful? Give feedback.
-
Step 9: Observations and Future Plans Nixie requires several paradigm shifts as compared to how an OCP operates. This is a good thing and kudos to @tagyoureit and @rstrouse for their work on this. However many of these paradigm shifts are not completely documented in the wiki, and I had to ask for clarification several times. This is normal with something this complex, and hopefully I've done my part by sharing my journey in this thread. Many pieces of the Pentair Easytouch were salvageable. As a bonus, if ever needed, I can remove the Nixie bits and revert the OCP back to its original functionality. Here's the list of things I reused:
Setting aside the last two, that's a total of $395. I did have to buy a few new parts. You're experience may very depending on what you have laying around in your electronics box, but here's my final tally to achieve parity with the EasyTouch. Arizona sales tax is included in these numbers:
Total out of pocket: $209.53 And I did find a few (potential) bugs as I worked through setting things up to work for me. You can track them here if they affect you: Future plans in priority order. I'll certainly come back to this thread and post updates as I complete these. But these are not as much of a rush as the initial build:
And here's the state of the pool controller right now. Messier than before, but I did get to remove the Easytouch control board/display. Now, off to find a cheap enclosure for future plan number 1. The Atelix boxes are on sale, so I might just splurge. |
Beta Was this translation helpful? Give feedback.
-
Hmmm... Not sure wassup with GitHub.
Great suggestion to run things on their own to see if the Problem is in omw
or elsewhere! Thanks.
…On Thu, Dec 7, 2023, 4:26 PM tagyoureit ***@***.***> wrote:
I'm not changing anything on the wiki, but even if I was the updates
should be instantaneous.
Before you blow away everything, you should try to start up each
application outside of PM2. You can open a unique SSH shell for each one
just to try this. If they all work outside of PM2, then you know where to
start. If they have issues running by themselves than you have a different
direction to go.
—
Reply to this email directly, view it on GitHub
<#801 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AJ3NIBDZUR7IKQETG3A2GOLYII7ARAVCNFSM6AAAAAAZU4IK52VHI2DSMVQWIX3LMV43SRDJONRXK43TNFXW4Q3PNVWWK3TUHM3TOOJUGM2TO>
.
You are receiving this because you commented.Message ID:
<tagyoureit/nodejs-poolController/repo-discussions/801/comments/7794357@
github.com>
|
Beta Was this translation helpful? Give feedback.
-
Hey everybody. I've been limping along with an Easytouch 4P circa 2008 since I bought my house in October 2022. I found this project early on and was able to wire in a RS485 bridge, run njsPC on a Linux VM on my home computer, and control my very simple pool system from modern devices (such as phones and iPads). This was a great improvement over Pentair's horrible beige remote controller box.
But I've always had my thoughts on a Nixie, as the Easytouch is getting a bit old, I worry about its longevity, and I would eventually like to add some things like automatic acid dosing. Pentair's chem solutions are stupid expensive for what they do.
What has held me back is the cost of building a Nixie. I've been reading the "DIY Standalone Nixie Pool Controller" guide front to back several times, and reading all these threads too, but I always got stuck as I worked through the cost of all the pieces. And btw, those costs in that wiki page are way out of date - things are much more expensive now due to all the pandemic actions and resulting inflation/supply chain issues.
Being the cheap bastard that I am, I then explored the idea of cannibalizing the Easytouch for parts and only buying those pieces that were missing. So I took the Easytouch apart to figure out the make and model of each of the parts, and mapped my plans against those parts. And surprise! I don't really have to buy many new bits.
I'm writing this thread for two reasons:
For now, I'll detail my (simple) pool equipment setup that is relevant to this project:
Next post will talk about needed parts, mapping to cannibalized Pentair parts, and build plans.
Beta Was this translation helpful? Give feedback.
All reactions