Apple Introduces Their Answer To The Raspberry Pi

Today, Apple has announced their latest bit of hardware. Following in the tradition of the Raspberry Pi, BeagleBone, and the Intel Edison, Apple have released a single board computer meant for embedded and Internet of Things applications. It’s called the Apple Device, and is sure to be a game changer in the field of low-power, Internet-enabled computing.

First off, some specs. The Apple Device uses Apple’s own A8 chip, the same dual-core 64-bit CPU found in the iPhone 6. This CPU is clocked at 1.1 GHz, and comes equipped with 1GB of LPDDR3 RAM and 4GB of eMMC Flash. I/O includes a Mini DisplayPort capable of driving a 4k display, 802.11ac, Bluetooth, and USB. In a massive break from the Apple zeitgeist of the last decade or so, the Apple Device also includes a forty pin header for expansion, much like the Raspberry Pi, BeagleBone, and Edison.

Although Apple’s first foray into the embedded computing market is a shocker, in retrospect it should come as no surprise; the introduction of HomeKit in iOS 9 laid the groundwork for an Internet of Apple Devices, embedded into toasters, refrigerators, smart homes, and cars. The Apple Device lives up to all these expectations, but what is the hands-on experience like?

See our review of the Apple Device after the break.

Continue reading “Apple Introduces Their Answer To The Raspberry Pi”

Pong On Industrial Controllers

Programmable Logic Controllers (PLCs) are a staple of control automation. Sometime in the 60s or 70s, they replaced a box full of relays to implement the kind of “if-this-then-that” logic that turns thermostats on or directs machinery. Sometime in the 90s or 2000s, some more computing power was added, giving us the Programmable Automation Controller (PAC). And if reading Hackaday has taught us anything, it’s that if you give people a little bit of computing power, they’ll implement Pong (or Snake or Doom!).

We were sent a link where [AbsolutelyAutomation] does just that: implements a remotely-playable Pong on a bit of industrial control. Even if you don’t have a PAC sitting around, the details are interesting.

The first step is to get graphics out of the thing. The PAC in question is already able to speak Ethernet, so it’s “just” a matter of sending the right packets. Perhaps the simplest way to go is to implement the remote framebuffer (RFB) protocol from VNC, and then use a VNC client on the PC to send the graphics. (As they point out [CNLohr] has done this quite nicely on the ESP8266 (YouTube) as well.) So an RFB library was written. [AbsolutelyAutomation] points out that this could be used to make boring things like user-friendly configuration and monitoring screens. (Yawn!)

Graphics done, it’s easy to add a Pong layer over the top, using the flowchart-based programming interface that makes homage to the PLC/PAC’s usual function as an industrial controller. (Oddly enough, it seems to compile to a Forth dialect to run on the PAC.) And then you’re playing. There’s code and a (PDF) writeup available if you want more info. If you don’t have a PAC to run it on, the manufacturers have a simulator for you.

We’ve never worked with a PLC/PAC, but we know the hacker spirit when we see it. And making something that’s usually located in the boiler room play video games is aces in our book. This sparks a memory of an industrial control hacking room at DEF CON a few years back. Maybe this is the inspiration needed to spend some time in that venue this year.

We know we’ve got controls engineers out there. What’s the strangest thing you’ve programmed into a PLC?

EP Composes A New Chiptune Each Time

[Captain Credible] is a chiptune music artist. He wanted to release an EP, but a regular old em-pee-three was too lame for him, so he made a tiny board with a coin cell, an ATtiny85, and a 3.5mm socket on it.

Rather than just writing some code to generate the tones for a pre-composed song, his “Dead Cats” EP generates the music itself. Using the arduino-tiny library, which adds the tone() function to the ATtiny, he has the chip pick its own time signature, key, subdivisions, and tempo. The melody and drum beat is randomly generated into an array. In addition to that, there are some code “one-liners” which insert unique sounds. After that the code just loops through the music.

If you don’t like the song, simply unplug the audio cable and plug it back in. The 3.5mm jack he chose has a built-in micro-switch, so the board is only powered up if someone is listening. If you’d like to see the circuit diagram, purchase the EP, or take a look at the code, all of that is available on his site.

