The goal of this thesis was to upgrade an existing 3D LED cube. The main issue with the previous version was that it was connected to a joystick via a 15-pin connector, which became bent over time due to prolonged use. As a solution, the idea was to enable and implement wireless communication with the cube. The existing microcontroller board was replaced with a newer and faster one, the Arduino Due, which is based on the Atmel SAM3X8E ARM Cortex-M3 CPU.
Initially, as stated in the proposal, the plan was to buy a joystick to control the cube. However, since no suitable joystick was found, we decided to use another microcontroller board and two joystick switches to build a custom controller. The same board, the Arduino Due, was used. The two microcontroller boards communicate wirelessly via HC-05 Bluetooth modules.
Both Arduino boards were programmed in the C programming language using the Code::Blocks development environment. To configure the Bluetooth modules, the Arduino IDE was used with a program written in C++.
The cube now continuously displays three different animations while powered on, and no game is played. When a joystick button is pressed, a countdown animation is triggered, and the Snake game begins. The snake is controlled using two joystick switches mounted on a board above the Arduino Due board. When the game ends, the initial animations are displayed again.
|