Hacklet 109 – Complex 3D Printed Projects

If you can’t tell, we’re on a roll with 3D printers and printed projects this month. So far, we’ve covered printers, and simple functional 3D prints. This week we’re taking a look at some of the awesome complex 3D printed projects on Hackaday.io.

Complex 3D printed projects are things like robots, quadcopters, satellite tracking systems, and more. So let’s jump in and look at some of the best complex 3D printed projects on Hackaday.io!

dtto2We start with [Alberto] and Dtto v1.0 Modular Robot. Dtto is [Alberto’s] entry in the 2016 Hackaday Prize. Inspired by Bruce Lee’s famous water quote, Dtto is a modular snake-like robot. Each section of Dtto is a double hinged joint. When two sections come together, magnets help them align. A servo controlled latch solidly docks the sections, which then work in unison. Dtto can connect and separate segments autonomously – no human required. [Alberto] sees applications for a robot like [Dtto] in search and rescue and space operations. Continue reading “Hacklet 109 – Complex 3D Printed Projects”

Polyhedrone

[Brainsmoke] had a simple plan. Make a quadcopter with lots of addressable LEDs.

Not just a normal quadcopter with ugly festoons of LED tape though. [Brainsmoke] wanted to put his LEDs in a ball. Thus was born the polyhedrone, the idea of a flying deltoidal hexecontahedron covered as you might expect with all those addressable LEDs.

polyhedrone-PCB-kicadA Catalan solid makes a good choice for the homebrew polyhedron builder because its faces are all identical. Thus if you are making PCBs to carry LEDs, for example, you need only create a single PCB design to use on all faces. A bit of work in KiCAD, and a single face design with interlocking edges was ready. The boards were tested, a wiring layout was worked out, and the polyhedron was assembled.

But [Brainsmoke] didn’t stop there. He produced a flight case for the polyhedron, in the form of a larger polyhedron from what looks like lasercut thin ply.

Having a finished polyhedron, the next thing was to hook up a Raspberry Pi and write some software. First in Python, then in Go.

polyhedrone-light-1The results are simply stunning. If the mathematics and construction of a polyhedron were not enough to make this project worth a second look, then the gallery of images should be enough. You’ll notice that this is ostensibly a quadcopter project, yet no mention of flying has been made on this page. That’s because this is still a work in progress at Tech Inc Amsterdam, and there is more to come. But it honestly doesn’t matter if this project never moves a millimeter off the ground, as far as we are concerned [Brainsmoke] has created a superbly built thing of beauty in its own right, and we like that.

As you might expect, this is just the latest of many projects featured here that have involved addressable LEDs or quadcopters. Of note among them is this LED polyhedron that cleverly closes in all its bits, and this LED-equipped quadcopter that generates very pleasing patterns with a hi-res cross of pixels.

TV Control With Hand Gestures

The cell phones of yesteryear were covered in buttons. Today’s cell phones are mostly a touch display with maybe one or two buttons. As time marches on, we find ourselves using our fingers more for gestures and swipes than button pushing to control our devices. Sadly, the television remote has been stuck in an antiquated state and most are still covered in archaic buttons.

[Frederick] has decided to dig the TV remote out from the stone age and updated it to use simple gestures for control. We’ve seen gesture control before, but this one is certainly the most elegant. He’s using a Raspberry Pi with a Skywriter HAT gesture recognition board. The driver is super easy to install and can be done in a single command line. The Skywriter hat interpreters the hand gesture and the Pi fires the appropriate signal via an IR emitter. This approach made the project fairly simple to put together, with surprisingly good results.

Be sure to check out his blog for all code needed, and take a look at the video below to see the remote in action.
Continue reading “TV Control With Hand Gestures”

2015: As The Hardware World Turns

A few hours from now, the ball will drop in Times Square. 2015 is over, and the good news is you can easily turn a handwritten ‘5’ into a ‘6’. Keep that in mind for the next few weeks. It’s time for a retrospective of everything that happened in 2015. That’s rather boring, though, and it’s usually better to put the most outrageous items in the lede. Therefore, it’s time for predictions of what will happen over the next 366 days. They are, in order:

  • 2016 will be the year of the Linux desktop
  • Self-driving cars will be demonstrated
  • Graphene! Something to do with graphene!
  • Your company will receive a resume with ‘Bitcoin’ listed as a skill
  • Fusion power is only nine years away

With that said, a lot happened this year. Tiny Linux single board computers became incredibly cheap, Radio Shack died, and Arduino went crazy.

Continue reading “2015: As The Hardware World Turns”

The Nvidia Jetson TX1: It’s Not For Everybody, But It Is Very Cool

