Move38’s latest smart toy offers tactile, screen-free digital gaming.
A few months ago at World Maker Faire, I took note of Blinks, a new interactive digital toy concept from Move38. I was intrigued by the possibilities of its colorful ‘smart’ block system, and so I was excited to receive my own developer’s kit a few weeks back.
Blinks are small hexagonal tiles that snap together along their edges using magnets. Each Blink has six LED lights on its surface – one for each edge – and the entire device acts as a clickable button. When snapped together, the tiles can communicate with one another, making them into a unique platform for casual gaming.
The developer’s kit includes six Blinks, along with additional hardware to program and communicate with the tiles. A single web page provides instructions and direction. I could have used more documentation – I’m still not sure how long the batteries should last, or how to correctly power off the Blinks – though most questions can be answered by searching the developer forum.
Getting set up was fairly easy – I installed the latest Arduino software on my laptop and downloaded the Blinks IDE and libraries from the Move38 website. Waking each Blink from its deep-sleep mode required me to take off its translucent, soft plastic cover and use a tweezer to connect two pins on its circuit board, after which the device lit up with a color-cycling pattern.
I opened a sample script in Arduino, for an app which changes the Blink’s color when its button is clicked. Loading the app onto the device required connecting a small programming module via USB, then holding the tile firmly into the device to ensure that its pins were in alignment. I was a little concerned that I was squeezing it too tight, and that I would warp the pins, but holding it loosely inevitably resulted in an error.
After about ten seconds, the tile began to run its new program. A Blink can transfer it’s app to its neighbors automatically, making it easy to distribute a game to a set of tiles all at once.
My next task was to try to write some original apps for the Blink. I started with a simple puzzle game, where players would try to line up the tiles to match random colors on each edge. I started with the color-changing sample script, and expanded it to randomize the colors.
This was pretty quick to implement, but it started to expose some of the platform’s limitations, since there was no way to generate unique random numbers (I figured out a workaround). Next I added code to make the Blinks communicate with one another. Each Blink can ‘broadcast’ a distinct byte to each of its six sides, and read the corresponding data from other connected tiles.
In about 90 minutes I had the test application working. It’s not the most exciting game, but it works, and there’s a satisfying simplicity to it. The only issue I encountered was that the translucent covers seemed to interfere with the Blinks communicating with one another – the consumer devices appear to have a different build which negates this issue.
Next I built a basic MasterMind game, where users try to decipher a coded pattern of colors. For this project, I created two distinct apps – a ‘controller’ Blink would generate the code and show lights indicating correct and near-correct guesses, while the other tiles were simply input devices, switching between colors when tapped.
This game was a bit tricky, not because of the devices, but because of the game logic. I made some basic logic errors that were challenging to debug, since the Blinks couldn’t offer any feedback beyond their six lights. There’s a solution for this – one of the devices has a small secondary port, which can be connected back to a computer via USB to log errors. I managed to resolve my issues without this tool, but for a larger project I can see it being quite useful.
The MasterMind game didn’t really take advantage of the Blinks’ form factor, so for my final project I decided to build an ‘action’ game. One central tile acts as a spinner, animating lights in sequence and eventually slowing down to point towards another Blink. Players need to remove this tile and place it in the empty spot, rotating it to align edge colors, all within five seconds. The result is a little bit fun, and a little bit nerve-wracking.
There’s more that I could do with these games – increasing challenge levels, color animations, scorekeeping… but I wanted to get a sense of what other developers were doing with Blink. How robust of an interface is possible, or advisable, on such a simple device?
The consumer version of Blinks ships with six tiles, each of which can trigger a different game: Puzzle 101 is a more sophisticated variant of my first game experiment, whereas Whackamole is pretty much what you’d expect. Bomb Brigade is a bit like Russian Roulette – all randomness, no skill.
I found Berry, a two-player strategy game, to be confusing, and I couldn’t play Fracture, which required 12 tiles. For me, the best of the lot was Mortals, where players move tiles to drain energy from their opponents. Despite its simplicity, it was truly original, and it effectively took advantage of Blink’s game mechanics.
All these games could easily be developed as desktop or mobile apps, but there’s something satisfyingly tactile about the Blinks and their screen-free interface. I came to appreciate their simplicity and ‘dumbness’ – while at the same time understanding that each device has its own independent microprocessor.
That said, the devices have core limits in memory and communication. I have to wonder whether creating even ‘dumber’ devices, with Bluetooth connectivity to a mobile or desktop app, would have been a better way to go. It would certainly increase the power and possibility of the toy, and create opportunities for networked play, game downloads, or integration with traditional computer games. And I imagine it could bring down the price point – $99 for six tiles is a bit steep, especially when many of the games work better with 12 or more.
But the bulk of my enjoyment of Blinks came from programming them rather than playing with them. We’re swamped with smart toys that claim to help kids learn programming, and my skepticism of them usually stems from their proprietary software. Blinks, on the other hand, are built around Arduino, a scalable, open-source platform; they could be a great opportunity for young programmers to start coding in a ‘real’ language and build transferable skills. I’m skeptical of Blinks as a commercial platform for gaming, but as a sandbox for creative coding it’s a lot of fun.