Hackaday Links Column Banner

Hackaday Links: February 5, 2017

A lot of people around here got their start in electronics with guitar pedals. This means soldering crappy old transistors to crappy old diodes and fawning over your tonez, d00d.  Prototyping guitar pedals isn’t easy, though, and now there’s a CrowdSupply project to make it easier The FX Development Board is just that — a few 1/4″ jacks, knobs, pots, power supply, and a gigantic footswitch to make prototyping guitar pedals and other musical paraphernalia easy. Think of it as a much more feature-packed Beavis Board that’s still significantly cheaper.

How do Communicators in Star Trek work? Nobody knows. Why don’t the crew always have to tap their badge before using it? Nobody knows. How can the com badge hear, ‘Geordi to Worf’, and have Worf instantly respond? Oh, we’ve argued about this on IRC for years now. Over on Hackaday.io, [Joe] is building a Star Trek com badge. The electronics are certainly possible with modern microcontrollers, but for the enclosure, we’ll have to review a few scenes from Time’s Arrow and The Enemy.

[Alois] was working with an Intel Edison on a breadboard. He was generating a signal, and sending it through a little tiny breadboard wire to an oscilloscope. The expected waveform should have been a nice square wave at 440MHz. What he got out of this wire was a mess. You shouldn’t use long wires when probing circuits. That little breadboard wire was a perfect radiator for 440MHz, and the entire setup turned into an antenna.

[Douglas] is running a Kenwood TM-D710A as his amateur radio rig. This radio does APRS stuff, but it requires an external GPS and power source to do it right. GPS receivers are now very small and very cheap, so [Douglas] just stuffed a GPS module inside his radio. The module itself is a GP-20U7, a tiny GPS module the size of a postage stamp, and wired it up to a few pads on the radio PCB.

Here’s an upcoming Kickstarter that’s going straight to the front page of Boing Boing. It’s Pong, in coffee table format which we first saw last Spring. Instead of racing the beam, this version of Pong is mechanical. The ball is a cube, the paddles are slightly longer cubes, and the entire game is a highly refined CNC machine. Here’s something from seven years ago that’s also Pong in coffee table format. Pongmechanik is electromechanical Pong, built entirely out of switches, relays, and a few motors.

Sharing Virtual And Holographic Realities Via Vive And Hololens

An experimental project to mix reality and virtual reality by [Drew Gottlieb] uses the Microsoft Hololens and the HTC Vive to show two users successfully sharing a single workspace as well as controllers. While the VR user draws cubes in midair with a simple app, the Hololens user can see the same cubes being created and mapped to a real-world location, and the two headsets can even interact in the same shared space. You really need to check ou the video, below, to fully grasp how crazy-cool this is.

Two or more VR or AR users sharing the same virtual environment isn’t new, but anchoring that virtual environment into the real world in a way that two very different headsets share is interesting to see. [Drew] says that the real challenge wasn’t just getting the different hardware to talk to each other, it was how to give them both a shared understanding of a common space. [Drew] needed a way to make that work, and you can see the results in the video embedded below.

Continue reading “Sharing Virtual And Holographic Realities Via Vive And Hololens”

Hacking The Aether: How Data Crosses The Air-Gap

It is incredibly interesting how many parts of a computer system are capable of leaking data in ways that is hard to imagine. Part of securing highly sensitive locations involves securing the computers and networks used in those facilities in order to prevent this. These IT security policies and practices have been evolving and tightening through the years, as malicious actors increasingly target vital infrastructure.

Sometimes, when implementing strong security measures on a vital computer system, a technique called air-gapping is used. Air-gapping is a measure or set of measures to ensure a secure computer is physically isolated from unsecured networks, such as the public Internet or an unsecured local area network. Sometimes it’s just ensuring the computer is off the Internet. But it may mean completely isolating for the computer: removing WiFi cards, cameras, microphones, speakers, CD-ROM drives, USB ports, or whatever can be used to exchange data. In this article I will dive into air-gapped computers, air-gap covert channels, and how attackers might be able to exfiltrate information from such isolated systems.

Continue reading “Hacking The Aether: How Data Crosses The Air-Gap”

Multiextrusion 3D Printing And OpenSCAD

In a recent posting called Liar’s 3D Printing, I showed you how you can print with multiple filament colors even if your printer only has one extruder and hot end. It isn’t easy, though, and a lot of models you’ll find on sites like Thingiverse are way too complicated to give good results. An object with 800 layers, each with two colors is going to take a lot of filament changes and only the most patient among us will tolerate that.

