When subbmiting my application to join this road test, I set myself 4 success citeria:
Success Criteria: I will deem the project a success if:
•It can accurately and reliably display the number of messages in my inbox up to 12
•The system can cope with more than 12 messages in a way that does not result in catastrophic failure
•The display can be read in darkness with an LED backlight
•The unit is powered by a single DC wall wart
My project has been successful in meeting all four of these criteria. The final version of the multimeter was able to display more messages than expected, and additional messages merely left the needle in the highest position without moving any higher.
The led backlight was also incredibly successful. My original design featured a single blue led to provide illumination due to the requirement to use a motor controller. By hooking the display up to the arduino with resistors I was able to use simple PWM control to manage the display, allowing me to then use an led driver shield to implement an impressive three colour backlight that not only allows the display to be read in darkness, but also provides an additional means of displaying the number of messages. The one failing with the backlight is that it is not quite as bright as I had hoped. Due to space constraints, the LEDs had to be mounted in the case in a way that left them pointing more towards the inside of the case than the top of the display. The backlight is still useable, but the colours are a little less content than I had hoped. However, this shortcoming is partly made up for by the fading effects enabled by the driver shield. Using the shield, I was able to set up a system so that when values on the display changed, the colours of the backlight would neatly fade into the new shade instead of suddenly changing. A similar fade also occurs when the backlight is turned on or off.
Finally the unit was powered with one dc power brick to the use of a ubec to provide regulated power to the yun. The original idea was to power the unit with a "wall wart" style adapter with the transformer moulded directly into the plug, but I instead opted for a "power brick" unit with the transformer connected to mains via a kettle lead. This makes it fay easier to extend the length of the power cord as the kettle lead can easily be replaced. It also had the advantage of allowing me to recycle a used power adaptor that would otherwise have gone to landfill. The main intention of the "single wallwart" objective was that the unit should not need two plug sockets, so this can be considered a slightly modified objective to better utilise the parts available.
My original apapplication also highlighted some areas of the project that appears to potentially be difficult. Theses were:
• Writing the code for the parser
-Whilst I do have some experience of python, I have only coded something like this once in the past
•Calibrating the pwm
-I will probably needs a separate program to test pwm values via a serial terminal. I will probably use an arduino Leonardo for this, simply because I feel more confident using it
•Comunicating between Linux and the Atmega
-Having never used a Yun, this appears to be one of the challenges specific to the platform
Calibrating the PWM turned out to be incredibly easy. The fast upload times of my new Uno board made the use of a serial connection unnecessary, and trial and errror found appropriate values surprisingly quickly. The other two areas were even harder than I expected. IOT is incredibly difficult. The internet is a huge, wonderful resource, but tapping into it can be hard. The yun made the creation of an iot device possible for me, but writing the code for it was incredibly challenging. Plus, it didn't help that the site I was working with had some badly timed issues .
I would like to finish this post by thanking all the people who made this project possible.
Thank you to the element 14 staff who arranged this design challenge; your work creates worldwide enthusiasm for electrical engineering and is an excellent opportunity for both aspiring and we'll versed engineers.
Thank you to the network engineers who tracked down the issues with the site and rendered it useable for this project, and sorry about the bad timing.
Thank you to all the people who commented on my posts, you provided rays of inspiration for this project and helped keep me motivated.
Thank you dad for letting me use your multimeter, you can borrow mine if you want.
And finally, thank you Genesis for writing some excellent music for me to listen to whilst working.
This project has been an immense journey for me and I am glad that it turned out to be such a success. Once again, my thanks to everyone for making this such a great success.