Skip to content

Bulk Upload of Historical Weather Data to Wundergound

A few months ago I bought a weather station but only lately registered with Wunderground and was slightly dismayed that the software I use (Cumulus, which is heaps better than what the station supplier included) does not post historical data; it only uploads to Wunderground what it downloads from the station when Cumulus starts up.

It seems there is no “off the shelf” way of doing this so here is a how-to-do it. The steps should be applicable to any weather station software that stores the data as a “CSV” or formatted text file, with a little bit of fiddling. I guess a similar process works for weather upload sites other than Wunderground too. The steps are:

  • get the stored data into a spreadsheet. This is easy for Cumulus since the data is stored in a text file with commas separating the values and the Cumulus help file tells you what each column is.
  • convert the units. I prefer SI units but Wunderground uses American conventions.
  • create a URL (web address), one for each data record to be uploaded. The structure for these is documented on the wunderground wiki. You can simply copy these into a web browser (Firefox, Internet Explorer etc) one by one but once you’ve had the satisfaction of seeing it work, the remaining thousands of records need a better method.
  • use wget to process a batch of URLs. Wget is free open source software. Windows users can find in installer here.

I’ve uploaded an example spreadsheet that does the conversion and creates the URLs. Notice it has three sheets and that the “Conversion Factors” also contains the base of the URL. This must be edited to have your station name and password. NB there is also a Celcius-Farenheit conversion and the peculiar column L on the “Converted” sheet is needed to get a correctly formatted URL from the date-time combination.

To use wget I copied the URLs into a “.txt” file, one URL per line (just drag down the entries in the column of the spreadsheet and copy/paste into an empty text file) and created a small “.bat” file containing:

PATH “C:\Program Files\GnuWin32\bin”
wget -v -o log.txt -O responses.txt -i “urls Apr12.txt”

You may need to alter the first line depending on where you installed wget. The second line assumes the list of URLs was saved to “urls Apr12.txt”. The “log.txt” file contains verbose logging of each “wget” and the “responses.txt” file should just contain a long string composed of one “sucess” for each sucessful posting of data. If it doesn’t, something went wrong…

ScratchBoard Emulator using Arduino Uno

Here is a circuit and arduino code to approximately emulate a ScratchBoard; there is sound, light, a button and four sliders but it isn’t a drop-in replacement.

Zip file download (55kB) contains a schematic (as a PNG graphic and as a TinyCAD file) and an Arduino sketch.

ScratchBoard Emulator Schematic (click image for full-size)

Various notes:

  • The electret mic used was an off-the-shelf component from Maplin Electronics.
  • the sound circuit is essentially “pinched” from the ScratchBoard (NB the circuit is intended to capture amplitude and not the actual audio waveform)
  • the 250k variable resistor provides some gain (amplification) control
  • there are some configurable parameters for the sound sensor in the sketch
  • remember to change the COM ports in the Arduino IDE and in Scratch so that they are not competing (if the Arduino is on COM3 then only one of the IDE or Scratch can use COM3 at a given time)
  • the arduino pin  numbers in the schematic and in the sketch are matched so it should “just work” (build circuit, upload sketch, run Scratch)
  • configuring things in Scratch is a bit cryptic: you need to right-click on the “sensor value” block to show the “watcher” then right-click on that to set the COM port.
  • feel free to adapt and share… all is under open licence.

 

TinyCAD Library for Arduino

Here is a small library for TinyCAD for Arduino Uno R2 and R3 owners. Also included is a symbol for the 1602 LCD module. TinyCAD is free to download and use but is Windows-only. I find it very easy to use for schematics (which I prefer to Fritzing FWIW).

Download: Arduino Library (zipped).

Please let me know if there are errors.

Model Engineers Depth Gauge

Having recently faced some cylinder drilling, I finally got around to making a depth gauge. It took about a morning. The sizing is very-much determined by available parts, starting from the springs and having some 3/8″ OD brass tube with nice thick walls (ID approx 1/4″) to hand. Two springs gave me about the 1 1/2″ of gauge travel I wanted.

