Who Is Responsible When Machines Kill?

This morning I want you to join me in thinking a few paces into the future. This mechanism let’s us discuss some hard questions about automation technology. I’m not talking about thermostats, porch lights, and coffee makers. The things that we really need to think about are the machines that can cause harm. Like self-driving cars. Recently we looked at the ethics behind decisions made by those cars, but this is really just the tip of the iceberg.

A large chunk of technology is driven by military research (the Internet, the space race, bipedal robotics, even autonomous vehicles through the DARPA Grand Challenge). It’s easy to imagine that some of the first sticky ethical questions will come from military autonomy and unfortunate accidents.

Continue reading “Who Is Responsible When Machines Kill?”

Hackaday Links: November 8, 2015

[Burt Rutan] is someone who needs no introduction. Apparently, he likes the look of the Icon A5 and is working on his own version.

Earlier this week, the US Air Force lost a few satellites a minute after launch from Barking Sands in Hawaii. This was the first launch of the three stage, solid fueled SPARK rocket, although earlier versions were used to launch nuclear warheads into space. There are some great Army videos for these nuclear explosions in space, by the way.

[Alexandre] is working on an Arduino compatible board that has an integrated GSM module and WiFi chip. It’s called the Red Dragon, and that means he needs some really good board art. The finished product looks good in Eagle, and something we can’t wait to see back from the board house.

The Chippocolypse! Or however you spell it! TI is declaring a lot of chips EOL, and although this includes a lot of op-amps and other analog ephemera (PDF), the hi-fi community is reeling and a lot of people are stocking up on their favorite amplifiers.

[Jeremy] got tired of plugging jumper wires into a breadboard when programming his ATMega8 (including the ‘168 and ‘328) microcontrollers. The solution? A breadboard backpack that fits right over the IC. All the files are available, and the PCB can be found on Upverter.

In case you haven’t heard, we’re having a Super Conference in San Francisco later this week. Adafruit was kind enough to plug our plug for the con on Ask an Engineer last week.

Code Craft – Embedding C++: Classes

For many embedded C developers the most predominate and questionable feature of C++ is the class. The concern is that classes are complex and therefore will introduce code bloat and increase runtimes in systems where timing is critical. Those concerns implicate C++ as not suitable for embedded systems. I’ll bravely assert up front that these concerns are unfounded.

When [Bjarne Stroustrup] created C++ he built it upon C to continue that language’s heritage of performance. Additionally, he added features in a way that if you don’t use them, you don’t pay for them.

Continue reading “Code Craft – Embedding C++: Classes”

Retrotechtacular: Cold War-Era Hardware Keyloggers

As Cold War tensions increased throughout the 1970s, the Soviets pulled out all the stops when it came to digging up information from US diplomats. This NSA memo from 2012 explains how several IBM Selectric typewriters used in the Moscow and Leningrad offices were successfully bugged with electromechanical devices that could possibly have been the world’s first keyloggers.

The Selectric prints with a ball that is spun and tilted to select the desired character. Two mechanical arms control the ball’s spin and tilt, and the keylogger read out the position of those arms. Thus, each character on the Selectric’s type element ball has its own signature. The sensing part of the keylogging mechanism was buried in part of the typewriter chassis, a metal bar that spans the width of the machine, and were so well hidden that they could only have been detected by complete dissassembly or x-ray.

Continue reading “Retrotechtacular: Cold War-Era Hardware Keyloggers”

Fail Of The Week: OpenMV Kickstarter Project Hits Manufacturing Snag

Making stuff is hard, especially when you are making lots of stuff. The OpenMV Cam project knows this, because it has hit a problem while putting together their cheap machine vision module. The problem is with the BGA solder balls that connect the image sensor to the main board.

openmv-thumbWe’ve covered this intriguing project before: the aim is to build a small, cheap module that can run image processing algorithms to easily give robots sight. The sensor is a Ball Grid Array (BGA) package, which means there are a grid of small solder balls on the back that form the electrical connections. It seems that some of these solder balls are oxidized, preventing them from melting and fusing properly with the board. This is called a head-in-pillow defect, because the ball behaves like your head when you lie down in bed. Your head squishes the pillow, but doesn’t merge into it. There are 38 balls on the OV26040 image sensor and even a single bad link means a failure.

The makers of the project have tried a number of solutions, but it seems that they may have to remake the ball links on the back of each sensor. That’s an expensive process: they say it will cost $7 for each, more than the actual sensor cost initially.

A few people have been posting suggestions in the comments for the project, including using solvents and changing the way the sensors are processed before mounting. We’d like to see them overcome this hurdle. Anybody have any suggestions to quickly and cost effectively move the manufacturing process forward?

Continue reading “Fail Of The Week: OpenMV Kickstarter Project Hits Manufacturing Snag”

Logic Noise: Digital To Analog With An R-2R DAC

Making sound with digital logic usually calls for a Digital to Analog converter. Building one can be very simple, and the sound quality out of an R-2R Ladder is actually pretty good.

In the last edition of Logic Noise, we built up a (relatively) simple VCO — voltage-controlled oscillator — that had roughly one-volt-per-octave response. I even demonstrated it working mostly in tune with another synth’s keyboard. But what if you don’t have a control-voltage keyboard sitting around or you want to combine all of the logic-based circuits that we’ve been building with other circuits under voltage control? That’s where the digital to analog (DAC) voltage converter comes in.

Continue reading “Logic Noise: Digital To Analog With An R-2R DAC”

No Pascal, Not A SNOBOL’s Chance. Go Forth!

My article on Fortran, This is Not Your Father’s FORTRAN, brought back a lot of memories about the language. It also reminded me of other languages from my time at college and shortly thereafter, say pre-1978.

At that time there were the three original languages – FORTRAN, LISP, and COBOL. These originals are still used although none make the lists of popular languages. I never did any COBOL but did some work with Pascal, Forth, and SNOBOL which are from that era. Of those, SNOBOL quickly faded but the others are still around. SNOBOL was a text processing language that basically lost out to AWK, PERL, and regular expressions. Given how cryptic regular expressions are it’s amazing another language from that time, APL – A Programming Language, didn’t survive. APL was referred to as a ‘write only language’ because it was often easier to simply rewrite a piece of code than to debug it.

Another language deserving mention is Algol, if only because Pascal is a descendant, along with many modern languages. Algol was always more popular outside the US, probably because everyone there stuck with FORTRAN.

Back then certain books held iconic status, much like [McCracken’s] black FORTRAN IV. In the early 70s, mentioning [Nicolas Wirth] or the yellow book brought to mind Pascal. Similarly, [Griswold, (R. E.)] was SNOBOL and a green book. For some reason, [Griswold’s] two co-authors never were mentioned, unlike the later duo of [Kernighan] & [Ritchie] with their white “The C Programming Language”. Seeing that book years later on an Italian coworker’s bookshelf translated to Italian gave my mind a minor boggling. Join me for a walk down the memory lane that got our programming world to where it is today.

Continue reading “No Pascal, Not A SNOBOL’s Chance. Go Forth!”