If you have any comments, suggestions, and or any questions about the BUM System let me hear them....
03/22/2009:
BUMS Overview Videos now on Youtube!!
Part 1 - www.youtube.com/watch
Part 2 - www.youtube.com/watch
Part 3 - www.youtube.com/watch
Enjoy!!
B. Morse
03/19/2009:
Due to some posts in the forums, I seem to have disappointed someone in the community, so I am going to put together a "BUMS Teardown" video, where I will go through each component, show how it is connected to the Pic32 Starter Kit, and explain its function in detail and what the Pic does when each event occurs, etc... I will have a link for it on youtube posted here when I get it done.
02/22/2009:
New Video update done, had to post it on youtube, since I tried to upload it a couple of times to the site, it said it completed but never showed it, so you can view it here on YouTube >www.youtube.com/watch
02/16/2009:
I MADE IT TO PHASE 4
!!! Thanks to all my supporters and to the judges who got me this far.
Now, it's back to the grind to get things going some more.....
02/07/2009:
Finally had some time to run the PCB's for the variable flow valves for the system, I had finished the PCB design for them last december, but I finally had time to actually make them.. So here are the controller PCB's with the components already mounted, I just need to add heatsinks to the Dual H-Bridge's (UDN2998), (thats what the big open area in front of the H-Bridge is for) and I still have to break out the old PIC programmer and program a couple of PIC16F84A's to run these modules, the only thing the pic32 will have to do is supply a step, and a direction signal.....

Wouldnt you know it, just as I had finally made time to make these PCB's, I ran out of single sided copper clad board, so I ended up using a double sided board to make a single sided PCB, oh well, I still made it work though, just extra work for my mill to make clearances for all the holes on the top of the PCB, so the components wouldnt short out together!

here is a pic of the controllers with the Valves assembly....

02/01/09:

