iBantumi (electronic Mancala game)

October 5, 2009

Once again (and this is the last one in the series!) this post is a Systems & Control coursework of mine from a couple of years ago – my A2 major project (November 2007 – April 2008). I’m publishing now because publishing my own coursework while still doing the A-Level it was for wouldn’t have been a good idea.

I would recommend having a quick flick through the full documentation – read the whole thing if you want but you probably have a lot of things that are more worthwhile!

iBantumi was the name of the major project I did for the A2 part of my Systems & Control A-Level. Over the summer between AS and A2 Levels, I spent a month in Malawi on a Team Challenge expedition with people from school. While there I discovered the family of Mancala games and bought myself a wooden Bao board. The games are great, but particularly with some variants you can end up spending a lot of time doing repetitive seeding. It was in fact while I was still in Malawi on the expedition that I decided I would make an electronic board to automate some of the more repetitive parts of play for my A2 project, and so I created iBantumi.

iBantumi as the name suggests is an electronic version of a particular Mancala game – Bantumi which I had played years before on my Nokia 5510 – rather than the slightly larger and more complex Bao (like the wooden board I had bought). Initially I planned to recreate Bao but I would have required in excess of a thousand LEDs to do so, which I thought perhaps a little unrealistic for an A2 project given the time constraints and limited equipment (would have needed to go surface mount for that really). Bantumi is a simpler game, so I only required 336 LEDs for iBantumi.

At the heart of the project are 14 Microchip PIC16F882 PICS programmed in assembly to function as serially controlled “pit registers” – essentially allowing me to control the 336 LEDs individually over one wire from the main controlling PIC – a PIC18F252. The LEDs are grouped into pits of 24 LEDs. The main controlling PIC was programmed in C. The beauty of iBantumi is that the player only has to choose which pit to initiate their turn with and the main controlling PIC will then automate the rest of the move.

Reflecting on iBantumi as a project, my time management of it was significantly better than that of the f00n DS4 - I finished most of the project a few weeks before the deadline, leaving me a decent enough amount of time that I should have been able to develop a decent computer player and LCD menu system for it. Unfortunately the PIC18F252s I was using as the main controlling PICs all failed at about this time in a way that meant I could not flash new programs onto them, effectively ceasing development entirely until I was able to buy some more – which happened to be the day before the deadline. I knocked up an AI player in the lunch hour of the deadline day but was unable to do anything about LCD menus, so the LCD remains unused. I got full marks for the project.

I designed the case using PTC ProDESKTOP, which was very useful in allowing me to cram everything into the smallest case possible without interference between components. Some of the photo realistic renders are included in the pictures below.

Warning – the documentation is by no means lightweight, but should be a brilliant guide if you want to build something similar out of the same components.

Full documentation: iBantumi (Electronic Mancala Game) Documentation