Last week, the Nvidia Jetson TX1 was released. This credit card-sized module is a ‘supercomputer’ advertised as having more processing power than the latest Intel Core i7s, while running at under 10 Watts. This is supposedly the device that will power the next generation of things, using technologies unheard of in the embedded world.

A modern day smartphone could have been built 10 or 15 years ago. There’s no question the processing power was there with laptop CPUs, and the tiny mechanical hard drives in the original iPod was more than spacious enough to hold a library of Napster’d MP3s and all your phone contacts. The battery for this sesquidecadal smartphone, on the other hand, was impossible. The future depends on batteries and consequently low power computing. Is the Jetson TX1 the board that will deliver us into the future? It took a hands-on look to find out.

Nvidia-2
The Nvidia Jetson TX1 and Carrier Board

What is the TX1

The Jetson TX1 is a tiny module – 50x87mm – encased in a heat sink that brings the volume to about the same size as a pack of cigarettes. Underneath a block of aluminum is an Nvidia Tegra X1, a module that combines a 64-bit quad-core ARM Cortex-A57 CPU with a 256-core Maxwell GPU. The module is equipped with 4GB of LPDDR4-3200, 16GB of eMMC Flash, 802.11ac WiFi, and Bluetooth.

This module connects to the outside world through a 400-pin connector (from Samtec, a company quite liberal with product samples, by the way) that provides six CSI outputs for a half-dozen Raspberry Pi-style cameras, two DSI outputs, 1 eDP 1.4, 1 eDP 1.2, and HDMI 2.0 for displays. Storage is provided through either SD cards or SATA. Other ports include three USB 3.0, three USB 2.0, Gigabit Ethernet, a PCIe x1 and PCIe x4, and a host of GPIOs, UARTs, SPI and I2C busses.

The only way of getting at all these extra ports is, at the moment, the Jetson TX1 carrier board, a board that is effectively a MiniITX motherboard. Mount this carrier board in a case, modify a power supply and figure out how to wire up the front panel buttons, and you’ll have a respectable desktop computer.

This is not a desktop computer, though, and it’s not a replacement for a Raspberry Pi or Beaglebone. This is an engineering tool – a device built to handle the advanced robotics work of the future.

Benchmarks

No tech review would be complete without benchmarks, and since this is an Nvidia board, that means a deep dive into the graphics performance.

The review unit Nvidia sent over came with an incredible amount of documentation, pointing me towards GFXBench 4.0 Manhattan 3.1 (and the T-rex one) to test the graphics performance.

Manhattan

In terms of graphics performance, the TX1 isn’t that much different from a run-of-the-mill mobile chipset from a few years ago. This is to be expected; it’s unreasonable to expect Nvidia to put a Titan in a 10 Watt module; the Titan itself sucks up about 250 Watts.

test suiteWhat about CPU performance? The ARM Cortex A57 isn’t seen very much in tiny credit-card sized dev boards, but there are a few actual products out there with it.  The TX1 isn’t a powerhouse by any means, but it does trounce the Raspberry Pi 2 Model B in testing by a factor of about three.

Compared to desktop/x86 performance, the best benchmarks again put the Nvidia TX1 in the same territory as a middling desktop from a few years ago. Still, that desktop probably draws about 300 W total, where the TX1 sips a meager 10 W.

This is not the board you want if you’re mining Bitcoins, and it’s not the board you should use if you need a powerful, portable device that can connect to anything. It’s for custom designs. The Nvidia TX1 is a module that’s meant to be integrated into products. It’s not a board for ‘makers’ and it’s not designed to be. It’s a board for engineers that need enough power in a reasonably small package that doesn’t drain batteries.

With an ARM Cortex A57 quad core running at almost 2 GHz, 4 GB of RAM, and a reasonably powerful graphics card for the power budget, the Nvidia TX1 is far beyond the usual tiny Linux boards. It’s far beyond the Raspi, the newest Beagleboard, and gives the Intel NUC boards a run for their money.

That huge and heavy heatsink is useful; while benchmarking the TX1, temperatures were only one or two degrees above ambient
That huge and heavy heatsink is useful; while benchmarking the TX1, temperatures were only one or two degrees above ambient

In terms of absolute power, the TX1 is about as powerful as a entry-level laptop from three or four years ago.

The Jetson TX1 is all about performance per Watt. That’s exceptional, new, and exciting; it’s something that simply hasn’t been done before. If you believe the reams of technical documents Nvidia granted me access to, it’s the first step to a world of truly smart embedded devices that have a grasp on computer vision, machine learning, and a bunch of other stuff that hasn’t really found its way into the embedded world yet.

