I recently made a block heater for my yaris. It is an externally mounted one, much like the one supplied by DEFA here:
DEFA Warmup
Just click on the yaris 1.4d4d bit and you will see a pdf page about it.
For whatever reason toyota dont have a frost plug to fit a heater directly to the engine. Instead they have two little ports to connect a heater through some flexible pipe. Anyway, i made my own and it heats up like a mofo. This heat goes into the engine too, only to flow out the top radiator hose! The thermostat is on the return line to the engine from the rad so there is no resistance to the flow of heat from the engine. Thats heat i'd like to keep in the engine while i have the block heater plugged in. It still warms the engine to about 40c but the heater gets to about 90c so thats a fair bit of waste.
One solution i thought of was to make up a spring loaded valve that is fitted to the radiator feed hose and is closed when the engine is off but opens when the engine starts. Spring pressure would be critical, as would reliable opening of the valve. A flat valve seat would be best in this case. Conical, like an exhaust valve, could stick shut. Also, minimal resistance to flow while open would be very desirable. I'm reasonably handy with a lathe so making one of these would be easy enough and, dare i say, enjoyable!
But i want to see if there are any other avenues available to me. Like a steep U-bend in the hose. This would cut out thermosiphoning much like in a domestic hot water cylinder and also be much more reliable. I like reliable.
ollie