Zero-dimensional PONG game built on a perfboard.

2024 Tiny Games Contest: Coming At Ya With Zero-Dimensional PONG

A decade is a long time to carry around a project idea in your head. Fortunately, the Tiny Games Contest happens to coincide with [Senile Data Systems]’s getting back into ATMega programming, so they can finally make their zero-dimensional PONG dreams come true (and have the chance at great prizes, too, of course).

If you don’t already get what’s going on here, zero-dimensional PONG takes 1D PONG and turns it on the short side. Imagine the light coming toward you, then moving away toward your opponent, and you have the basic idea. So, how is this done? Pulse-width modulation controls the brightness of the LED, and, well, you have to be pretty fast, although there is a small margin for the inevitable error.

In the video after the break, you can watch [SDS] play themselves using a red/green LED. Player one must press the button when red is fully lit and green is off, and player two goes when green is fully lit and red is off. The cool thing is that this game uses sockets, so it can use any LED. There are nine difficulty levels to control the PWM speed,  so one can really test one’s reaction time.

If you want to build one of these, you’ll need an ATtiny2313 or something similar, a couple of buttons, a display, and the optional but fun buzzer. The well-commented code is available through [Senile Data Systems]’s site.

Continue reading “2024 Tiny Games Contest: Coming At Ya With Zero-Dimensional PONG”

A small physical version of the game 2048, played with LEDs as numbers and tilt for input.

2024 Tiny Games Challenge: It’s 2048, But With LEDs

Remember the game 2048? You slide numbered tiles around on a grid, combining them until you have one tile with a value of 2048 (although it’s possible to go higher). Legend has it that 2048 was created by a bored teenager in the space of a weekend to see if he could program a game from scratch.

It only took a couple of weekends for [David] to get Tiny2048 up and running. In this version, each RGB value represents a number value, and input comes from a rudimentary gesture detector — tilt it this way and that to move the LEDs and combine the ‘numbers’. As you might imagine, it was a bit tricky to use colors to represent numbers, so each one had to be sufficiently unique.

[David] says that the LED matrix is a string of WS2812 LEDs in a grid formation, controlled by an ESP32-S3-MINI-1. Although this may be overkill, [David] broke out a bunch of IO at the top of the board so it can be used in the future as a dev board. Be sure to check it out in blinkenlight action after the break!

Continue reading “2024 Tiny Games Challenge: It’s 2048, But With LEDs”

Three different views of a tiny games console with a screen and a single button. It's assembled in the first picture, and the guts are shown in the second two pictures.

2024 Tiny Games Contest: Salsa One Handheld Requires No PCB

If you’re thinking about building a single tiny game or even a platform, you might be tempted to use a single button for everything. Such is the case with [Alex]’s Salsa ONE minimalist game console, which is inspired by both the Arduboy and the ergonomics of the SanDisk Sansa music player.

With Salsa ONE, [Alex] aimed to make something that is both simple and challenging. The result is something that, awesomely enough, doesn’t need a PCB, and can be comfortably controlled with just one thumb. There isn’t much to this thing, which is essentially an RP2040, an OLED, a vibration motor, a buzzer, a button, and a CR2032 coin cell. [Alex] chose to program Salsa ONE in MicroPython. Be sure to check it out in action in the brief demo after the break.

Have you got an idea for a tiny game? Don’t hesitate to enter the 2024 Tiny Games Contest! You have until September 10th, so head on over to Hackaday.io and get started today.

Continue reading “2024 Tiny Games Contest: Salsa One Handheld Requires No PCB”

A single-key macro pad with a screen built into the button.

2024 Tiny Games Contest: Are You A Good Judge Of Time?

What can you do with a one-button keyboard? Quite a bit, actually, especially if that key has a little screen on it. That’s the idea behind [Maker M0]’s MagicClick macro pad, which is an updated version of a highly useful project we have featured in the past. Well, now there’s a tiny game to go with it.

Animation showing the TimePerception game in action.Think you’re pretty good at measuring the passage of time? This game will likely prove you wrong. Press and hold the button and the timer begins with some pre-determined interval, such as four seconds. Once you think those four seconds have passed, release the button and find out how far off you were.

