I can't believe it has been over a year since my last update - I have been a little side tracked onto other projects. Too many projects too little time... :o) Long story short, I have discovered a few things on this project I think are worthy to report.
The FET I used to turn off the sensors etc (ZVP4105) did not fully turn on (Vth too high) which caused a drop in the supply voltage to the sensors etc. This was just a FET I had laying around at the time and not quite suited to the job. This was swapped out for a more suited part which now works perfectly.
I also discovered that the power consumption was still too high, around 40mA or so more than expected. I found this was consumed by the debugging circuit which I forgot to disconnect, removing the jumpers on the Launchpad board resolved this issue. I still ended up fitting a larger solar panel, +/- 3/4 times bigger, about half the size of an A4 page. The software was also tweaked a little to wake up at longer intervals apart at night.
The ESP8266 works very well and is put into low power mode by its power down pin rather than turning off power to it. (Did not want to re-initialize anything at wake-up etc. although I don't think that is necessary anyway.) Come to think of it, an ESP-12E board will be a nice solution and easy to program in Arduino.
Initial tests in the post box went OK. I found aligning the sensors in a small space challenging and ended up having both the IR diode and the receiver on the same side, i.e. mail not breaking the beam, but rather reflecting it. After a lot of tweaking and also trying another IR sensor (from http://maxembedded.com/2013/08/how-to-build-an-ir-sensor/), I am a little stuck. The sensors work perfectly on the bench, but don't work reliably in the postbox. At first I thought it was stray IR from sun light blinding the IR from the LED, but I found testing outdoors everything worked fine. I suspect it may be IR reflections inside the postbox or something along those lines. I have to do more testing to get to the bottom of this, but other than that everything is working great.
I have also added some Test Driven Development based unit tests to the Digital IO Driver which is pretty handy. A little painful to add after the fact, but well worth the effort as a learning exercise of TTD for Embedded systems.
Hopefully my next update will not take another year. :o)
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.