May 28, 2020 at 10:45 pm #66443
I’m using an OpenSprinklerPi 1.0 (old school!) with a Raspberry Pi 1 model B (also old school!). Some time last year I finally updated to the “unified firmware” and also some time last year I started having issues with multiple stations turning on at one time. I didn’t pay close enough attention to the times of these two things, so I’m not sure they’re related or not. I now need to get my watering nailed down, and it’s not going to work for me to have the sprinklers turning on in both the front and back yards, dealing with low pressure, wasted water, etc.
I’m trying to figure out my issues, and finally took the time to rule out wiring. I ohmed out my underground wiring and have no shorts that I can detect. I didn’t check resistance across the solenoids because they’re AC controlled and likely have some inductance (and to be honest, I don’t understand inductance, and what it could tell me).
I pulled the connectors from the OpenSprinklerPi board and measured output on all 8 terminals when attempting to only activate 1 station manually via the android mobile app. Since I was getting 24Vac on all of them, I pulled everything out of the sprinkler box have it just hooked to 5V power in the garage on the bench to see if I can determine if the problem is with the OpenSprinklerPi board for some reason, or the software.
I connected a Saleae to LAT, DAT, NOE, CLK, and GND; captured the output of setting 1 channel, and my interpretation of the data looks right based on my limited understanding of the 74HC595.
Do you think the shift register is bad? Or is it maybe a problem with voltages being opposite on the 1.0 board or a timing issue? I didn’t dig into the datasheet deep enough to see if things like there’s not enough settle time of the data line before clocking a bit, but the code doesn’t look like it has any sleeps or anything between the calls in digitalWrite.
Please help me get to the bottom of this! 😀
Here’s the output, and I’ve attached the capture as well.
Thanks!May 30, 2020 at 6:06 am #66485
The picture didn’t come through, so here it is again: https://i.ibb.co/DK4md6z/Screenshot-from-2020-05-27-14-30-04c.png
But, I have an update. I have a friend that also had the 1.0 board that he’s no longer using. I purchased it from him and found out it’s definitely my OpenSprinklerPi board. Booting my pi, running the same software works with the other board. I’m thinking it’s just the 74HC595 and will try to debug that further tomorrow before ripping that chip off the board to try replacing it so I have a spare board.
I actually bought a new OpenSprinklerPi board, so I’ll be set for my stations with/without expansion boards, and have backups if something goes wrong.June 1, 2020 at 12:00 am #66495
Further confusion. My board works with the other Pi which is still running the old/original python code. I pulled a capture using the Saleae and the output looks “cleaner” and another thing is the OE pin is toggled while writing. That’s something the new unified code doesn’t do, so I’m wondering if something there affects timing or sensitivity on the shift register. I’m fine talking to myself as I go through various things to test, but anybody with additional debugging ideas, feel free to chime in! 😉June 1, 2020 at 12:00 am #66505
I spoke too soon, and was only checking the first station before. Even on the latest version of OpenSprinkler-Firmware freshly compiled/configured, I have an issue on either board. If I turn on station 1, it turns on fine, which is why I thought my friend’s board was working. However, if I turn on station 2, stations 1 and 2 come on. If I turn on station 3, stations 3, 2, and 1 turn on, and so on.
Any ideas? This is true of both OpenSprinklerPi boards, and the Saleae capture (after some hacks to only turn on 1 set of outputs, 8 bits/stations) looks perfect, so I no longer think it’s software, even though I did this morning.
- You must be logged in to reply to this topic.