While the first version of this keyboard used the CH582F RISC-V microcontroller, the second and this third version use an ESP32-S3 on a custom, tightly packed PCB. That TFT display measures 0.85″, and the battery is an 3.7 V 802025 Li-Po. [Maker M0] has also redesigned this to make it easier to print, and plans to support circular screens in the near future.

2024 Tiny Games Contest: Pi-O-Scope-Pong

[Aaron Lager]’s Pi-O-Scope-Pong project takes a minimal approach to Pong by drawing on an oscilloscope to generate crisp paddles and ball. A Raspberry Pi takes care of the grunt work of signal generation, and even uses the two joysticks of an Xbox controller (connected to the Pi over Bluetooth) for inputs.

Originally, [Aaron] attempted to generate the necessary signals directly from the Pi’s PWM outputs by doing a little bit of RC filtering on the outputs, but was repulsed by the smeary results. The solution? An old but perfectly serviceable 8-bit MAX506 DAC now handles crisping up the visuals with high-quality analog outputs. Code is available on the project’s GitHub repository.

There isn’t any score-keeping or sound, but one thing that it has over the original Pong is a round ball. The ball in the original Pong game was square, but mainly because cost was a concern during design and generating a round ball would have ballooned the part count.

In many ways, Pong itself is a great inspiration for the Tiny Games Challenge, because the simplicity of its gameplay was likely a big part of its success.

Continue reading “2024 Tiny Games Contest: Pi-O-Scope-Pong”

Tiny Games Challenge: A Retro Racing Game On A 16×2 LCD

Sometimes, all it takes is a change in perspective to take something boring and make it fun. That’s true about 16×2 LCD; in its usual landscape format, it’s a quick and easy way to provide a character-based display for a project. But flip it 90 degrees and use a little imagination, and it can become a cool retro racing game that fits in the palm of your hand.

[arduinocelantano] has made it a habit to press the humble 16×2 character LCD into service in ways it clearly wasn’t intended to support, such as playing Space Invaders and streaming video on it. Both of these projects seem to inform the current work, which was one of the first entries in our current Tiny Games Challenge contest. The racing game requires multiple sprites to animate the roadway and the cars, using six “layers” of eight custom characters and rapidly switching between them to create the appearance of movement. The video below has a brief sample of gameplay.

Flipping the display on its side makes for a somewhat limited game — it’s all straightaway, all the time — but that could probably be fixed. [arduinocelentano] suggests scaling it up to a 16×4 to include curves, but we’d bet you could still simulate curves on the upper part of the game field while leaving the player’s car fixed on a straight section. Higher difficulties could be achieved by moving the curved section closer to the player’s position.

Sure, it’s limited, but that’s half the charm of games like these. If you’ve got an idea for our Tiny Games Challenge, head over to our contest page and let us know about it. We’re keen to see what you come up with.

Continue reading “Tiny Games Challenge: A Retro Racing Game On A 16×2 LCD”

A fast-looking hand plays a reaction time game.

2024 Tiny Games Challenge: Improving Reaction Time

What lies at the heart of many games? In a sense, it’s your response time, which is a function of hand-eye coordination. Although the 2024 Business Card Challenge has come to a close, [gokux] tends to go small anyway, and has taken their miniature approach to the Tiny Games Challenge with this awesome little reaction time game.

It’s basically whack-a-mole, but instead of striking down fuzzy puppets, you get fast and furious on big buttons that light up. Press any button to start, and there is a 3-2-1 countdown to get you geared up for action. Once the screen says ‘GO’, you’re off to the races. Each of the four buttons will light up in random order, and your overall response time is taken as the average of these four.

While there are many microcontrollers that would work here, [gokux] chose the Seeed Studio Xiao ESP32-C3. If you want to make one of these for yourself, there are excellent build instructions waiting for you. Be sure to check it out in action after the break. Oh, and be sure to let [gokux] know if you can beat 220 ms.

Continue reading “2024 Tiny Games Challenge: Improving Reaction Time”