What that means is you are likely to want to make your own models. The question is, how? The answer is, of course, lots of different ways. I’m going to cover how I did the two models I showed last time using OpenSCAD (seen below). The software is actually really well suited for this hack, making it easy for me to create a framework of several models to represent the different colors.

About OpenSCAD

I’m not going to say much about OpenSCAD. It is less a CAD package and more a programming language that lets you create shapes. We’ve covered it before although it changes from time to time so you might be better off reading the official manual.

The general idea, though, is you use modules to create primitives. You can rotate them and translate them (that is, move them). You can also join them (union) and take the difference of them (difference). That last is especially important. For example, look at the callsign plate above. Forget the text for now. See the two holes? Here’s the OpenSCAD that creates that shape:

 difference() {
 cube([basew,basel,basez]);
 // cut holes
 translate([4,basel/2,0]) cylinder(r=2,h=basez+2);
 translate([basew-4,basel/2,0]) cylinder(r=2,h= basez+2);
 }

The cube “call” creates the base. The cylinders are the holes and the difference “call” is what makes them holes instead of solid cylinders (the first thing is the solid and everything after is taken away). One key point: instead of numbers, the whole thing uses (mostly) variables. That means if you change the size of something, everything will adjust accordingly if you wrote the script well. Let’s look at applying these techniques for multiple colors.

Continue reading “Multiextrusion 3D Printing And OpenSCAD”

The 3D Printers Of CES

CES is over, and now we can take a step back, distance ourselves from the trade show booths, and figure out where 3D printing will be going over the next year.

The Hype Cycle is a great way to explain trends in fads and technological advances. VR and autonomous cars are very early on the Hype Cycle right now. Smartphones are on the plateau of productivity. 3D printing is head-down in the trough of disillusionment.

For this year’s CES, 3D printing is not even a product category. In fact, the official documentation I found at Prusa’s booth listed their company in the ‘Assistive Technologies’ category. These are dark days for the public perception of 3D printing. The source of this perception can be brilliantly presented in a pair of graphs:

hype-cycle

The perception of 3D printing has been tied inexorably to Makerbot. Makerbot presented the only 3D printer on The Colbert Report. Only Makerbot had their 3D printing storefronts featured on CNN. It’s been like this for half a decade, and hopefully things will get better.

This doesn’t mean 3D printing isn’t improving. In fact, it’s the best it’s ever been. CES had the most innovative printers I’ve seen in years. I caught a glimpse of this year’s top-selling printer (and it launches in April). Resin machines are going to be very popular soon. What did CES have to offer? Check it out below.

Continue reading “The 3D Printers Of CES”

CES2017: Monoprice Unveils Expanded Line Of 3D Printers

At CES last year, Monoprice introduced a $200 3D printer. Initial expectations of this printer were middling. My curiosity got the best of me, and last summer I picked up one of these printers for a review. The Monoprice MP Select Mini is actually phenomenal, and not just ‘phenomenal for the price’. This machine showed the world how good one of the cheapest printers can be. The future is looking awesome.

You might think Monoprice wouldn’t be able to top the success of this great little machine. You would be wrong. This week, Monoprice announced a bevy of new and upgraded printers. Some are resin. Some are huge. One will sell for $150 USD.

Continue reading “CES2017: Monoprice Unveils Expanded Line Of 3D Printers”

Ditch OpenSCAD For C++

There’s an old saying that a picture is worth a thousand words. If you’ve ever tried to build furniture or a toy with one of those instructions sheets that contains nothing but pictures, you might disagree. 3D design is much the same for a lot of people. You think you want to draw things graphically, but once you start doing complex things and making changes, parametric modeling is the way to go. Some CAD tools let you do both, but many 3D printer users wind up using OpenSCAD which is fully parametric.

If you’ve used OpenSCAD you know that it is like a simple programming language, but with some significant differences from what you normally use. It is a good bet that most Hackaday readers can program in at least one language. So why learn something new? A real programming language is likely to have features you won’t find readily in OpenSCAD that, in theory, ought to help with reuse and managing complex designs.

I considered OpenJSCAD. It is more or less OpenSCAD for JavaScript. However, JavaScript is a bit of a scripting language itself. Sure, it has objects and some other features, but I’m more comfortable with C++. I thought about using the OpenCSG library that OpenSCAD uses, but that exposes a lot of detail.

Instead, I turned to a project that uses C++ code to generate OpenSCAD output, OOML (the Object Oriented Mechanics Language)). OpenSCAD does the rendering, exporting, and other functions. Unfortunately, the project seems to have stalled a few years back and the primary web-based documentation for it seems to be absent. However, it is very usable and if you know how to find it, there is plenty of documentation available.

Why not OpenSCAD?

Continue reading “Ditch OpenSCAD For C++”