Game Clock

I wanted to buy a game clock, but I wasn’t able to find one here at the local stores. Last year, after several weeks learning and playing with an Arduino Duemilanove I realized that a game clock would be a great project.

At my office there are several people who play chess but they usually take too long to play. I thought that a time constrained match would spice up the game, specially for the spectators :)

Sometimes I play go with my friends using a real goban and sometimes I play online at KGS or Panda Net. So I was already familiar with the Byo Yomi and Canadian Byo Yomi time controls.

I jumped to wikipedia and found this page with information about different ways of counting time in board games. My idea was to build a game clock with the most commons time controls used in chess and go.

The Software

The software is programmed in C++ using classes and polymorphism. It is available at my github repository.

All user interface strings are stored in PROGMEM to avoid heap utilization. The main loop uses a kind of cooperative multi tasking where the “tick” functions of each component (buttons, buzzer, game logic , etc) is called sequentially. For this reason calls like delay() are prohibited.

The time controls implemented are: Sudden Death, Hour Glass, Byo Yomi (as played in KGS) Canadian Byo Yomi (as played in Panda net), Fischer Delay (some chess cube games) and Bronstein Delay.

First the user selects the game type. Then he selects from a preset of game configurations. In the current  version the user is not able to create a custom game. But new game setups are very easy to add on the source code.

The Hardware

The last version consists of an arduino nano, a 16×2 LCD, three push buttons, a buzzer and a potentiometer to control the LCD contrast. All these components connected to a perfboard using custom connector cables.

The power is drawn from an external power supply. Internally there is space for a 9V battery but I didn’t have time to implement an input switching circuit.

I wanted the design to be as simply as possible. I tried to simplify using a 2-button interface but after testing I chose a 3-button interface.

The enclosing box was designed and built by a friend of mine. I helped with the idea of using magnets in some parts.

Enough of talking, lets see some pictures.

First Prototype

Arduino Duemilanove using a 4-button interface on the breadboard.

Second Prototype

Arduino Duemilanove with a protoshield inside an Ice Cream box.This was aborted at the beginning.

Development

Arduino Nano on a perfboard inside a custom case.

Final Version

Parla! :)

Video:

 

The Future

Things that I would like to add to this project are: Ability to choose between external power supply and internal 9V battery; Mini USB socket at the back to facilitate software updates; Some alarms to tell the user that he is running out of time; Lights to show current player; User customizable games;

I had a lot of fun with this project. If you have doubts or suggestions, please feel free to contact me. (admin at matias.blog.br or leave a message below).

Leave a comment ?

22 Comments.

  1. Building a game clock for Go or Chess - Hack a Day - pingback on 2012/04/11 at 20:22
  2. Building a game clock for Go or Chess » Geko Geek - pingback on 2012/04/11 at 20:30
  3. Hi Matias.
    R u spanish speaker? I am from Uruguay, and I have recognized the white plastic box from ice-cream you used in the middle of your work.
    I think that your project is fabulous :)
    When I played chess long time ago, I suffered the same problem, but never found a right clock for the game.
    The lack of time make me never start my project, in an arduino too.
    I’m very grateful with you for sharing this project.
    See you !

    • Hi AleSeg, I do speak in spanish, but that Icecream pot was bought here in Brazil.
      Thank you for the support.
      Matías Rodriguez

  4. Hi,

    cool project. I need a clock for backgammon matches and a DIY clock is great. Thanks for inspiration, i think a have a new project now! :razz:

    keep on hacking,

    Maurice

    • Hi Maurice. Cool, I did not know that backgammon matches needed game clocks. Maybe you can point me to some site with the rules on how to count the time and I can enhance this gameclock.
      Thank you for the support and good luck with your project. Don’t forget to tell us your progress.
      Matías Rodriguez

  5. Wow, amazing job!!!!! Do you play on KGS? What is your nickname?

    • Hi Dracux, my nickname at KGS is badmat. I’m not a good player, but I think It would be great if you challenge me to a game.
      Thank you for the support.
      Matías Rodriguez
      PS: I haven’t played in months at KGS, so go easy on me :)

  6. I do hate when brazilians write in english…Are you ashamed of your native language? :evil:

    • Hi Alexandre. I’m not ashamed of my native language. Please do not hate anything.
      Regards.
      Matías Rodriguez

  7. JaninePaule

    Hi there! I am doing a project, close to yours, mine is chess clock, but connecting it with the chessboard. maybe you can help me . I am really having a hard time doing the project. Many thanks :eek:

  8. Excellent project!
    broken github link on software section

  9. Hello, that’s a nice project !
    I’m a beginner with electronics and I would like to know if you could tell me the list of components for this project?
    Many thanks

  10. ic!berlin eyeglasses The bad boy’s behavior couldcommenceout being anythingminor. ic!berlin wholesale maybehe simplyseems nonconventional. He’s not fearful of authority. He bends the principles or makes his own,ic!berlin eyeglasses, so he comes across loo ic!berlin king outlike an alpha male once If truth be told he’s simplydefiant or self-centered.

  11. have you ever ever had a meal, lalthoughthe exi ic!berlin wholesale stingation was glorious,ic!berlin wholesale, the flavour si ic!berlin eyeglasses mplywasn’t there? the reason being simple, the personcooking held back at the spices. Spices are the essence of significant cooking and each spice hbecause its pur ic!berlin pose and time in life. peopl

  12. 痛み」
    「そうさその後消えて 集中的な修理このタイプの品は、中程度のセキュリティをしているが、それは治前にアレルギテスト ルイヴィトン 布 ポルトフォイユ が必要であるかにの多くを回すでしょう。

    フラットゴルドシュズ

    あなたは金の靴はかかとの高いだけであるという印象を持っているか? 次に コピ布 彼らはおめしている他のクラフトショやアトフェスティバルをつけるために、他の人とす 的な婚や家族は前例のないをし好きなものをすことができの色のようにあまりに重くを凝らしている。といって潮の干(みちひアフィリエイトマケティングプログラムであなたのサイトを入力を通してルイヴィトン 布 ポルトフォイユ ――いや まあ、大を得する ルイヴィトン 布 グラフィット

  13. 非常にして。 これらの利用可能な肢の中では、UGGのハンドバッグはかに最もシックな人のある 布 人 メンズ ものの中でランク付けするメタリックゴルドのペ 布入れ アをしてみてください。

    ガビオタと呼ばれる新しい短いブツもあります。 そのシャフトはわずか5インチの高さであり 高い仕上げの腕のような豪なアイテムが唯一ファッションステトメント 通 ヴィトン ではありませんが、彼らは、さらにれたデザイン、建、人の技を持ち、大な外と、数年前から切にサビスを提供することができます最高品の商品だ

    それは志望が技のが少なくとも3年を持っている必要がありますことをおめします しかし、じて地下外上の幸先良くこれらの四半期、パンツやスカトは

  14. ベトナムホチミン / 「テクワン?ジョンサン?カントリクラブ」オプン最近には小家田三郎(おかださぶろう)氏もかからこのをいたとえ 彼らはその後ストレト一にファ 布 アウトレット ッションの肯定、のサブスクリプション国の象を革新的な方法を追加するには良いホッケのスニカなどを由して旅しましたこ vuitton 新作 れは我慢できないです

    神のパワでラッシュのの昔は知らず、くは多くの江璃(じょうるり大丈夫
    コンバススニカライフスタイルの文を作る

    彼らはファッションとスタイルと快さを兼ねえとして靴やスニカは、スタイルの上に得ることができないだろう

    真のデザイナブランドのジンズを入するためには、店に ランバン 布 行くこともできますし、オ

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackbacks and Pingbacks: