Pressure plate Alt Controller
A downloadable project
- PROJECT DESCRIPTION
This is a project regarding the planning, idealization and creation of an alternative controller using DIY pressure sensors.
PROJECT ORIGIN:
This controller was made as a project for a subject in our degree. The given exercice was to firstly, pick up and convert an old electronic device into a functional controller and secondly make a game for any converted device made by our class.
In our case, and with the support of our teachers, we decided to create our own device from scratch and later make games with it.
The initial idea was 10 pressure sensitive mats where anyone could play "Hopscotch". The game would be played solely on these mats, with the use of built in LEDs that reacted to the player's actions.
MATERIALS USED:
16 WS2812B programmable LEDs;
8 Square Carpets;
8 Aluminium foils;
4 Velostat foils;
4 Ethernet cables;
Row with 8 Ethernet ports;
Copper Cable;
Soldering iron and Tinning kit;
Arduino Nano w/ Extension Board;
THE CONTROLLER
This controller consists of a group of mats, connected individually by ethernet cable to a port, which itself is connected to the arduino. The mats consist of a group of 4 LEDs interconnected by cable, and a pressure sensor, both connected to the ethernet cable.
The pressure sensor works based on the special behaviour the velostat material has with electricity: Velostat becomes a better electrical conductor relative to the pressure applied to it.
Knowing this, if we stack a layer of conductive material, in this case aluminium foil, with a velostat foil, topped by another conductive material, and one of the conductive materials is electrically charged, it is possible to register different results when that mixture is relaxed compared to when pressure is applied on it.
The LEDs are from a led strip, and each is individually programmable. For this functionality to work, the LEDs need to send and receive sequentially a data connection. The following Data In and Data Out cables represent the data input and output of each mat used to achieve this functionality.
To achieve modularity in the amount and kinds of mats used, ethernet cables were used to both easily organize the electrical connections, and to allow a kind of "plug and play" interaction with the controller. An ethernet cable contains 4 smaller colored cables and 4 smaller white cables. Each cable was used for a single role:
- White Cable: Ground connection;
- Green Cable: Sensor data;
- Blue Cable: Led Data In;
- Orange Cable: Led Data Out;
- Brown Cable: Voltage (5V);
On the mat, the cable connections are as follow:
- Data In, 5V and Ground: First led of the 4;
- Data out: Last led of the 4;
- Ground: Pressure sensor (top aluminium foil);
- Sensor data: Pressure sensor (bottom aluminium foil);
The ethernet port has, on one end, the ethernet ports, and in another end, outgoing ethernet cable, having a singular cable per port. Each ethernet cable is again separated and connected as follows:
- Ground: Connected to a ground pin on the arduino;
- Sensor data: Connected to an analog pin on the arduino;
- Voltage: Connected to a 5v pin on the arduino;
- Data In: if it is the first port, it's connected to a digital arduino port. Otherwise, it's connected to the Data Out cable of the previous port cable.
- Data Out: Connected to the Data In of the next port cable.
With this information, the device has the following inputs and outputs:
Inputs:
Pressure sensitive mat.
Output:
Led lights.
GAMES
The game we idealized was "Hopscotch". In this version, the code would select a random square to be disabled, similar to the pebble toss. Then the player needed to hop on each square in order until the end, where all but the selected square would light up again, needing to hop back but in the reverse order. On completion the game would repeat this behaviour in loop.
Whenever a square is stepped on or selected, it turns red, signifying that the player must not step on it. Doing so would end the game and start a new one. Any other square would remain green until it is stepped on.
Due to time restraints, we reduced our total mat count to 4. This required a change of game and so we made a second one: a Sequence Memory game.
In our version, the platforms would stay blue until a player pressed any platform. Then it would signal the start of the game and show a sequence. The sequence length is equal to the level number, starting on level 1.
The player needs to press the platforms in the same order as the shown sequence. Failure to do so would signal a game over and restart. Completing a sequence would increase a level, signal the correct completion and show the next sequence.
Leave a comment
Log in with itch.io to leave a comment.