No dimensioned drawings this time, but see below for a photograph of the disassembled gauge from which you should be able to work it out. In lieu of drawings, here are a few notes…

  1. The end cap was made first, drilled to about 1/64″ less than the OD of the brass tube. You can see where I then turned down the tube to get a nice press fit. I’m very fond of press fits: most satisfying and clean. If you over-do it then you can always braze/solder but it never looks so nice. I have a small arbor press.
  2. The other end of the tube was threaded using ME 3/8″ x 32 TPI since this matches the tube OD and is a fairly fine thread.
  3. The 1/4″ spring-stopper on the 1/16″ central “spike” was another press fit thanks to some metal forming as I parted it off. Don’t bend the spike!
  4. The thumb screw was made by tapping (5BA) a shaped and parted-off piece of hex stock, screwing a 5BA cheese-head screw firmly into place with a bit of thread-lock and then turning away most of the head. NB: face, chamfer, drill, tap, insert screw and turn-off head are all done without removing the work from the chuck.

The images above are links to larger photographs.

 

Liking LibreCAD – Free cross-platform 2D CAD

I’d been using DraftIT for a number of years when I wanted to be able to work on plans using both my home computer (Win XP) and work laptop (Ubuntu Linux) while the family uses the home PC. After some searching, I came across what is now called LibreCAD. It takes a little while to adjust (I suppose this is always the case) but I must say “it works for me”. It isn’t too hard to pick it up by trying and it is possible to do simple stuff without having to understand everything it does.

Best of all, it saves as DXF format, while this only comes with the “Pro” version of DraftIt which costs £99.  DXF is a de-facto standard so this makes the drawings more sharable and – maybe more important – gives me more confidence in being able to read/alter drawings for longer (e.g. if the makers of DraftIT vanish).

Recommended!

Making Elmer’s “Tall Vertical Open Column”

The late Elmer Verburg designed quite a few relatively-easy-to-build model engines. All are made from bar stock. The second one I have made is #32, the “Tall Vertical Open Column”. As many people do, I made a number of minor changes. These are described here, along with some construction notes I wrote to help myself, some observations and some pictures.

The plans can be found online in several places: there are several “Yahoo Groups” as well as “jon-tom.com“. I have also uploaded them (see “Files” section).

Notes and Comments

I opted not to paint the base and top platform, having previously made a mess of painting. Instead, I left them relatively “raw”: the as-rolled large faces of the bar stock were very lightly cleaned up and the edges were draw-filed. I’m fairly happy with this approach and like the contrast with the shiny flywheel and brass components.

In the interest of simplifying construction – and reducing the need for careful working, which is not my strong point – an alternative method of constructing the eccentric sheave and the arms that ensure a straight-line motion of the piston rod were used. See the “Files” section below.

The only problem encountered on assembly was that the straight-line that the arms followed did not match the piston rod. It is worth making the holes on the base plate of the cylinder assembly a bit slack to allow for adjustment but I ended up having to insert a 15 thou shim under one corner to get the motion to be “good and free”. I suspect that this is due to having used quite small AF hexagon rod for the columns such that it didn’t pull itself square on tightening. On the other hand, it could simply be a misplaced hole.

Quite a few of the joints leak slightly – see the video – since I just left them as metal-on-metal.

Some other examples on the web:

Files

 

Death of a Corsa (1.0 Twinport)

The sad remains of my Z10XEP engine.

The piston rod fractured just next to the big end bearing with “intersting” consequences. It didn’t sound as bad as it looks; it sounded like there was just something like a branch caught under the car. Initial diagnostic scan was P0335 – CKP Sensor A Circuit Performance – because pieces of swarf and broken piston ring were stuck to the sensor (it is magnetic).

The Big End (showing its fracture)

The Piston Rod

The Remains of the Piston

LED Caving Lamp – Adapting an “Oldham” Caplamp

