This blog will serve as a log for my electronics projects (and possibly other various random things I come up with). I am currently in the middle of several projects, and am also trying to get fresh video of some of my old projects (where available). Sadly, some of my projects were school projects and therefore I no longer have access to the gear to take pics/videos of.
Automated Plant Watering Project
One of these was my ATmega168 controlled plant watering project. The project consisted of an ATmega168, a pump obtained from one of those cheap dollar store water fountains, a vegetronix moisture sensor and a level sensor. The level sensor was inserted into the bottom of a water bottle to indicate a low level. The water bottle acted as the reservoir and the pump was placed at the bottom of the reservoir. Connected to the pump was a lenght of plastic tube that was run from the bottom of the water reservoir around the edge of a plant pot. The hose was plugged at the end and perforated along the edge of the plant pot using a dremel tool so that the holes all faced inward and down. The vegetronix sensor was connected to an ADC of the ATMega168 and the moisture content (as a %) was displayed on the LCD. If low moisture was detected, the pump would be turned on for a few seconds, then would sit for a while to allow the water to seep into the soil. After a bit of time had passed, the controller would once again check the moisture content and if still below the set-point, would repeat the watering process. This would continue until the set-point was reached. If the level of the water in the reservoir got too low, an audible alarm (really annoying tone through a small speaker) would sound to alert the user that it was time to re-fill the water. I have a video of this project that was taken using a cell phone somewhere, I will make a better attempt to dig it up after I have finished moving.
CAN car-puter project
Another project I did at school involved using the AT90CAN32 microcontroller in order to communicate over CAN bus. I created a network of addressed controllers that could all communicate with eachother to get a feel for the CAN libraries and settings. Once this network was working properly I took one of the units and interfaced it with a vehicle using the car’s OBD-II port. This allowed me to poll the car’s computer for any of the values available. I have a video of this project currently hosted on Vimeo here, but it is not the greatest quality and doesn’t do a good job explaining what is happening. This was actually our 3rd test run with the project, we were initially powering it through the OBD-II port but the power regulator got extremely hot due to the unstable nature of the power coming from the OBD-II port.
RFID Access Project
Finally, there was my Technical Report project. This project was an access control system that used RFID and a PIN to grant access. The main goal of this project was for me to interface as many different components and technologies as I could mash together. I used an Atmel controller to read the RFID tag which was transmitted wirelessly using an XBee Pro transciever module to my laptop which was running a VB (I know, yechhh! But I used C# in my MVC site for code-behind so using VB was just to be able to incorporate a different language) client program. The client program would receive the RFID tag # as well as the PIN# that the user would input using a matrix-format keypad. The RFID tag and PIN number were both checked against a SQL Express database and if the numbers were valid, access was granted. In addition to the client program that was running, I created a website using Microsoft’s ASP.NET MVC Framework which was a secured site that allowed regular users to view the tags and logs, and allowed administrators to add/edit/activate/deactivate tags. In addition to all of this, I also used a rotary encoder with a knob to act as a combination dial. Several of the features of the combination dial were adopted from suggestions/comments made by Matt Blaze during one of his safecracking talks. The current digit was displayed on an LCD and each time the knob changed directions, the first number to come up in the opposite direction was randomized to prevent robot-dialing. There was also a timer that would de-activate the device if the knob was turned more than 360 degrees without a minimum 100 millisecond pause, again to prevent robot dialing. Sadly, the only video I have of this project is from the early RFID and wireless testing stages which can be found here.
As for the rest of my projects, they were either completely undocumented, or were projects that I still have the equipment for, and plan to re-record Video for (ie: Emotiv controlled stuff). I currently have a different RFID reader (the ID-12) which I plan on using for a project as well as some cool stuff like video overlay modules, GPS receiver, and of course the Emotiv EPOC headset. I will be documenting and posting videos of these projects in the near future, but for now I’m going to get back to making stuff 😀