Just over 2 years ago I purchased a wood-burning stove (actually multi-fuel) at a good price and we had it installed as a dry stove (i.e. no hot water). The stove actually had a back boiler, but at the time we couldn't afford the plumbing work and were quite happy to use it as a living-room fire. Now this was no pot-belly job. If you know me, you know that about once every 5 years I take the head staggers and this was a classic version (the last one was buying the MR2 sight-unseen and bringing it back from England). This stove is huge. It weighs 240kg (that's a quarter ton in old currency) and at full tilt can reach 500 degrees C inside and generate 21kW of heat, enough to run at least 10 radiators.
So 2 years passed and we had saved money from using less oil (a lot less) and thought we'd get it plumbed-in. This cost the raw part of £2k and is a beautiful piece of work, all done in copper pipe. So the plumber came to commission the whole thing and water started pouring out of the stove. Lots of water. There was a pinhole-sized hole in the back of the stove in the seam of the boiler. This being cast iron there is no simple way to repair it.
After much gnashing of teeth we decided that everything being equal it would be better to buy an identical replacement stove as we are sure we will still save money and it will pay for itself in savings on oil in 3-4 years. To give an illustration, in the last 2 years the cost of oil has risen by 30% while the cost of coal has stayed the same and the cost of wood has gotten cheaper as more people have entered the sustainable energy market.
I bought a USB-to-Serial converter a while back to play with that had the large standard USB plug (rather than a socket). These modules have a CP2102 chip on board which uses the 3.3V standard so the only issue I had with it was a level change problem from 3.3V to the 5V I'm using with my 16-series PICs. I turned up a very neat bi-directional solution using just one MOSFET and 2 resistors for each channel (see above). Even though the transistors are surface mount(i.e. tiny) this was easy enough to build and the USB converter now works a treat, so much so that I bought another one with a micro USB socket which I think would be more use mounted into an actual project. Not only that, but early indications seem to show that this version doesn't have a problem with the voltage level shift and is working quite contentedly with the 5V PIC circuits.I've been communicating with these units using the Gambas2 programming language under Linux. Gambas2 is similar to Visual Basic although the developers stress it is not a clone. Under Linux, opening a connection to a USB serial port is as simple as calling up 'ttyUSB0' and off you go. Try doing that in Windows! The next step is to use the bar graph programming example in Gambas2 and modify it to lift data from the serial stream coming in from one of these modules.