Some incomplete notes from a recent conversion of 3 old cap lamps to run off white LEDs extracted from a cheap (yet astonishingly bright) headtorch and powered by Lithium-based cells salvaged from an old laptop battery. One of the 3 caplamps was from a 1991 Apex 2 and the others were ex-NCB pit-lamps of unknown age.

Raw Materials

  • some pieces of brass (see below)
  • a 5W, 270 lumen headtorch powered by 3xAAA cells. Cost less than £5 incl postage from Hong Kong via ebay. I bought a few cheap torches looking for suitable de-mountable modules (see the photos below). A simple on-off type was chosen rather than multi-mode (bright, dim, flashing…)
  • A pair of 18650 3.7V Lithium cells with solder tags or salvaged from a laptop battery
  • A cheap “travel charger” for these cells. I bought a pair of cells with a charger for about £5 via ebay and use the cells in a hand-held zoomable torch that serves as a caving backup and dark-corner-probe.
  • A potting box and potting resin (Maplin does suitable)
  • Heat-sink compound (see Maplin’s again)
  • a few solder tags, a couple of M3 machine screws
  • 4x #40-40 stainless steel cap-screws at least 3/4″ long (this is an American standard thread. Try radio control model suppliers)
  • An old caving lamp
  • A through-headset charging part. I had one of these “lying about” but they may be hard to find these days. If so, adapt the design with charging connectors on the battery some-how.

Headset- Components to Make and Fitting

Remove all the components from the headset except the  negative wire (fixed to the body) and the switch moving part and its spring-contact. I actually removed all parts to overhaul everything.

See the dimensioned drawings and photo of the finished result below (both are available in larger size by “clicking” the image). The dimensions on the plate are approximate; be prepared to make some adjustments and in particular note that the photo shows a small cutout to clear the on/off switch. I tapped the holes to secure the LED modules but you could just drill to clear an M3 screw and use a nut on the rear.

Cap Lamp Parts to Make

Cap Lamp Assembled

The smaller part on the drawings is a pillar that will be located at the top of the lamp where the pilot lap is. This needs rounded corners to fit. For the Apex 2 caplamp, this fits neatly without any work on the caplamp body. For my other two, there is a lump to machine away. I used a slot-drill in a pillar-drill but a router-cutter would probably work. Beware that this process exposes some brass. This brass is actually part of the (negative) circuit embedded in the body and it must not be allowed to contact the pillar. The pillar should, however, have a good contact with the body in order to conduct heat away from the LED. I simply milled a recess over it to avoid contact.

Heat-sink compound was applied between the LED module and the plate and both top and bottom of the “pillar”.

The #4-40 screws will have to be made the correct length: 2 at 3/4″ and 2 at slightly less than 5/8″ (both dimensions include the head of the cap-screw – sorry I failed to measure thread-length.) . These screws fasten the brass plate to the cap lamp body. “Clear” in the diagram means that the screw will easily pass through; these are plain drilled holes.

The wiring is mostly obvious from the photograph. The negative wire from the LED is attached to one of the switch contacts using a solder-tag. The other switch contact is not used and was not refitted. Don’t trust the pictures – work it out!

Small padding washers are used for the LED module hold-down. These could be old inner tube, although I used some gasket paper. The idea is just to reduce the risk of damage.

The reflector will need to be sawn off as in the photograph. A Dremel tool (etc) is quite handy for this. Find a way of marking off the cut height or mount the Dremel at a fixed height over a flat surface to get this cut neat, even and to avoid cutting off too much. The LED module I used had quite good combination of central beam and spill-out and the end result with the reflector as shown is quite satisfactory.

Battery Pack

This is just a pair of 18650 cells in parallel cast in potting compound. A piece of rubber was placed beneath the cells to avoid direct contact with the box anywhere. Make sure the hole for the cable is tight otherwise compound will leak out. I would have used a grommit but bought the wrong size. An outer protective layer of inner tube and gaffer tape finishes the job off. This will he helmet mounted and only be used for light caving so is not “bomb proof”; I do not expect to bash my head against many long awkward passages.

