I have updated my oven project to use Agents and not rely at all on Xively or COSM.
the electric imp IDE and service is just great for doing this kind of development. The various datalogging options including copy/paste from the planner log and the robust crash handling, etc. have served me really well.
I am cheating a bit here in creating a new post for my old project but the software and operation are so different now…
Here are links to the source
and here is a link to a project page that I built on Tumblr. There are some videos there (time-lapse) showing the action. I know it is boring for many but if you are trying to build something at all similar I think it will help to have this reference.
Using a Tumblr static page is a bit of an experiment. I know that others have expressed interest in standardizing a way of documenting projects. In this case an Instructable is not appropriate because so many others have documented converting toaster ovens to reflow ovens. Nobody does it the same way twice and also my hardware is just not that presentable. A step-by-step just was not going to work. Likewise github could be used for code but my source code is extremely unlikely to be maintained or forked so all I needed was a repository so others can have a glance at it. I used Dropbox for that.
I tried to keep all the logic in the Device code even including the ‘enabled’ states of the radio buttons. The Agent acts almost strictly as a pass-thru and the web page acts as a datalogger, provides visualization and obviously provides the UI.
I also log each oven cycle to a new .csv in my web server using a PHP script but this part could be omitted.
The page could have been served by the agent (self-hosted) except that Highcharts does not provide SSL (https) to serve their library and my web hosting account will also not do that. I use just http and that allows everything to work well without cross-domain errors.
and hide the agent url by using local storage. i got that bit and also got my start with jquerymobile from member @controlCloud - many thanks!
The code for queuing http responses came from beardedinventor - again many thanks!. That enabled me to set up long-polling for quick response and to allow any browser that loads the page to stay in sync. I tested with Android, Chrome, Desktop Safari and Firefox. I think it works with all of these. I never could get it to work with the Kindle Fire and was not successful getting debugging tools hooked up.
The project page will also link to page in which I explain the development of the P, I and D constants and also on in which I show one possible way to attach a thermocouple to the PCB.
I have used this oven to make several boards with Pb solder and have used it as a preheater. I have not used it to do lead-free yet.
I absolutely welcome critical feedback on the code, etc. I do know that my Device code is a little hard to read, sorry.