Happy Birthday, Tetris!

Porting DOOM to everything that’s even vaguely Turing complete is a sport for the advanced hacker. But if you are just getting started, or want to focus more on the physical build of your project, a simpler game is probably the way to go. Maybe this explains the eternal popularity of games like PONG, Tetris, Snake, or even Pac-Man. The amount of fun you can have playing the game, relative to the size of the code necessary to implement them, make these games evergreen.

Yesterday was Tetris’ 40th birthday, and in honor of the occasion, I thought I’d bring you a collection of sweet Tetris hacks.

On the big-builds side of things, it’s hard to beat these MIT students who used colored lights in the windows of the Green Building back in 2012. They apparently couldn’t get into some rooms, because they had some dead pixels, but at that scale, who’s complaining? Coming in just smaller, at the size of a whole wall, [Oat Foundry]’s giant split-flap display Tetris is certainly noisy enough.

Smaller still, although only a little bit less noisy, this flip-dot Tetris is at home on the coffee table, while this one by [Electronoobs] gives you an excuse to play around with RGB LEDs. And if you need a Tetris for your workbench, but you don’t have the space for an extra screen, this oscilloscope version is just the ticket. Or just play it (sideways) on your business card.

All of the above projects have focused on the builds, but if you want to tackle your own, you’ll need to spend some time with the code as well. We’ve got you covered. Way back, former Editor in Chief [Mike Szczys] ported Tetris to the AVR platform. If you need color, this deep dive into the way the NES version of Tetris worked also comes with demo code in Java and Lua. TetrOS is the most minimal version of the game we’ve seen, coming in at a mere 446 bytes, but it’s without any of the frills.

No Tetris birthday roundup would be complete without mentioning the phenomenal “From NAND to Tetris” course, which really does what it says on the package: builds a Tetris game, and your understanding of computing in general, from the ground up.

Can you think of other projects to celebrate Tetris’ 40th? We’d love to see your favorites!

Does PHP Have A Future, Or Are Twenty Five Years Enough?

In June, 1995, Rasmus Lerdorf made an announcement on a Usenet group. You can still read it.

Today, twenty five years on, PHP is about as ubiquitous as it could possibly have become. I’d be willing to bet that for the majority of readers of this article, their first forays into web programming involved PHP.

Announcing the Personal Home Page Tools (PHP Tools) version 1.0.

These tools are a set of small tight cgi binaries written in C.

But no matter what rich history and wide userbase PHP holds, that’s no justification for its use in a landscape that is rapidly evolving. Whilst PHP will inevitably be around for years to come in existing applications, does it have a future in new sites?

Continue reading “Does PHP Have A Future, Or Are Twenty Five Years Enough?”

The Lichtspiel: Not A Simple Child’s Toy.

For his niece’s second birthday, [Stefan] wondered what a toddler would enjoy the most? As it turns out, a box packed with lights, dials and other gadgets to engage and entertain.

For little Alma’s enjoyment, three potentionmeters control a central LED, a row of buttons toggle a paired row of more lights, a rotary encoder to scroll the light pattern of said row left and right, and some sockets to plug a cable into for further lighting effects. Quite a lot to handle, so [Stefan] whipped up a prototype using an Arduino — although he went with an ATmega 328 for the final project — building each part of the project on separate boards and connected with ribbon cables to make any future modifications easier.

[Stefan] attempted to integrate a battery — keeping the Lichtspiel untethered for ease of use — and including a standby feature to preserve battery life. A power bank seemed like a good option to meet the LED’s needed 5V, but whenever the Lichtspiel switched to standby, the power bank would shut off entirely — necessitating the removal of the front plate to disconnect and reconnect the battery every time. The simpler solution was to scrap the idea entirely and use the charging port as a power port instead — much to the delight of his niece who apparently loves plugging it in.

Continue reading “The Lichtspiel: Not A Simple Child’s Toy.”

Remember Your Birthday For Fifty Years

Our Coin Cell Challenge competition has turned up some amazing entries, things that we wouldn’t have thought possible from such meagre power sources. Take [Vishnu M Aiea]’s entry for instance, a device which he claims can light up as a birthday reminder every year for up to fifty years.

