Upon the needs of the (2014) World Barista Championship Rules and Regulations, an adequate and precise time measuring is needed during the competition. These measurements are usually done by regular stopwatches with all the benefits (ease of use, common availability) and drawbacks (two stopwatches needed for each judge, as well as some mathematics are necessary for supervision).

This Arduino-based stopwatch originally designed to meet all the requirements of this situation, finally to make judges' work seriously simpler, yet at least as acceptalbe as the good old way. My goal were to meet the requirements of Rules and Reglations 2.2.1.H (verbosely defined under 13.3.7.). In short: during the competiton, the extraction times within each beverage category should be within 3 second variance. For example, if the competitor extracts a set of espresso drinks (four servings in two two-servings brewing), de difference between each brewing time should be less than 3 second. If first brewing is 29.1 second, second brewing should be between 26.1 and 32.1 second (excluding both 26.1 and 32.1), otherwise the competitor will get a penalty.


  • one watch instead of two,
  • designed and built to meet WBC/WCE requirements to help judges,
  • can be upgraded, changed due to the changes of Rules and Regulations and/or different type of competitions,
  • make all the measurements and analysis,
  • it's hard to be hacked by the judge to make unwanted and unfair handicaps to certain competitors (see 15.0 in Rules and Regulations),
  • easy to use,
  • planned to be upgradable to on-line/off-line logging and other features,


  • not official,
  • still a prototype.

Step 1: Main component descriptions

This stopwatch has four main components:

  1. two independent 3 + 1 digit 7 segment displays,
  2. one keyboard with three keys to control,
  3. a 16×2 digit alphanumeric display,
  4. an Arduino board (now a Nano 328 v3, some other models are also accepted and may be working properly).

1. Main displays

Both have a very simple goal: to show measured time. To avoid unfair/dishonest behaviour of judges, actual (counted) time is not displayed, instead a mark shows that the measurement is running. So the judge has no any information about the elapsed time, so unable to stop the measurement within the 3 second barrier, whatever the competitor stopped the brewing or not. After the end of the first measurement, the measured time will shown on the display in 1/10 second precision, and this time will remain on the display until the next measurement has finished (on the same stopwatch). Most of the competitions are used to have a two grouphead espresso machine, where the competitors should use two groupheads to produce a set of drinks. Brewing time on each head should be measured independently, so two independent stopwatch and display needed.

2. Keyboard

This simple keyboard have two goals: to measure time (start/stop and reset the stopwatches) and control the menu of the stopwatch.

Each stopwatch has its own start/stop button. After initialization/reset, the first push of the start/stop button will start the measurement, second push will stop. After all six measurements (two measurements of three groups), the push of the third button will reset the values.

3. 16×2 digit alphanumeric display

There are a lot of information are on the display, as well as some future features will use it. Detailed information about the display will discussed later.

4. Arduino board

With some changes, almost any Arduino-compatilbe board can be used, except Esplora, Due and Leonardo. Some future software development may cause the exceeding of available memory, so "the bigger is better" rule may be true here.

Other components will be listed on the next page.

About This Instructable


41 favorites


More by Professzore: Barista championship brewing stopwatch • Introduction
Add instructable to: