Howto: Use a Linksys Router as Wireless Reef Controller - WRRC

I use the HobbyBoards hub as well. I only use the injected power for those 1-wire devices that support it. For other power needs like a pH transmitter or relay board, I use an external power supply.
 
Futurlec boards

Futurlec boards

Well I got my Digital I/O boards completed.

Used the US$13.00 Futurlec boards, cut 1" of the end off, and mounted the 1wire DS2406/2405 devices onto the board as well.

Relay board with transistor drivers removed.
IMG_0018.jpg


Mounted into enclosure, see the 1wire chips on the left hand side
IMG_0027.jpg



Digital Input board
IMG_0025-1.jpg


Show minor mods required
IMG_0023-1.jpg


cheers

rob
 
Hi everyone,

This is a great OWFS project. I have been using Paul's software since its early infancy and I love the metaphore of representing ICs as file system objects. I think the FUSE developers deserve credit too, since without it we couldnt have been able to write easy almost script-like custom file systems. However, one thing I am very new to -- writing WRT54G software.

Can someome post a good wiki on how to write simple programs for wrt54g. Yah I have one, can un-brick it with jtag, etc but when it comes to compiling even the simplest source code I am stuck. Sure, I have the toolchain, I can run gcc but then the produced binary doesnt run. And the issue of loosing my stuff upon reboot is also one of quesitons.

I am sure this has been answered somehwere on the embedded world so blast as you may.. I have to start somewhere right :)
 
I have progressed into assembly and got the I/O boards mounted on a back plate. I am currently writing a simple script that will control the fill drain solenoids. You can see the float switch attached. This has been hooked up to my controller now for 2 weeks and seems very stable. This unit will be fitted into my new tank which I am saving for and hope to get in July..

This setup has a couple of failsafe features....One of the four relays control the 24VDC power to the other three relays thus I have to explicitly turn on two relays to either open the drain valve or the fill valve. So if a 1wire digital output glitches ON nothing will happen. The other thing was the fact that I have installed a DIN rail mount relay( its the blue one) this insures that if either of the two float switches which are mounted in the tank detect high level it cuts power off to the fill valve.

IMG_0001_edited.jpg



rob
 
This is the water change solenoids built about 2 years ago and up until now have been controlled via switches. This is what the 1wire outputs (shown on above post) will switch on / off automatically. Solenoids and pump are low power 24VDC

IMG_0025.jpg
 
Great progress. More than I can say for my controller. I have actually taken a step back and built some interim circuits to do things like feeding pump timing and light dimming. Sadly they will not be part of the final design. I just had to get something up and running as all of the manual work is starting to kill me.
 
Well this thread had been dead for a while so I thought I'd give it a bounce and show an improved look and feel to my web interface....I now filter out any occasional data spikes and log any of these errors in a system messages window. I have also found the ability to overlay data on the trends and can pop up target with range bands with alarm info on a transparent overlay. Next enhancements over the coming months is to link a help / info system to each parameter and get a user interface to easily insert log information into the event lists. The last will be providing logs/report of water changes..I do have a great trend showing water changed on what day and accumulated water changed for the week...need to consolidate data into monthly event reports. Can't think of any more enhancements for the short term, any future idea's to extend functionality ?

NewWeb.jpg
 
That looks awesome! Would you consider sharing the backend code to that web interface? I'd be interested to see what your database schema looks like too. My perl scripts are pretty basic, but I'll share them with anyone interested in them.

I've got my setup monitoring temps every 5 mins and controlling heaters fans to keep within a given range. It's got a couple basic 3 day temp trends, but not nearly as slick as yours.
 
Looks really good!

I'm following the trail so to speak; bought myself a router (Asus WL-500gP) and installed OpenWRT with 1Wire and RRD. This is operational now for a few days logging and graphing some system-stats like in/out traffic, cpu and memory utilization. The ordered 1wire stuff has arrived and soon the soldering will start.
Can you pls share some information on how to display (overlay) on top of the graphs? Looks great! Maybe also some explanation on what the function of "Aquarium water parameters" radio-button is or is it just eyecandy for an legenda?

Ideas?
Well, maybe an 'admin' page for making settings for dimming TL's?
Logging on/off-switching for the heating. Maybe presenting this in the temperature-graph. Same for on/off switching CO2.

greetings from the Netherlands,

Ed
 
@bad inferno
Am I right that you are the person in the topic:
http://www.mail-archive.com/owfs-developers@lists.sourceforge.net/msg03029.html with topic-name:
Reading 1 wire data every minute with an NSLU2 (SLUG)

If so, are you still using the OWshell-tools?
Does it work well?
These questions because FUSE gives me the same troubles reading /tmp/1wire : shell hangs until I kill owfs. This is on a Asus router wl-500gP with OpenWRT White-Russian RC6.

If using the OWshell-tools can I uninstall FUSE and OWFS all together?

Ed
 
Yes thats me .....The only thing I run now is owserver and just use owread and owwrite in my scripts. This has proved the most reliable. I just changed my startup scripts to just load owserver.
 
Bad Inferno, thank you very much for the script. It looks very nicely structured and is understandable even for a beginner like me.
A few days ago I re-installed owfs and fuse and now I can 'ls' the /tmp/1wire directory without hanging the shell. Hmm, since the versions are slightly higher some bugs must've been fixed.
Do you have hints for us how to do the nice 'overlays' on top of the RRD graphs?
Soon I hope to 'operate' on the router installing the 1wire hardware; the serial DS2480B line-driver which is directly to be connected to the UART. The first DS18S20 for temp.-measurement is coming insite the router as well: just for testing purposes. If it all works out it will be the first sensor for the tank.
Because my router doesn't have a harddisk I'm using a USB memory-stick. Because the router has two more unused USB ports internally that is where the stick will be placed. At the moment I'm making a init-script for copying data from the stick to /tmp and a backup-script for the RRD data. This is to 'spare' the sticks limited writes before it dies.
 
C4Vette,
SCALE...All I did was to overlay another graphic I created. Found if you save the graphic as a png file and have the background transparent it keeps the transparent effect. So the graphic file had the vertical scale and the target and ranges. I put the scales onto a separate layer within the web file and just put a button on the page to show/hide layers.

When you create your rrdfiles make sure you put a good range around the data sources. ie for temp I used -10 to 100 should of been 10 to 40 that way if I did get a crap reading from the sensor rrd would ignor the value if set outside its DS range.

Script...as I start this script from nohup I just pipe the errors to nohup.out. Every 5 minutes I copy nohup.out to a file within the website directory. That way a button on my web page just views the ascii file of any errors that may of occurred. Crude but works.
The test (-z) just confirms there is data in the variable...the majority of my 1wire errors are the fact there is no value in the variable. I scan my sensors every 90 seconds and may get 4 or 5 (no data) errors per week.
 
First result...

First result...

Far from ready but the first result looks like this:


http://members.chello.nl/fotos/FirstImpression.jpg

The 1wire serial line-driver and the first temp-sensor are both built into the router itself. The sensor will soon be moved to the tank. Notice how hot it gets inside the router :eek1:

The scale will be adjusted accordingly.
How about that shading trick :D
 
Sorry about that.

firstimpression.jpg



Well, finally, there it is. I have no html-experience so it took me a while and is not completely finished yet. But it works, even some other items in the menu. The graph has a few gaps because it is THAT new. And again, the temp is not from the tank but measured inside the router.
 
Last edited:
Back
Top