My Neptune Apex web interface compatible DIY reef controller

LCD working

LCD working

I got my LCD screen to work after some trial and error. it is the one pictured above on the right with the PCF8574 chip the board came from China seller from on line auction with no markings. After using a i2c scanner (thanks Camblonie) I got my LCD address back as 0x23 and found a picture of back packs that look like mine are Arduino LCM1602 IIC V1. After clearing the Eeprom and loading a test sketch for that board it worked perfect. I change the numbers in the sketch to reflect this in the config.h to
LiquidCrystal_I2C lcd(0x23, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);

and seems to be working for me hope this will help some one else.

I soldered the bridge for A2 that is how I got the 0x23 A0 or A1 will give you diffrent numbers after the 0x

Test sketch http://arduino-info.wikispaces.com/LCD-Blue-I2C#v1

Scanner http://playground.arduino.cc/Main/I2cScanner
 
Doughboy, a quick question.

Did you tie the pins from the ULN-2083A or did you make a PCB for it? If it's a PCB, can you post it?

Thanks :)

no pcb, I just soldered jumper wires below the prototyping pcb board.

Anyone having trouble SMTP from gmail? I'm using smtp.gmail.com, 587, tried user name with and without @gmail.com, both username and pass are base 64 encoded. What am I missing?

gmail requires tls/ssl and that is not supported/possible with arduino. just find another email server that does not require ssl.
 
I've been busy since the start of the year. If it's not one thing, it's another. Next up I need to do my taxes :(. Once I get that done, I should be able to resume programming the controller. The only thing remaining are the code for dosing pump and LED support.
I've been responding to PMs and emails.

I also plan some minor change to the PWM pump program. I want to make it so if you set pump 0 to Auto, it automatically changes the rest of the pumps to Auto mode as well. and also if I set pump 0 to feed mode, to automatically changes the rest of the pumps to sync mode (so they are all on feed mode).

This Sunday is daylight savings time time change. Last fall the auto DST time change code worked properly. I'll find out this Sunday if the skip forward DST time change will work properly.
 
ok there is a bug in dst calculation.
to fix this, go to Network.ino and change lines 360 and 364 from
dstStart += 2*SECS_PER_DAY;
to
dstStart += 2*SECS_PER_HOUR;

I updated github source with this fix. Apparently the bug was introduced in my last update. Not sure why it got changed to SECS_PER_DAY.
 
Last edited:
just updated github with a few more changes.

add check sonar water level is not below low threshold before turning on ATO pump.
pwmpump changes, if master is set to auto, all other pumps are set to auto. if master is set to feed, all other pumps are set to feed mode.

I see the jebao pump dealer in hk is selling a two pump controller. I think it is clever that they use a single power supply to control both pumps , but I think it is quite a stretch for them to claim they designed the power supply, since it is just a standard off the shelf generic laptop power supply you can get for under $10.

When making the jebao pump cable for this controller, you can also do the same, using only one power supply connection if you use a laptop power supply.
 
just updated github with a few more changes.

add check sonar water level is not below low threshold before turning on ATO pump.
pwmpump changes, if master is set to auto, all other pumps are set to auto. if master is set to feed, all other pumps are set to feed mode.

I see the jebao pump dealer in hk is selling a two pump controller. I think it is clever that they use a single power supply to control both pumps , but I think it is quite a stretch for them to claim they designed the power supply, since it is just a standard off the shelf generic laptop power supply you can get for under $10.

When making the jebao pump cable for this controller, you can also do the same, using only one power supply connection if you use a laptop power supply.


I own a dc6000 pump and I think they use the same type power brick which you are right. I can go into radio shack and get a replacement
 
vymuregy.jpg


Pic of a board I made. This is my first attempt so immediately I notice multiple things that could have been done better/correctly. I'll still try to put it together and see what happens.
 
I don't see where to put a webcam address in the setup page. Can I do that from the web interface?


Click on the help icon on the lower right hand corner or the page on your smartphone and open the setup section and the instruction for how to setup webcam is there.
 
vymuregy.jpg


Pic of a board I made. This is my first attempt so immediately I notice multiple things that could have been done better/correctly. I'll still try to put it together and see what happens.


Nice.
Let me know If you see any currently used lines connected to the ethernet shield that can be moved over to your board and I'll see if I can make those lines definable in config.h
 
I've just been thinking regarding ultrasonic water level sensor. Since currently I use distance in centimeters to determine water level, that is basically the smallest resolution reading I get. For my top off container, the range from high to low is 35cm. That means for each cm drop in level, that is 3% in terms of percent. Since the raw reading is the time in microseconds for sound to echo back from the water surface, I can use millimeters instead, by simply changing my conversion factor from 58 to 5.87734 or maybe 6 if I want to stick with integer math only. I'll try this to see if it is feasible.
 
I made the code change and so far, it seems to work well. I changed the smoothing function from 8 samples to 256, and can see a 1mm reading fluctuation only, which I think is pretty good. I highly doubt there is any other solution out there this cheap that can provide a 1mm resolution for measuring water level. I'll monitor this for a few days and will check in the changes to github if I do not see any issues.
 
that is a very small change in depth of water if it gets to low will it shut off the ATO pump ?
 
yes, you specify the high and low distance in the configuration, and the distance to stop the ATO pump (sonar alarm).

In my case, the high water reading is 5cm (the water level is 5cm from the ultrasonic sensor), and the low or empty is at 40cm. I specify a low level alarm at 39cm. When the water goes below that level, the ATO does not come on anymore, and there is option to sound the buzzer on the controller, and/or send you an email.

I usually check the level everyday and refill water when it is less than 10%.
 
Rott,
Right away i have a physical interference with the network board and that's depressing. Multiple other projects now but I'll get back to it soon.
 
Can anybody tell me how to set the temp alarms and also how to set the the heater relay to turn on and off based on a temp value? I have very little programming knowledge and am stuck on this one. A couple lines of example code would be awesome.
Thank you all!
 
Back
Top