Before I started my project, I had several goals that I wanted to see in Reginald:
- Have one battery power absolutely everything (redundant technologies cause complications)
- Implement a method where the video feed and the controls work through the same technology. This simplifies Reginald for the end user. The user will only need to connect to Reginald in one way and not two separate ways which is what I often see in most projects that implement video feeds (Again, redundant complications; saturate two separate links to one).
- For the user to be able to interact with Reginald in real time.
- Encrypt Reginald so no one can just simply type in the IP Address and access him
- Have one single input/output board to saturate all the circuitry. This way: Reginald is much cleaner in appearance, and will create a sturdy electric foundation to connect my peripherals to.
- Have a live console bringing information to the user.
- Code a GUI that looks good, can be controlled via key commands and is feature rich.
- Simplicity in end user experience; so any layman could operate.
- Most importantly: set up the network connection to allow access from anywhere.
Reginald is a very useful project for the end user. If a user is interested in checking on his or her house from school or work, that person would be able to do so from an infinite amount of angles. The user can move around the house wirelessly and greet others. If you have children you can let them know you always have your eye on them!
More importantly, the biggest use featured in this Instructable is the implementation of the UDP technology. If someone can interface any physical and/or electrical object to an Arduino, that person could be able to control this object wirelessly in real time from anywhere. This is very useful. Reginald is an example application for UDP, a highly under utilized technology among projects.
What will this Instructable provide?
This Instructable will introduce Reginald as a whole and then go into a breakdown of every component in detail.
Performing all the necessary networking to accomplish this can be very complex and involved, however this method of communication is clarified and explored through this Instructable. I saturated approximately a solid month of research and troubleshooting into a simple guide; I provide troubleshooting guidance and example tests along the way.