This is a screenshot of the PC application for editing the Systems settings, these settings are saved to a file which is loaded onto an SD_Card for the system to read and load. These settings will also be configured over SNMP, once I finish that part on the PC application, right now my VB App just reads the SNMP packets.... These can also be configured right on the system using the touchpad interface and VF Display. (Although I prefer the PC app over the system console, easier to click on check boxes!lol)
1/29/2009:
I have made some more modifications to my MIB file for the SNMP agent I am running on the BUM System and to the SNMP process...
Here is a snapshot of the SNMP data packet as it is read by my VB application.
//=====================SNMP PACKET READ OUT==============
//I/O Data
rID: 1 | OID: .1.3.6.1.4.1.17095.3.11.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.10.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.9.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.8.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.7.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.6.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.5.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.4.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.3.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.3.2.0 = &H01 = 1
rID: 1 | OID: .1.3.6.1.4.1.17095.3.1.0 = &H01 = 1
//System Data
rID: 1 | OID: .1.3.6.1.4.1.17095.2.1.1.4.0 = 00
rID: 1 | OID: .1.3.6.1.4.1.17095.2.1.1.3.0 = 192.168.0.3
rID: 1 | OID: .1.3.6.1.4.1.17095.2.1.1.2.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.2.1.1.1.0 = &H00 = 0
rID: 1 | OID: .1.3.6.1.4.1.17095.1.5.0 = www.Morse-Code.com
rID: 1 | OID: .1.3.6.1.4.1.17095.1.4.0 = Brent C. Morse
rID: 1 | OID: .1.3.6.1.4.1.17095.1.3.0 = January 2009
rID: 1 | OID: .1.3.6.1.4.1.17095.1.2.0 = v1.0.0.4
rID: 1 | OID: .1.3.6.1.4.1.17095.1.1.0 = BUMS SNMP Agent
rID: 1 | OID: .1.3.6.1.2.1.1.7.0 = &H07 = 7
rID: 1 | OID: .1.3.6.1.2.1.1.6.0 = My Kids Bathroom
rID: 1 | OID: .1.3.6.1.2.1.1.5.0 = B.U.M.S. Bathroom Utilities Management System
rID: 1 | OID: .1.3.6.1.2.1.1.4.0 = bumssupport@morse-code.com
rID: 1 | OID: .1.3.6.1.2.1.1.3.0 = (4146) 0 day(s), 0:0:41.46
rID: 1 | OID: .1.3.6.1.2.1.1.2.0 = .1.3.6.1.4.1.17095
rID: 1 | OID: .1.3.6.1.2.1.1.1.0 = BUMS running Microchip SNMP Agent
//=================END OF READ OUT==========================
I know this is the "boring" stuff that most people do not care to see, but just thought I would share that with you since I didnt show anything about the SNMP in my last video, although I did mention it.
Been making some changes to the BUM System web pages that are served through Microchips ENC28J60 10Base-T Ethernet controller.... Eventually I will have a much better interface, for now I had just modified Microchips sample web pages to show functionality of the web server, those pages do not really have anything to do with the function of the system anyway
If I do not make it into phase 4, I will still keep working on this system, atleast then I wont have to abide by any constraints and really put some "bells and whistles" on it and not have to worry about BOM cost limits and such. With all the ideas I have been getting and some of the feedback, I have been thinking of "re structuring" the system anyways and possibly improve on the user interface by using an LCD (less power consumption than the VFD I am using, especially if LCD has LED backlighting.) with Touch screen at the console and use the touch pads as some other way of user input, such as for a remote user interface by the shower itself, that way once I implement my variable flow valves, the user would have a way of adjusting the temp or shut off the shower without having to walk accross the room to do so, or change songs on the play list, etc.
Also, I have been thinking of eliminating the on board power source and making the system compatible with a mini ATX Power supply, that way I could reduce the size of the main console, and I would be able to use the ATX's Standby function to put the system in low power mode to be able to save on energy when the system is not in use.
I will have more new videos posted on You-Tube of my projects progress and current updates
Just waiting to see what the judges have to say now.
12/10/2008:
Finally received my new RFID Interrogator module.... Have done the initial coding and testing for the module, it seems to be working quite well, I just need to work on the reading routine for it, I need to add some kind of timeout for the UART so if a tag is not scanned within a few secs or so, the routine should time out and exit instead of constantly waiting for a tag to be read. Since I am keeping the Reader disabled until someone wants to scan their tag that way the power consumption of the module would be kept to a minimum.
Just waiting for the ENC28J module to get here and I will have the TCP_IP stack running also, I have decided to scrap the 433Mhz transceiver for now, I will have the PC end application communicate with the BUM System over ethernet instead.... This way even from work (or anywhere there is Internet access!) I will be able to monitor and override any functions if the need arises...
So all in all, my software is slowly getting done.... Given the fact that I am still learning all of this in the process, I seem to be making better headway than most especially with some of the Microchip libraries.....
Still trying to figure out how to do my next video and show how this thing functions as a whole.... But I will not be able to do that unless I get the wiring done in the bathroom... I doubt people would want to watch a walk through of my code!! (That would be boring!!) So I am in the process of editing my new video update to make it a little less "boring" to the masses.....so stay tuned.... more is on the way.....
12/04/2008:
Well, it seems like the holidays are keeping people busy, have not heard from anyone in the community/ Judges for a while.... But just to give you guys an update this is what I have done so far:
All sensors and AC interface modules are complete, jut working on more code to get them to all work more efficiently together. I had a mishap with one of my power supply rails and caused me to purchase a new RFID reader, and a new Transceiver IC for the PC side application. ( I should have connected them to my own Power supply that I built and they would still be functional, another lesson learned I guess!!)
I have been working on the file system for the SD/MMC interface, I have that fully functional.
I have all Analog sensors connected to the ADC's fully functional.
All digital outputs to control the lighting, shower, and faucet fully functional, right now the faucet and shower are just on or off, the user still has to manually adjust the water temp via the knobs. I am still working on my "Variable Flow" valves which I am designing my self, these are basically standard on/off ball valves that I am connecting mechanically to stepper motors to be able to control the fluid flow, so the system can adjust the water to the right temperature set by each individual user in their personal prefferences.
Touchpad for user interface is fully functional, just have to add a little more code to provide more error detection, the users have to swipe their finger accross 4 pads in a certain direction/timing to "unlock" the touchpad, this way users cant accidentally activate any of the outputs by mistake. I was going to make the user swipe their tags to activate the touchpad functions, but doing it this way, any user can still activate other functions that dont require user identification. The faucet, exhaust fan, and the lighting are still "automatic" funtions that do not require user authentication or touchpad use, only the shower requires a user to swipe the RFID tag to activate....
I will also be possibly adding the capability to "stream" audio form a PC to the bathroom, or possible adding the ability for the user to be able to listen to their favorite Internet radio stations while in he bathroom... (this of course will be tha last thing I will do since this is just something I am adding to the system to give the user more options, but it is not necessary to get the system fully functional.)
I am also going to implement the Speakjet IC from Magnevation,The SpeakJet is a completely self contained, single chip voice and complex sound synthesizer. It uses Mathematical Sound Architecture tm (MSA) technology which controls an internal five channel sound
synthesizer to generate on-the-fly, unlimited vocabulary speech synthesis and complex sounds. The SpeakJet is preconfigured with 72 speech elements (allophones), 43 sound effects, and 12 DTMF Touch Tones. Through the selection of these MSA components and in
combination with the control of the pitch, rate, bend, and volume parameters, the user has the ability to produce unlimited phrases and sound effects, with thousands of variations, at any time. This is not recorded waveforms or sound fragments but truly synthetic sound. This of course is also an optional part of the system, not necessary to get it fully functional, but I just thought it would be fun to have the system synthesize its own speech for prompting the users.....
New RFID tag reader should be in today, so I will get another chance to get that part of BUMS fully functional.
11/06/2008:
I finally got my C32 Compiler Key upgraded from the 16K student version to the full version, and I have my Real ICE installed and working, Thanks Microchip for the generous prizes, now I can delve into this C programming a little more, I have only been using C for pic MCu's since this challenge started, before, the most I have used is Assembly with a Pic16F84A.... So from the sponsors generous prizes I will be able to further my knowledge and add one more programming language under my belt....
Terry had mentioned in the video that I need to step it up a bit for the software phase, so for me just learning this language, it will be a great challenge for me to try and not let him down... I will certainly give it my best shot and hopefully what I have planned will impress a few people...
So if anyone has any suggestions on what else this system should do, or what other "out of the box" idea should be implemented?? Sometimes even the wackiest ideas are the best ones... look at BUMS, I never thought this idea would even make it through phase 1!! So any Ideas for improvements or more features would be greatly appreciated.
Thanks for voting for me and supporting BUMS!!
09/25/2008:
Well so far so good..... have all my components wired up and connected, been doing a lot of testing and now I am ready for the nitty gritty of things and get more in depth into the software aspect of this project.
So far I have basic functionality for all components in my software now just to get things working together. I have also started designing the GUI for the PC side application for basically just data logging, so I really do not need a fancy interface, since most of the stuff will either be displayed in a spread sheet style interface or graph, or both. i plan on making it to where "admins" can make changes to user settings either from the remote interface in the bathroom and at the PC side application. The Pic32 System will be equipped with an EEPROM to save some of the user settings and possibly an SD card for storing data in case the PC is down or off..... And I have also been thinking of using a PALM or Pocket PC for remotely accessing the system status and functions, just for the heck of it.... Also havent quite decided if I should also add an "Internet Radio tuner" to the system, so that way users can program in their favorite internet radio station and have it come on when they are using the shower!! Well these are things I am planning on implementing regardless just to add some more functionality out of the system.... Since this will eventually be all linked to one central unit that will monitor utilities used around the whole house....
09/10/2008:
I have managed to work through the I2c "bugs" with the MPR084Q Capacitive touch Controller IC...... I have most of my hardware PCBs done, just need to do more testing on stuff and I will hopefully have a Video to post on here of my progress....
The most difficult part I am running into is finding a Variable Flow valve that is "electro-Mechanically" controlled.... most valves I found so far are just an on/off solenoid valves, which with those, you can not vary or adjust the flow of water. I need 2 of these for the Shower, so each user can have a pre-set temp for when getting in and they wont have to mess with adjusting the water temp themselves with the knobs..... Anyone know where I can find such a thing??? I have even checked with industrial valve manufacturers, and apparently nobody makes these or I just havent found the right source yet....
08/30/2008:
I Finally got most of my prototype PCB's done, only have a couple more to go, I have also started fidling around with some code to kindof get familiar with some of the C Libraries......
I ended up building separate modules for each system component, to make it easier in coding and hardware debugging.... the final PCB will incorporate all modules in one PCB.
here is what I have in PCB's done so far:
Capacitive touch sensor controller PCB and touch pad (pic not shown for touch pad here)

