Jump to content

Button Domination Timer firmware - Arduino

Recommended Posts

Project description:
Button Domination Timer (DOMINATOR) is a device - stopwatch for sports such as Airsoft, Paintball. The stopwatch uses an Arduino control microcontroller (Arduino Uno / Nano) or a separate chip (Atmel) ATmega328P, which controls the entire system logic. The stopwatch includes an LCD character display measuring 16x2 (16 characters x 2 lines), or 20x4, on which the times of individual teams are displayed. There are 2 teams in the game - RED team and GRE team that play against each other and occupy the imaginary point that is formed by this device - DOMINATOR. At the beginning of the game, the display shows the times 00 hours, 00 minutes, 00 seconds for RED team , GRE team . Button Domination Timer uses button input for the action of occupying a point by a team member, as well as for input of a referee and eraser entity.


Thus, a total of 4 buttons for 4 system entities. Buttons are connected in INPUT_PULLUP mode. Pressing the button feeds the GND signal to the Arduino digital input terminal (Active-LOW switching signal). In the basic version, Domination Timer responds immediately to a press - the time counting for a given team is activated (the length of the press, the number of presses, etc. are not verified ...). The times are displayed on an LCD character display measuring 16x2 or 20x4, which communicates with the control microcontroller via the I2C bus. If a team member of the RED team occupies a point by pressing a button, a buzzer is triggered, which announces a change in the point with a short beep. Then the RED team's LED at this station will light up and the display will start adding time for that team. If the point is occupied by the GRE team and a team member presses the appropriate button, the buzzer sounds again, the GRE team LED lights up, the RED team time is paused and the GRE team time is calculated, which point he occupied.


If the organizer (referee) presses his button, both times are paused until a member of one of the teams makes user input. This type of input is thus suitable for starting a break, but can also end the game for evaluation. Button Domination Timer has a fourth button for the eraser entity, which pauses and resets both times to initial values as after starting the Button Domination Timer stopwatch. Used to restart the game, initialize a new game. The project is suitable for Airsoft events, sports facilities, or Airsoft teams, which can build the equipment. The advantage of the Button Domination Timer system is that it can be cloned and create X points with the same configuration via machine code, which can be loaded into an unlimited number of Arduino boards and chips and guarantees identical application operation. Players can thus score more points in the game, while at the end of the game the time is added up as long as which point was occupied by which team. There isn't available PCB design for that project.

Delivery of firmware of Button Domination Timer:
Software is delivered in machine code (.hex) at your mail for the ATmega328P architecture.
 It's compatible for Arduino Uno or Nano boards, or you can use standalone ATmega328P chip. Machine code cannot be modified on your side. I have two versions of firmware, one is for button press, other is for button hold for action. Button hold is limited to 5 seconds, it can't be modified on your side. I send both versions of firmware to each customer. 


Firmware (.hex file) can be uploaded to microcontroller via Xloader: https://www.hobbytronics.co.uk/arduino-xloader
Or more experienced users can use AVRDUDE via console. For Arduino boards use 115200 baud/s upload speed. For Arduino Nano V3.0 clone use 57600 baud/s (Old Bootloader), otherwise firmware will be not uploaded.

Maximum time range that Button Domination Timer will show on display: 99 hours, 59 minutes, and 59 seconds
Power consumption: approx. 20mAh with 5V power supply. Convenient to power via power bank, charger from a phone with USB output.


Shareware firmware
Project can be tested for free with your hardware before buy or payment. There is available firmware on project's website. It is divided by I2C communication address of LCD display - 0x27 or 0x3F. If you don't know I2C address, use I2C Scanner sketch (in-built in Arduino IDE or available at Arduino.cc) that will write I2C address of your display to UART monitor  Firmware let to use project will all 4 entities, there is limitation of measured time up to 15 seconds for each team. It is as test sketch for testing whole compatibility of firmware with your hardware. You can test if you have pushbuttons (and not buttons that are disconnected when pressed, because these will not work). In test version you can't test version of firmware with button hold. Domination Timer will react immediately on button press to do action. Full project (paid) is available without time limitation.

Project website (available firmware, schematics, etc...): https://martinius96.github.io/Airsoft-DOMINATOR-RFID/en/button-dominator.html


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...

Important Information

By using this site, you agree to our Terms of Use and the use of session cookies.