We know that LED video cubes are so last year, but that doesn’t mean we don’t still love to see them. Any project that incorporates over 24,000 LEDs is bound to be impressive, after all. But the more interesting bit about [Mike Cann]’s self-contained LED cube has more to do with the process he chose to get to the finished product.
There are two ways to approach a new project, especially when you’re new to hardware hacking like [Mike] is. One is to jump in with both feet and just see what happens, for good or for ill. The other is is to ease into it with a starter project, to find out where your limitations lay and work around them gradually. [Mike Cann] wisely chose the latter approach with his LED cube project, starting with an LED sand toy. The single 64 x 64 LED panel was a bit easier to work with, and got him up to speed on the care and feeding of such hardware, as well as the code needed to drive it. The video below tells the tale of scaling that project up by a factor of six to make the cube, a process that had its share of speedbumps. Everything ended up fitting together great, though, letting [Mike] get on to the software side. That’s where this project really shines — the smartphone app running the cube is really slick, and the animations are great.
There’s clearly room for new features on [Mike]’s cube, so here’s hoping he can carve out some time to make a great build even better. For inspiration he might want to check out this side-scrolling Castlevania cube, or perhaps read up on the finer points of OpenGL for LED cubes.
Continue reading “From Zero To LED Cube In Less Than Seven Months”
The Micro:bit is a very neat piece of hardware that, frankly, we don’t see enough of. Which made us all the more interested when [Manoj Nathwani] wrote in to tell us about the gorgeous 3D printed RGB LED lamp he created that uses the BBC-endorsed microcontroller to perform basic gesture detection. Purists will likely point out that an Arduino Pro Mini is tagging along to handle interfacing with the LEDs, but it’s still a good example of how quick you can get a project up and running with MicroPython on the Micro:bit.
[Manoj] used eight NeoPixel Sticks, a NeoPixel Ring, and a few scraps of perfboard to construct a three dimensional “bulb” to fill the void inside the printed diffuser. They’re chained together so all the elements appear as a single addressable strip, which made the rest of the project a bit easier to implement. It might not be pretty, but it gets the job done and it’s not like you’ll ever see it again once installed in the lamp anyway.
The Micro:bit and Arduino co-pilot live in the base of the lamp, and the single USB cable to provide power (and the ability to update the device’s firmware) is run out the bottom to give the whole thing a clean and professional look. For those wondering why the Arduino has tagged along, [Manoj] says he couldn’t get the NeoPixel libraries to play nicely with the Micro:bit so he’s using the Arduino essentially as a mediator.
Right now the only gesture that’s detected on the Micro:bit is a simple shake, which tells the Arduino to toggle the light show on and off. But in the future, [Manoj] plans to implement more complex gestures which will trigger different animations. As he explains in the blog post, gesture recognition with the Micro:bit is incredibly simple, so it should be easy to come up with a bunch of unique ways to interface with the lamp.
Color changing LED lamps are a favorite project of hackers, and we’ve seen examples built with everything from glass and copper to laser-cut pieces of wood and veneer. While you might prefer to skip the gesture control for an ESP8266 and UDP, we think this project is another strong entry into this popular genre.
Go — a modern programming language with roots at Google — is one of the new generation languages that would like to unseat C (and C++) for what we think of as traditional programming. It is only for PCs, though, right? Not so fast! TinyGo provides a compiler that — in their words — is for small places. How small? They can target code for the Arduino Uno or the BBC micro:bit. It can also produce code for x86 or ARM Linux (both 32- and 64-bit) as well as WebAssembly. They claim that a recent project to add ESP8266 and EPS32 support to LLVM will eventually enable TinyGo to target those platforms, too.
As you would expect, there are some subtle differences between TinyGo and the full-blown version. The compiler handles the entire program at once which is slower but offers more for optimization. Certain optimizations for interface methods are not used in TinyGo, and global variable handling changes to accommodate moving data from flash to RAM efficiently. TinyGo passes parameters in registers.
Continue reading “TinyGo Brings Go To Arduino”
Virtual reality systems have been at the forefront of development for several decades. While there are commercial offerings now, it’s interesting to go back in time to when the systems were much more limited. [Colin Ord] recently completed his own VR system, modeled on available systems from 20-30 years ago, which gives us a look inside what those systems would have been like, as well as being built for a very low cost using today’s technology.
The core of this project is a head tracker, which uses two BBC Microbits as they have both the accelerometer and compass needed to achieve the project goals. It is also capable of tracking an item and its position in the virtual space. For this project, [Colin] built everything himself including the electronics and the programming. It also makes use of Google Cardboard to hold the screen, lenses, and sensors all in the headset. All of this keeps the costs down, unlike similar systems when they were first unveiled years ago.
The ground-up approach that this project takes is indeed commendable. Hopefully we can see the code released, and others can build upon this excellent work. You could even use it to take a virtual reality cycling tour of the UK.
Continue reading “A Low Cost VR Headset”