By 2016, most people have got the hang of doing SMD soldering in the garage–at least for standard packaging. Ball Grid Array or BGA, however, remains one of the more difficult packages to work with [Colin O’Flynn] has an excellent video (almost 30-minutes, including some parts that are sped up) that shows exactly how he does a board with BGA.
32C3: 3D Printing On The Moon
How do you resist this talk title? You can’t! [Karsten Becker]’s talk about what kinds of 3D printers you’d use on the moon is a must-see.
[Part-Time Scientists] was a group of 35 people working on a mission to the moon. Then they won the qualifying round in the Google Lunar XPRIZE, got a bunch of money, and partnered with some heavy corporate sponsors, among which is Audi. Now they’ve added eleven full-time employees and updated the name to [PT Scientists]. (They’re taking applications if you’re interested in helping out!)
A really neat part of their planned mission is to land near the Apollo 17 landing site, which will let them check up on the old lunar rover that NASA left up there last time. The science here is that, 45 years on, they hope to learn how all of the various materials that make up the rover have held up over time.
But the main attraction of their mission is experimental 3D printing using in-situ materials. As [Karsten] says, “3D printing is hard…but we want to do it on the moon anyway.”
One idea is to essentially microwave the lunar regolith (and melt it) . This should work because there’s a decent iron component in the regolith, so if they can heat it up it should fuse. The catch with microwaving is directivity — it’s hard to make fine details. On the plus side, it should be easy to make structures similar to paved roads out of melted regolith. Microwave parts are robust and should hold up to launch, and microwaving is relatively energy efficient, so that’s what they’re going to go for.
But there are other alternatives. The European Space Agency is planning to bring some epoxy-like binder along, and glue regolith together in layers like a terrestrial cement printer. The problem is, of course, schlepping all of the binder to the moon in the first place.
And then there are lasers. [Karsten] talked lasers down a little bit, because they’re not very energy efficient and the optics are fidgety — not something you’d like to be supporting remotely from earth.
The final option that [Karsten] mentioned was the possibility of using locally-generated thermite to fuse regolith. This has been tested out on earth, and should work. [Karsten] thought it was an interesting option, but balls of hot thermite are potentially tough on rovers, and the cost of mistakes are so high that they’re going to put that off for a future mission.
In the end, the presentation ran only thirty minutes long, so there’s a great Q&A session after that. Don’t go home once you hear the audience clapping!
Better 3D Graphics On The Arduino
There are cheap LCDs available from China, and when plugged into an Arduino, these displays serve as useful interfaces or even shinier baubles for your latest project. [Michael] picked up a few of these displays in the hope of putting a few animated .GIFs on them. This is an impossible task with an ATMega microcontroller – the Arduino does not have the RAM or the processing power to play full-screen animations. It is possible to display 3D vector graphics, with an updated graphics library [Michael] wrote.
The display in question uses the ILI9341 LCD driver, found in the Adafruit library, and an optimized 3D graphics driver. Both of these drivers have noticeable flicker when the animation updates, caused by the delay between erasing a previous frame and when a new frame is drawn.
With 16-bit color and a resolution of 320×240 pixels, there simply isn’t enough memory or the processing power on an ATMega microcontroller to render anything in the time it takes to display a single frame. There isn’t enough memory to render off-screen, either. To solve this problem, [Michael] built his render library to only render pixels that are different from the previous frame.
Rendering in 3D presents its own problems, with convex surfaces that can overlap themselves. To fix this, [Michael]’s library renders objects from front to back – if the pixel doesn’t change, it doesn’t need to be rendered. This automatically handles occlusions.
In a demo application, [Michael]’s LCD and Arduino can display the Stanford bunny, a low-poly 3D face, and geometric object. It’s not a video game yet, but [Michael] thinks he can port the classic game Spectre to this platform and have it run at a decent frame rate.
Video of the demo below.
Czech Out Raspberry Pi Riding The Rails
If you were wandering around Prague this Christmas season you may have spotted a Raspberry Pi 2 controlled Christmas tree. But you had to look quick because it was on the back of a special tram car that lubricates the rails around the city to reduce noise. The colors on the tree were determined by a web site that allowed visitors to change the colors. The same system, with a few adjustments, controlled a tree in the entrance hall of Czech Technical University in Prague at Karlovo.
The adjustments weren’t trival. Power was a problem, for one. The electrical noise from the tram’s drive motors needed to be filtered by using a switching power supply. Cold temperatures might have created a frozen Pi so they added a heater. After all, everyone loves warm Pi. The LEDs on the tree were handled by a WS2811 addressable LED driver chip.
You can catch the tram any time on the web, but the tree will be gone once the Christmas season ends.
The Hovalin: Open Source 3D Printed Violin Sounds Great
[Matt and Kaitlin Hova] have created The Hovalin, an open source 3D-printed violin. Yes, there have been 3D-printed instruments before, but [The Hovas] have created something revolutionary – a 3D printed acoustic instrument that sounds surprisingly good. The Hovalin is a full size violin created to be printed on a desktop-sized 3D printer. The Hovas mention the Ultimaker 2, Makerbot Replicator 2 (or one of the many clones) as examples. The neck is one piece, while the body is printed in 3 sections. The Hovalin is also open source, released under the Creative Commons Attribution Non-Commercial Share Alike license.
A pure PLA neck would not be stiff enough counter the tension in the strings, so [The Hovas] added two carbon fiber truss rods. A handful of other components such as tuners, and of course strings, also need to be purchased. The total price is slightly higher than a $60 USD starter violin from Amazon, but we’re betting the Hovalin is a better quality instrument than anything that cheap.
The Hovalin was released back in October. There are already some build logs in the wild, such as this one from [Emulsifide]. Like any good engineering project, the Hovalin is a work in progress. [Matt and Kaitlin] have already released version 1.0.1, and version 2.0 is on the horizon. Hearing is believing though, so click past the break to hear [Kaitlin] play her instrument.
Continue reading “The Hovalin: Open Source 3D Printed Violin Sounds Great”
SPI: Let Go And Use The Force
Take a leap the next time you use SPI and don’t poll for the busy flag. “What, are you crazy? That’s the whole point of the busy flag! It’s a quick check to make sure you don’t kill a byte waiting to be shifted out!” Sure, we thought the same thing, but the other side of the coin is that it takes time to check the busy flag, and that’s time he could be transmitting data. [bigjosh2] calculates that his technique saves 20% of those wasted cycles in this particular case. And he’s “using the force” only because he’s a Jedi master able to rely on the cycle count of a chunk of assembly code.
He’s working with an AVR processor, and pumping out bits to drive the vintage LED display pictured above. The ancient chips don’t have buffered SPI so he has to blank the display while shifting new data in to prevent it from glitching. Because the display blank during the SPI transmission, the slower it goes, the dimmer the lights.
He attacks the problem with synchronous code. It takes 2 cycles for the hardware SPI to send each bit, so he twiddles his thumbs (that’s exactly what he wrote in his code comments) for 16 cycles before reloading the SPI register with his next value. This leaves it up to faith in the silicon that the shifting will always take the same number of cycles, but the nice thing about hardware is that it’s deterministic. He ends up killing a few cycles in order to save time by not polling the busy flag.
Still need a crash course in what SPI actually does? [Bil Herd] has you covered with this SPI communication demo.
A Raspberry Pi Tidy Tide Tracker Predicts Propitious Promenades
The whims of the tides can make walking near the ocean a less than pleasant experience. A beautiful seascape one day may appear as a dismal, mucky, tidal flat the next. Frustrated over these weary walks, [Average Man] created a tidy tide tracker to predict propitious promenade periods.
A Raspberry Pi A+ pulls tide timing information off the web by scraping a web page using Python code. The time for the high tide, when the estuary will be full of water, is shown on a 4-digit 7-seg display. It’s all sandwiched between two smoked black panels to provide a neat case while still letting the LEDs show through.
The code comes from two projects [Average] recalled from a kickstarter timing project and a 7-seg display project. As he points out:
It’s great to learn programming from others, but it’s even better if you learn them well enough to remember, re-use and combine that code later on as well.
The display chips are mounted on a product of his own, the no longer available ProtoPal board. This is a Pi A+ size board with 288 prototyping holes and the standard connector for mounting on the Pi GPIO header. It keeps the project neat and clean.