My Neptune Apex web interface compatible DIY reef controller

ok, I see the problem for ph in index.htm. I'll fix that.
I still don't see yet the problem for orp and cond.
 
Last edited:
ok, I fixed index.htm and updated github.
please test it again.
my test setup has 2 serial and 1 i2c stamp and I do not see the problem.
make sure you veirify that the index.gz file is updated on the SD card. You can verify by going to setup/file manager and check the file size is 22972.
 
regarding buzzer, make sure you buy the "active" buzzer.

I made a mistake of getting the passive buzzer and they don't work with the program. I don't want to modify the code to make passive buzzer work, so I just ordered the active buzzer this time.

active buzzer has built in oscillator so simply applying 5v will make it sound. passive buzzer requires a 2khz square wave signal for it to make sound.

I just updated github again. found another problem in index.htm.
 
Last edited:
dst auto adjust works.

<object height="315" width="560">


<embed src="//www.youtube.com/v/WPgSbstNORM?hl=en_US&version=3&rel=0&controls=0&showinfo=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="315" width="560"></object>
 
Hey d0ughb0y thank you for your work and sharing your project with us others!

Is there any way to explain me where I should change date formats so at the end I got everywhere date format in DDMMYY? In Europe we use this mode for date records so...
 
So for me DST changed for the logging, but at the bottom of the main screen where it displays the time it's wrong. However I am a few revision behind.
 
Last edited:
Hey d0ughb0y thank you for your work and sharing your project with us others!

Is there any way to explain me where I should change date formats so at the end I got everywhere date format in DDMMYY? In Europe we use this mode for date records so...

if you just want it for lcd display, you can make the change in utils.ino. otherwise, it will be a lot of work to change it everywhere. once all the main coding is finished, I can make the change by adding a getdatestring function and call it everywhere that uses date, and you can just change the function to return the date in your local format.

So for me DST changed for the logging, but at the bottom of the main screen where it displays the time it's wrong. However I am a few revision behind.

I see mine is the same. The date display in the webpage is handled by javascript. I have to look into that.

Really cheap wifi solution for the future mods. It is even cheaper than this ordinary ethernet shield and works thru RS232 connection.

http://www.banggood.com/TLN13UA06-R...ess-Control-Module-With-Antenna-p-947754.html

Or this one which is even more cheaper

http://www.electrodragon.com/product/esp8266-wi07c-wifi-module/

I got the 2nd one. I am not able to test yet since it works on 3.3v. It also does not come with any good arduino library so I might have to write one from scratch if it actually works decently.

Here is my wifi setup.

http://www.netgear.com/home/products/connected-entertainment/gaming-home-theater/WNCE2001.aspx

Bought a bunch from Best Buy for $15/each. No modification to the code needed. I bought them before I started this project. I original bought them for my Raspberry Pi XBMC boxes since the place I was renting at the time wouldn't let me install network cabling throughout the house. They work great.

how does this one work? I tried a similar setup with a router using dd-wrt firmware and it dos not work well. The response time is significantly slower.
 
As for the Universal WiFi adapter, the way it works is, it grabs an IP and runs in bridged mode. So it has all the communication up and running with your wireless network and the device (controller in this example) doesn't even know it's on wireless but thinks it's on wired network.

Now wireless by nature is slower. Reason being is it runs in half duplex mode. Half duplex is where only one device at a time can talk, and it can only talk not recieve at the same time. This is why a wired full duplex mode is always preferred so you can have two way communication.

Back to the adapter, I like them a lot. I was streaming full ISO Blu-Ray movies with no buffering or latency. So these adapters can do full Wireless-N speeds. I highly recommend them, and have had zero issues. I have one on my controller today. Cheaper than the Arduino Wireless shield they sell. Much more versatile as well.
 
My Neptune Apex web interface compatible DIY reef controller

The latency I saw is probably due to the dd-wrt firmware. I thought it was not ready for prime time back then. I have not tried recently.

The web page will display the correct time if you do a refresh/page reload.

I need to fix the doser code. Right now, on initialization, it will clear the values stored in eeprom if the values look incorrect. But it seems it always clears it on reboot now.
 
Last edited:
I added code to support passive buzzer while waiting for dst change last night.
The code change turns out not too bad, only about 10 lines of code. The catch is I need to move the buzzer pin from D38 to D9. The new code will work for either active or passive buzzer, with active buzzer as the default. If you are using passive buzzer, simply uncomment the new define
#define PASSIVEBUZZER

I will include this in my next update once I fix the doser initialization issue.
 
I just updated github.

note that if you use this latest code, you must move the buzzer connection from D38 to D9. If you have a passive buzzer before that did not work, it will now work with this version. Just uncomment #define PASSIVEBUZZER in config.h

I also fixed the dosed volume resetting to 0 on reboot issue.
 
d0ughb0y upload the late code last night and I notice that the stamp readings are still all over the place. I was getting Orp max at 93543 on the main screen but the controller setup was reading around 340 and same with the CalRX was reading max 24.83 and the controller setup was reading 5.54. I don't think the cond probe is correct. I cal it last night and the salinity was reading 35.5 and now its at 42. I will go back to pervious code that doesn't have the I2C code in yet and see what happens later today.

The screenshot shows the setup page with one digit in front of the reading that goes back in fort

Are anybody else having the same issues as I. I'm using 4 atlas stamps.
 

Attachments

  • Screenshot_2014-11-03-07-29-16.jpg
    Screenshot_2014-11-03-07-29-16.jpg
    47.7 KB · Views: 2
  • Screenshot_2014-11-03-07-29-43.jpg
    Screenshot_2014-11-03-07-29-43.jpg
    34.6 KB · Views: 1
  • Screenshot_2014-11-03-07-29-58.jpg
    Screenshot_2014-11-03-07-29-58.jpg
    33.7 KB · Views: 1
  • Screenshot_2014-11-03-07-30-22.jpg
    Screenshot_2014-11-03-07-30-22.jpg
    33.8 KB · Views: 1
can you try this on a computer? and make sure that you uploaded index.gz, and you do a full page reload (ctrl-F5 on windows).

I see in your screenshot the first digit is repeated in the calibration reading, but I really do not see how that is possible to happen from the javascript code point of view. So it it possible it may be a browser issue. There is no addition or any math done to the reading, and everything is handled as a number.

on your controller log, after a reboot, how much memory available does it show?
 
Hi d0ughb0y

I am trying to get this up and running and am struggling a little. I have got one temp conn so far and have commented out atlas stamps for now. I have encoded a password and set up a gmx email and those details. I haven't changed much else as I want to get it working first.

I am still waiting for the backpack to come for my 1602 lcd but thought it would still work On the Web page but it doesn't yet. Once uploaded to the arduino and connected to my router in just type in the local ip I assigned to the controller 192.168.2.15 and is it supposed to come up with a logon page?

I also just realised, as I wanted a module rather than a shield, and the one I have soldered up is a ENC28J60 not w5100. Don't know if that could be the issue.

Sorry it's a bit ifs and buts and maybes but I am just struggling a bit. I have started reading the entire thread again to see what I have missed but this will take some time as it's now so long lol
 
Also just realised that I've wired up my ethernet module to 5v not 3.3v, and does it matter that I have a separate micro sd card reader connected, all the wiring and pins are the same.
 
Back
Top