Charger

This basically involves mounting the “travel charger” on the side of a box, having soldered mains supply to its circuit board and soldered some take-off wires for the head-set contacts. It is probably best to avoid charging via headset at the same time as separate cells.

Finished Product

NB: the Apex 2 headset was bodged to allow for through-headset charging.


Making Dice in Brass (or other metal)

Here are some notes on making dice (or just one die) in brass (etc) in the metalwork shop, suitable for a total beginner. I did it with my 10-year old. I used some half-inch square brass stock.

  1. Set the stock in the lathe using a 4 jaw chuck. Get it close to centred by sighting the edges against the cutting tool. I tend to face off with a TCMT (carbide tipped) tool where the tip points away from the tool post (i.e. a 60 degree angle to the work). I used my top speed of 1800RPM but you could go faster.
  2. Face it off.
  3. Mark out and cut off slightly over 1/2″ from the stock, file it down a bit to remove the unevenness.
  4. Fly-cut (1″ or slightly larger fly cutter) the sawn face to get to a cube.  Use a speed of about 1100 RPM and work in stages of measure-then-cut. This is quite easy even in a small mill/drill. Lock the table in position and the head in place while cutting. A digital scale on the vertical axis is really useful for this (the vertical fine-feed on my machine is hopeless) . An alternative is just to face-off this end in the lathe but I find it easier to finish off at the correct length flycutting and it demonstrated the technique.
  5. Gently remove rough or sharp edges with a fine file or emery paper.
  6. Set up an arrangement like the photo. The tool clamp provides a positive location so that the die can be turned over and around and returned to the same position.
  7. Turn the cube over so that the previously-turned face is upper-most. Fit a centre-drill into the chuck with a point of the size you want the die dots to be. Traverse the milling table so that the centre of the face is lined up. The marks from the facing-off operation should be sufficient and give a nice appearance. (this is why you need to get it “close to centred” in step 1). Make sure  you remember to take account of backlash in the leadscrews. I made sure I approached the centre by turning the handwheels in a clockwise direction. Zero the collars or mark off the handwheel positions carefully.
  8. Drill to depth. Set the depth-stop and drill again to meet the stop.
  9. Remove the die, rotate to another face, snug-it up against the tool clamp and secure the die. Drill another centre hole (say for the “3” side) then a final hole (say for the “5” side). Remember opposite sides of dice add up to seven.
  10. Decide where the corner dots will be and traverse both axes of the milling table to position the cube appropriately. Traverse the same distance for each axis. I opted for a whole number of revolutions of the handwheels for simplicity. Remember to turn them the same way as in step 7 to mitigate for backlash.
  11. Reclamp the table and drill a dot. Loosen the milling vice and rotate the die by quarter of a turn. Repeat until you’ve made the “5”. Use the same process to make the “3”.
  12. It should now be obvious how to make the “2” and “4”. The “6” is made by making a “4” then return one of the milling tables to its “zero” position (step 7). Reverse back past “zero” by about half a turn of the handwheel them advance back to “zero”. Clamp the table and drill. Rotate half a turn and complete the last hole.
  13. Polish it up, slightly round off the edges and corners and you are done.

My daughter was well pleased with the result and rather impressed by the simple little tricks that make it quite easy to get a neat and regular result with minimal fuss and fiddle: the trick with the tool clamp, rotating the die, the depth stop. If I were to make another, I think I would place the “spots” slightly further from the edges.

Wallace & Gromit Inspired Arms in Brass/Steel

Here is the product of a fancy, something less demanding than making something that really works. It was made relatively quickly from a page of sketches I made over a cup of coffee so it isn’t perfect. I’d probably change some details if I made another.

I’ve written some construction notes and transcribed my pencil sketches to a CAD drawing in case anyone finds that useful. I’d be pleased to hear of any improvements anyone makes.

Download: Zip of plans, construction notes and larger pictures (770kB total).The CAD plans were made using Draft-IT (by CADLogic) but a lower res GIF is included in the zip)

Cheers!