TTL-RS232 Module PCB for the Vacuum Flourescent Display

AC Interface for AC loads

I now have most of my components collected, I just need to finish my interface PCB for the expansion board so I can start some coding.......

I have also Updated my sites worklog for this project....
08/27/2008 : Finally got my Touch pad interface PCB and my AC Interface PCB done. The AC interface PCB will control all the 110VAC outputs that will turn the lights and fan on and off, this PCB will also control the solenoid valves for the shower and faucet. I'm just waiting for some of my passive components to come in from DK and I will start testing the interfaces with the Pic32 Expansion Board, I have started writing some code, but need to get everything connected to the Expansion board for further testing. I will be updating my pics and stuff on my worklog posted on my site.
[Edit 5/3/08] Updated my site to show some pics of my project..... I'm going to be posting pictures and videos on my site until this site is totally functional..... www.morse-code.com/id155.htm
[Edit 5/17/2008] I am going to be changing my design entry. Since part of the final judging requires that you take your project to ECS in 2009, I dont think a bathroom will be portable enough to travel! lol. I am still going to finish the BUM System, but outside this challenge... I will still post all the work on my site, so those of you who are interested in following this project to the end, check my site for updates at www.Morse-Code.com.
[05/31/2008] Still have not come up with a suitable replacement project to use as a substitute. Everything I come up with so far still does not use the Pic32's full capabilities, but maybe I never will since the C Compiler provided is limited to 64K of code!!
[07/27/2008] I guess Im stuck at trying to figure out how to get my BUMS project to ECS if I make it that far, I didnt think I would even make the 128 for next phase, but I did! So I will continue on with this project and also figure out how to get it portable enough to travel while keeping full functionality.