Impressive StarCraft 2 AI More Fair To Fleshy Opponents

There was a discussion in the comments when the Alpha Go results were released. Some commentors were postulating that AI researchers are discounting more fluid games such as the RTS StarCraft.

The comments then devolved into a discussion of what would make the AI fair to consider against a human player. Many times, AI in RTS games win because they have direct access to the variables in the game. Rather than physically looking at the small area of the screen where a unit is located and then moving their eye to take in strategic information like exact location, health, unit level, etc, the AI just knows that it’s at 120x,2000y,76%,lvl5, etc instantly. The AI also has no click lag as it gets direct access to the game’s API, it simply changes the variables and action queue of a unit directly.

So we were interested to see [Matt]’s Star Craft AI that required the computer to actually look at the game board and click. [Matt]’s AI doesn’t see using OpenCV, which in its own way is forcing the computer to look in a way that’s unnatural to it. He instead wrote some code to intercept the behind the scenes calls to the DirectX library.

The computer is then able to make determinations about what it is looking at using the texture information and other pieces sent to the library. Unlike AI’s that get a direct look at the variables, it has to then translate this and keep its own mental picture of the map and the situation. If a building is destroyed, for example, it has to go over and look at that part of the map, test what it’s seeing against a control, and then remove the building from its list.

The AI’s one big advantage are its robot fingers. Even though this AI has to click on the interface, it doesn’t do it with a weak articulated fleshy nub like the rest of us. This allows the AI to get crazy Actions Per Minute (APM) in the range of 500 to 2000.

The AI has only been tested against StarCraft’s built in cheater bots. So far it can win most games against the hard level bots. If you want to see a video of what the AI is looking at, check after the break.

Continue reading “Impressive StarCraft 2 AI More Fair To Fleshy Opponents”

3D-Printed Case Turns Servo Into Quality Linear Actuator

Micro servomotors are a hacker staple. You’ll find maybe four or five in an RC plane, while a hexbot build could soak up a dozen or more of the cheap and readily available devices. Unfortunately, long-throw linear actuators are a little harder to come by, so it’s nice to know you can 3D-print linear gearing for standard micro RC servos and roll your own.

Currently on revision 2, [Roger Rabbit]’s design is not just a quick and dirty solution. He’s really thought through the problems he observed with his first revision, and the result is a robust, powerful linear actuator. The pinion fits a trimmed servo crank arm, the mating rack is stout and stiff, and early backlash problems have been solved. The whole case is easy to assemble, and as the video below shows, the completed actuator can lift 300 grams.

We like [Roger]’s build process, especially the iterative approach to improving the design. We’ll stay tuned to see where it goes next – a continuous rotation servo for extra-long throws? While we wait, you might want to check out [Richard Baguley]’s recent primer on servos if you want a little background on the underlying mechanism.

Continue reading “3D-Printed Case Turns Servo Into Quality Linear Actuator”

PJON, Fancy One Wire Arduino Communications Protocol For Home Automation

PJON, pronounced like the iridescent sky rats found in every city, is a cool one wire protocol designed by [gioblu].

[gioblu] wasn’t impressed with the complications of I2C. He thought one-wire was too proprietary, too complicated, and its Arduino implementations did not impress. What he really wanted was a protocol that could deal with a ton of noise and a weak signal in his home automation project with the smallest amount of wiring possible.

That’s where is his, “Padded Jittering Operative Network,” comes in. It can support up to 255 Arduinos on one bus and its error handling is apparently good enough that you can hold an Arudino in one hand and see the signals transmitted through your body on the other. The fact that a ground and a signal wire is all you need to run a bus supporting 255 devices and they’ll play nice is pretty cool, even if the bandwidth isn’t the most extreme.

Aside from the cool of DIY protocols. We really enjoyed reading the wiki describing it. Some of the proposed uses was running your home automation through your ducting or water pipes (which should be possible if you’re really good at isolating your grounds). Either way, the protocol is neat and looks fun to use. Or check out PJON_ASK if you want to do away with that pesky single wire.

MRRF: Launching An Adorable Printer For Fun

