When you begin a project its important to identify what you hope to accomplish or learn in the process, This project will have plenty of both for me. First and foremost I would like to produce an inexpensive Ethernet enabled controller which I can interact with via the Internet. The device will be a product of its programming however, meaning that depending on what I need it to do it should also be able to…
1) Host web content and display real time data via the web
2) Send emails or alerts when necessary
3) Monitor and interact with external devices, sensors, and appliances
4) Allow control of the above mentioned devices via email or web based interface.
5) Log Network activity to the SD Card.
Its important to note that I don’t plan to incorporate relays or other direct appliance control hardware directly into my design, I’ll probably just end up making a bank of I/O pins available for external connections from sensors or relays.
As a rule of thumb its always a good idea to do some research and find out if anyone has done some of your work for you, in this case it happens I was able to find an excellent project to draw from, several years ago Ian from HackaDay posted an excellent How-To on building an embedded web-server which has a lot of the same functionality as my project. Its notable to mention that Ian is also the main developer of the very popular Bus Pirate module. There are also several other good sources of information about the ENC28J60 such as this article on Electronicfr.com or either one of these articles from tuxgraphics.org
So in the footsteps of giants I will lay out my project in the next several posts from Component Identification through Design, Prototyping, Building, Programming, and Testing.
As a final note, because I’m borrowing from other open source work and projects it seems only fair that I reciprocate and deliver my project documents and code as open source, and so it shall be.
