1 year ago

Gold panning with Raspberry Pi

Seeking a more accurate timing system for the Australian Gold Panning Championships, Daryl Binks made his own electronic timers. Phil King digs for nuggets

There’s a ‘gold rush’ happening in the tiny township of Blackwood, Victoria. And a Gold Panning Timer built using Raspberry Pi is at the heart of the event.

At the sound of the starting horn, competitors at the annual Australian Gold Panning Championships search for gold pieces hidden in buckets of gravel. When a contestant thinks they’ve found all the nuggets in their bucket (the exact number is unknown to them), their finishing time is recorded, adjusted with a three-minute penalty for each piece missed.

Naturally, an accurate and reliable timing system is vital. “In previous years’ competitions, each [competitor] bay was timed by 15 volunteers using stopwatches,” says Daryl Binks. “As this is quite inaccurate and prone to discrepancies, a more automated solution was needed, especially since the competitors are getting much faster and the finishing times are closer together.”

Gold Panning Timer Raspberry Pi

The competitor presses the large stop button when they’ve finished panning for gold

Gold Panning Timer with Raspberry Pi

Tasked by his brother Marcus – Victoria Gold Panning Association president – with finding a cheap solution for an electronic timing system, Daryl spent 18 months creating his own wireless timers. Each timer comprises a Raspberry Pi Zero, LCD, RFID reader, and a big red stop button: “These are actually emergency stop buttons which are waterproof and when pressed they will lock and stay pressed until released.”

After considering 3D-printing the timer case, “Due to the cost restrictions and the requirement to be waterproof, I ended up using a kitchen food container,” reveals Daryl. Each timer box is mounted to a backing plate fitted with a metal roof which serves “to help keep muddy water off the display and as a solid mounting for the stop button.”

Gold Panning Timer: Modular design

One of the design considerations was to make the timers modular so that they could be assigned to any panning bay, allowing easy replacement if needed. This is where the RFID reader comes in. “When the timers first boot up, they are not assigned any specific bay number,” says Daryl. “It will wait until we scan the specific bay RFID tag number before it knows which bay it is.”

Once all bays are assigned, the starter PC loads the heat information from a spreadsheet and broadcasts it wirelessly. “The timer picks out its own bay number information from the message and displays the heat number and competitor’s name on the LCD,” explains Daryl.

Hit the button

At the starting horn, the PC broadcasts a ‘Start’ message to the timers. When a competitor has finished panning all their gravel, they hit the red button. “Once the button is pressed, the timer records the stop time, calculates the delta time between start and stop times, then displays this on the LCD and also sends the information via REST API call to the server [running on a Raspberry Pi 2] which is then written to the database.”

Daryl tells us that the timers worked extremely well during the championships, resulting in many positive comments. “The competitors appreciated being in charge of signalling their completion of panning. They went away having confidence in their times. The wireless timers have set a new benchmark for the Australian championships, which the competitors will prefer – if not demand! – for future competitions.”

Step-01: Box clever

A waterproof kitchen container holds the Raspberry Pi Zero, along with an RFID tag reader for bay assignment, an LCD screen to show information, and a 5200 mAh USB battery.

Step-02: Big red button

The Pi Zero is attached by a cable to a heavy-duty emergency stop button. The latter is screwed to a metal plate which helps protect the timer below from muddy water.

Step-03: Out in the field

Placed in a panning bay, the timer receives a start signal. When the button is pressed, the time is calculated, shown on the LCD, and broadcast to a RESTful server running on a Raspberry Pi 2.