(beagle as in 'beaglebone black', which is not a dog by any means)
almost exactly three years ago i built a minimal-budget online weatherstation for fido, john sinclair's fraser island defenders org. that station was installed at happy valley and it's been working pretty well ever since - well enough that we followed it up a few months later with another station which ended up at eurong.
both of these were build on a shoestring budget, and for the second i used the same fairly yucky 'authentication' chip setup on perfboard and hacksawed 2mm 2x10 pin connector, and everything was housed in a really ugly fashion inside a weatherproof box.
recently fido got a budget together for four more stations. about two months ago we started acquiring the bits and pieces for these stations, and this time i decided to make everything a bit nicer and easier to assemble.
this new litter of beagles will be housed decently: i designed and 3d-printed a custom enclosure that attaches to the back of the weather station console. thanks to the odd geometry it was a bit annoying to print but the resulting four dog houses look good and work really well.
this time i've also decided to 'design for manufacturability' (bwuahaha - translate: i wanted less messy manual soldering and no connector butchery). this meant switching to a different pic microprocessor, an 8-pin PIC16F18313, and making a printed circuit board with keyed connectors to make everything a bit more fool-resistant.
the 16F18313 is a little powerhouse, and i found it amazing how much functionality microchip crammed into this chip (datasheet for the 16F18313: 471 pages. 16F88: 228). at au$1.31 it's also much cheaper than the older PIC16F88 i used for the first two stations, and thanks to freely reassignable pin functions it's much easier to route a single-layer pcb for that processor.
but getting it to actually work was immensely painful: none of my infrastructure would deal with this fairly recent chip. my version of xc8 wouldn't compile for it, pk2cmd would not program it (nor would mplabx talk to my pickit2). lots of swearing and fiddling later i've got a working PK2DeviceFile.dat for that chip, and proceeded with the pcb making.
after a little time with eagle (and a brief detour to build a small drill press for drilling the circuit boards) i made these four boards in the most pedestrian fashion possible (read: using the toner transfer method). soldering on the smt connectors was easy, using solder paste. and everything did work the first time round :-)
in about a month the four stations will get installed on fraser island and i'll post an update when they're live.
you can find the updated code for the new pic and the board design (in eagle format as well as printable image) at https://github.com/az143/davis_weather.