At its heart is a modified Arduino Nano clone that draws a measured 608 nA from a CR2450N. From the specification of the cell he has calculated the 50 year maximum figure, as well as a possible 29 years for a CR2032 and 64 years for a CR2477. He does however note that this does not take self-discharge into account, but you can probably afford a new battery in a decade or so.

The Arduino clone carefully selected for its “P” version low-power processor has had its serial bridge IC removed to achieve this power consumption, as well as a voltage regulator and some discrete components. Interestingly he notes that the ATMega168P is even more frugal than its 328 cousin, so he’s used the former chip. A selection of internal flags are set for minimal power consumption, and the internal oscillator is selected to use as low a clock speed as possible. There is an Intersil ISL1208 low power RTC chip mounted on a piece of stripboard to provide the timing, and of course an LED to provide the essential birthday alert.

When the LED lights for the big day there’s always the hope you’ll receive another coin cell, this time powering an edge-lit musical birthday card.

 

Birthday Celebrations The Pi Way

The William Gates Building concourse packed with Pi enthusiasts
The William Gates Building concourse packed with Pi enthusiasts

On a damp and cold Saturday in early March the Cambridge University Computer Laboratory threw open its doors to the Raspberry Pi community. The previous Monday had been the fourth (or first, if you are a leap year pedant!) birthday of the little single-board computer, and last weekend saw its official birthday celebration.

The festivities took the form of an exhibition floor with both traders and community show-and-tell exhibits, plus a packed schedule of workshops and talks. With the Raspberry Pi 3 launch only a few days before there were no surprise announcements of exciting new hardware, but it did provide a good networking opportunity for the Pi community and a chance to test the state of the Raspberry Pi nation.

The most obvious first impression at the event was that it was one that catered for a diverse range of ages and ability groups. Side-by-side with parents and their children were educators, and the maker community. The range of exhibits was therefore slanted somewhat towards a younger age range with games and interactive exhibits, and there was more than a slight educational flavour to the event. This was entirely in keeping with the Foundation’s objectives, and since it is events like these that are inspiring the Hackaday readers of the next decade, a very welcome sight. Join us after the break for a look at all that was happening at the event.

Continue reading “Birthday Celebrations The Pi Way”

The Arduino Birthday Cake Is No Lie

Making someone a birthday cake is very thoughtful, but not if they are watching their weight. [MrFox] found a way around that: an Arduino-powered birthday cake. Even if you don’t mind the calories, an Arduino cake is a novelty and sure to be a hit with a hacker who’s another year older.

The cake uses a UTFT LCD shield which eats up a lot of pins and memory, so the project uses an Arduino Mega. A speaker plays the happy birthday song (which may even be legal now) while a microphone detects the birthday boy or girl blowing out the virtual candles.

Continue reading “The Arduino Birthday Cake Is No Lie”

HotWheels

DIY Hot Wheels Drag Race Timer

[Apachexmd] wanted to do something fun for his three-year-old son’s birthday party. Knowing how cool race cars are, he opted to build his own Hot Wheels drag race timer. He didn’t take the easy way out either. He put both his electronics and 3D printing skills to the test with this project.

The system has two main components. First, there’s the starting gate. The cars all have to leave the gate at the same time for a fair race, so [Apachexmd] needed a way to make this electronically controlled. His solution was to use a servo connected to a hinge. The hinge has four machine screws, one for each car. When the servo is rotated in one direction, the hinge pushes the screws out through holes in the track. This keeps the cars from moving on the downward slope. When the start button is pressed, the screws are pulled back and the cars are free to let gravity take over.

The second component is the finish line. Underneath the track are four laser diodes. These shine upwards through holes drilled into the track. Four phototransistors are mounted up above. These act as sensors to detect when the laser beam is broken by a car. It works similarly to a laser trip wire alarm system. The sensors are aimed downwards and covered in black tape to block out extra light noise.

Also above the track are eight 7-segment displays; two for each car. The system is able to keep track of the order in which the cars cross the finish line. When the race ends, it displays which place each car came in above the corresponding track. The system also keeps track of the winning car’s time in seconds and displays this on the display as well.

The system runs on an Arduino and is built almost exclusively out of custom designed 3D printed components. Since all of the components are designed to fit perfectly, the end result is a very slick race timer. Maybe next [Apachexmd] can add in a radar gun to clock top speed. Check out the video below to see it in action. Continue reading “DIY Hot Wheels Drag Race Timer”