Patrick and Matt hold a running Kitten Printer. The frame is stiff enough that the printer can be held or turned upside down and it can keep printing.
Patrick and Matt hold a running Kitten Printer. The frame is stiff enough that the printer can be held or turned upside down and it can keep printing without visible defects in the print.

[Patrick] and [Matt] have been coming to the Midwest RepRap Festival from Minneapolis for the past few years and bringing their trusty Tantillus printers with them. However, sometime between this year and the last [Patrick] decided that it would be really fun to make his own 3D printer, and liking the size and accuracy of the Tantillus, started there.

The adorably sized printer is adorably named too: Kitten 3D printer. The printer is certainly an enthusiast’s choice. It’s expensive at 1200 and small, but very well made. Its one big advantage?  It prints really accurate parts.

The Tantillus also printed well, but the extruder left a lot to be desired, and the low stretch fishing line movement was very difficult to get tensioned just right. The secret behind the Tantillus and Kitten’s great print quality, aside from good design, is the small xy movement and low weight of the extruder set-ups. By having a movement over a very small range, cumulative errors in construction never get to add up. Also vibrations are less likely to show and smaller moments on the joints mean less flex at the extremes of the movements.

Really stunning print quality almost entirely free of ringing and z-wobble.
Really stunning print quality almost entirely free of ringing and z-wobble. 100mm x 100mm tray. These are very small parts.

[Patrick] is a mechanical engineer for his day job, and since this was a just for fun printer, he cut no corners. The frame is made with Misumi extrusions and linear movements. The build plate sits on a machined aluminum plate. It’s not flexing or going anywhere.

Part of what really stood out to me about the printer are a lot of neat little features which show careful thought. For example, the extruder movement sits neatly under one of the motors. All the parts except for one can be printed inside its build envelope without support. It uses around 200g of plastic. Every axis is constrained just enough, rather than the common tendency to over constrain that plagues 3D printer design. The spec sheet reads like my printer part wishlist: Bondtech extruder, Rambo board, E3d nozzle, heated bed, flat borosilicate build plate, name brand linear movements, and a well designed Z.

cleverdetails
The entire extruder assembly tucks under one of the XY motors at the corner of its movement. Compare its size to the size of a NEMA14 stepper motor.

Another interesting aspect of the design is the extremely light extruder assembly. The lighter an extruder can get, the less ringing will show in your parts at speed. This is one of the most compact designs I’ve witnessed. It consists of two fans, an E3d v6 lite nozzle, and two small linear bearings. The cold end is handled by a bowden set-up and a Bondtech extruder at the back of the printer. The only way to get it lighter would be a different nozzle, such as the upcoming insanely light 13g Pico from B3 unveiled at the festival. I was also interested to see that the bearings on the supporting rails were printed bushings to keep the weight even lower. [nop head] has tested these extensively, they should be fine as long as the rods have a good finish.

I’ve mentioned the size before, but it’s hard to grasp just how adorable this printer is without seeing it. The build envelope is 100mm x 100mm x 100mm, the printer itself is 200mm x 200mm x 240mm. That’s only 50mm wider than the build footprint. It’s a really fun design just to look at and see how they fit it all in there. There are lots of neat little tricks with belt routing and part design to get it all right.

For the enthusiast this would make a good small parts printer and travel printer. However, for me, it was neat to see people still setting out to try designing their own printer. In some ways the 3d printer movement has become crowded with Chinese knock-offs, and I was excited to see something new at the festival. It wasn’t the only new printer design there, but it stood out to me the most. I like the uncompromising nature of it, many people try to design for the lowest BOM and not the nicer print. There are still lots of low-hanging fruit in the 3d printer world and many of them are just getting the mechanics right.

[Patrick] and [Matt] came to the festival with their printer to see if people would like it. They didn’t have grand dreams of selling tons of printers and making millions. They were quite aware that their price point and the small size made it not for everyone. However, their table always had a small crowd. They just really like 3D printers, and that honesty resonated. They didn’t even have a website up at the start of the convention, but by the end they had gotten so many requests they had to oblige. They expect to have 3 kit options available by the end of April. If you’re interested there’s a mailing list sign up on their website. Let’s hope we see them at MRRF again next year with another cool design to look over.