Alexnex images processed per second per watt. No, Joules do not exist.
Alexnex images processed per second per Watt. No, Joules do not exist.

And here lies the problem with the Jetson TX1; because a platform like this hasn’t been available before, the development stack, examples, and community of users simply isn’t there yet. The number of people contributing to the Nvidia embedded systems forum is tiny – our Hackaday articles get more comments than a thread on the Nvidia forums. Like all new platforms, the only thing missing is the community, putting Nvidia in a chicken and egg scenario.

This a platform for engineers. Specifically, engineers who are building autonomous golf carts and cars, quadcopters that follow you around, and robots that could pass a Turing test for at least 30 seconds. It’s an incredible piece of hardware, but not one designed to be a computer that sits next to a TV. The TX1 is an engineering tool that’s meant to go into other devices.

Alternative Applications, Like Gamecube

With that said, there are a few very interesting applications I could see the TX1 being used for. My car needs a new head unit, and building one with the TX1 would future proof it for at least another 200,000 miles. For the very highly skilled amateur engineers, the TX1 module opens a lot of doors. Six webcams is something a lot of artists would probably like to experiment with, and two DSI outputs – and a graphics card – would allow for some very interesting user interfaces.

That said, the TX1 carrier board is not the breakout board for these applications. I’d like to see something like what Sparkfun put together for the Intel Edison – dozens of breakout boards for every imaginable use case. The PCB files for the TX1 carrier board are available through the Nvidia developer’s portal (hope you like OrCAD), and Samtec, the supplier for the 400-pin connector used for the module, is exceedingly easy to work with. It’s not unreasonable for someone with a reflow toaster oven to create a breakout for the TX1 that’s far more convenient than a Mini-ITX motherboard.

Right now there aren’t many computers with ARM processors and this amount of horsepower out now. Impressively powerful ARM boards, such as the new BeagleBoard X15 and those that follow the 96Boards specification exist, but these do not have a modern graphics card baked into the module.

Without someone out there doing the grunt work of making applications with mass appeal work with the TX1, it’s impossible to say how well this board performs at emulating a GameCube, or any other general purpose application. The hardware is probably there, but the reviewers for the TX1 have been given less than a week to StackOverflow their way through a compatible build for the most demanding applications this board wasn’t designed for.

It’s all about efficiency

Is the TX1 a ‘supercomputer on a module’? Yes, and no. While it does perform reasonably well at machine learning tasks compared to the latest core-i7 CPUs, the Alexnet machine learning tasks are a task best suited for GPUs. It’s like asking which flies better: a Cessna 172 or a Bugatti Veyron? The Cessna is by far the better flying machine, but if you’re looking for a ‘supercomputer’, you might want to look at a 747 or C-5 Galaxy.

On the other hand, there aren’t many boards or modules out there at the intersection of high-powered ARM boards with a GPU and on a 10 Watt power budget. It’s something that’s needed to build the machines, robots, and autonomous devices of the future. But even then it’s still a niche product.

I can’t wait to see a community pop up around the TX1. With a few phone calls to Samtec, a few hours in KiCad, and a group buy for the module itself ($299 USD in 1000 unit quantities), this could be the start of something very, very interesting.

Take Your Robots Tubing

When you think of a robot, you might think of one with wheels, tracks, or even legs. But today’s robots are as likely to have wings, props, or even some way to propel it through the water. If you are bored with quadcopters and want to build a water-going robot, you should check out Jalcboat, an open source robot/boat. Although the project is under development, the videos (see below) show that they’ve made a good bit of progress.

As you might expect, 3D printing is a key ingredient and the files are available on Thingiverse linked above. In addition, the robotic boat has a Raspberry Pi onboard to control brushless motors. The main web site is more of a discussion forum and some of it is in Spanish, so you might want to keep Google translate handy.

Continue reading “Take Your Robots Tubing”

Hardware Virtualization In Microcontrollers

Look at any sufficiently advanced CNC machine or robot, and you’ll notice something peculiar. On one hand, you have a computer running a true operating system for higher-level processing, be it vision or speech recognition, or just connecting to the Internet. On the other hand, you have another computer responsible only for semi-real-time tasks, like moving motors, servos, and reading sensors and switches. You won’t be doing the heavy-lifting tasks with a microcontroller, and the Raspberry Pi is proof enough that real-time functions aren’t meant for a chip running Linux. There are many builds that would be best served with two processors, but that may be changing soon.

Microchip recently announced an addition to the PIC32 family of microcontrollers that will support hardware virtualization. This addition comes thanks to the MIPS M5150 Warrior-M processor, the first microcontroller to support hardware visualization.

Continue reading “Hardware Virtualization In Microcontrollers”