AI-Enabled Teletype Live Streams Nearly Coherent Conversations

If you’ve got a working Model 33 Teletype, every project starts to look like an excuse to use it. While the hammering, whirring symphony of a teleprinter going full tilt brings to mind a simpler time of room-sized computers and 300 baud connections, it turns out that a Teletype makes a decent AI conversationalist, within the limits of AI, of course.

The Teletype machine that [Hugh Pyle] used for this interesting project, a Model 33 ASR with the paper tape reader, is a nostalgia piece that figures prominently in many of his projects. As such, [Hugh] has access to tons of Teletype documentation, so when OpenAI released their GPT-2 text generation language model, he decided to use the docs as a training set for the model, and then use the Teletype to print out text generated by the model. Initial results were about as weird as you’d expect for something trained on technical docs from the 1960s. The next step was obvious: make a chat-bot out of it and stream the results live. The teletype can be seen clattering away in the recorded stream below, using the chat history as a prompt for generating text responses, sometimes coherent, sometimes disturbing, and sometimes just plain weird.

Alas, the chat-bot and stream are only active a couple of times a week, so you’ll have to wait a bit to try it out. But it looks like a fun project, and we appreciate the mash-up of retro tech and AI. We’ve seen teleprinters revived for modern use before, both for texting and Tweeting, but this one almost has a mind of its own.

Continue reading “AI-Enabled Teletype Live Streams Nearly Coherent Conversations”

Retrotechtacular: Balloons Go to War

To the average person, the application of balloon technology pretty much begins and ends with birthday parties. The Hackaday reader might be able to expand on that a bit, as we’ve covered several projects that have lofted various bits of equipment into the stratosphere courtesy of a high-altitude balloons. But even that is a relatively minor distinction. They might be bigger than their multicolored brethren, but it’s still easy for a modern observer to write them off as trivial.

But during the 1940’s, they were important pieces of wartime technology. While powered aircraft such as fighters and bombers were obviously more vital to the larger war effort, balloons still had numerous defensive and reconnaissance applications. They were useful enough that the United States Navy produced a training film entitled History of Balloons which takes viewers through the early days of manned ballooning. Examples of how the core technology developed and matured over time is intermixed with footage of balloons being used in both the First and Second World Wars, and parallels are drawn to show how those early pioneers influenced contemporary designs.

Even when the film was produced in 1944, balloons were an old technology. The timeline in the video starts all the way back in 1783 with the first piloted hot air balloon created by the Montgolfier brothers in Paris, and then quickly covers iterative advancements to ballooning made into the 1800’s. As was common in training films from this era, the various “reenactments” are cartoons complete with comic narration in the style of W.C. Fields which were designed to be entertaining and memorable to the target audience of young men.

While the style might seem a little strange to modern audiences, there’s plenty of fascinating information packed within the film’s half-hour run time. The rapid advancements to ballooning between 1800 and the First World War are detailed, including the various instruments developed for determining important information such as altitude and rate of climb. The film also explains how some of the core aspects of manned ballooning, like the gradual release of ballast or the fact that a deflated balloon doubles as a rudimentary parachute in an emergency, were discovered quite by accident.

When the film works its way to the contemporary era, we are shown the process of filling Naval balloons with hydrogen and preparing them for flight. The film also talks at length about the so-called “barrage balloons” which were used in both World Wars. Including a rather dastardly advancement which added mines to the balloon’s tethers to destroy aircraft unlucky enough to get in their way.

This period in human history saw incredible technological advancements, and films such as these which were created during and immediately after the Second World War provide an invaluable look at cutting edge technology from a bygone era. One wonders what the alternative might be for future generations looking back on the technology of today.

Continue reading “Retrotechtacular: Balloons Go to War”

But Can Your AI Recognize Slugs?

The common garden slug is a mystery. Observing these creatures as they slowly emerge from their slimy lairs each evening, it’s hard to imagine how much damage they can do. With paradoxical speed, they can mow down row after row of tender seedlings, leaving nothing but misery in their mucusy wake.

To combat this slug menace, [Tegwyn☠Twmffat] (the [☠] is silent) is developing this AI-powered slug busting system. The squeamish or those challenged by the ethics of slug eradication can relax: no slugs have been harmed yet. So far [Tegwyn] has concentrated on the detection of slugs, a considerably non-trivial problem since there are few AI models that are already trained for slugs.

So far, [Tegwyn] has acquired 5,712 images of slugs in their natural environment – no mean feat as they only come out at night, they blend into their background, and their slimy surface makes for challenging reflections. The video below shows moderate success of the trained model using a static image of a slug; it also gives a glimpse at the hardware used, which includes an Nvidia Jetson TX2. [Tegwyn] plans to capture even more images to refine the model and boost it up from the 50 to 60% confidence level to something that will allow for the remediation phase of the project, which apparently involves lasers. Although he’s willing to entertain other methods of disposal; perhaps a salt-shooting turret gun?

This isn’t the first garden-tending project [Tegwyn] has tackled. You may recall The Weedinator, his 2018 Hackaday Prize entry. This slug buster is one of his entries for the 2019 Hackaday Prize, which was just announced. We’re looking forward to seeing the onslaught of cool new projects everyone will be coming up with.

Continue reading “But Can Your AI Recognize Slugs?”

Using TensorFlow To Recognize Your Own Objects

When the time comes to add an object recognizer to your hack, all you need do is choose from many of the available ones and retrain it for your particular objects of interest. To help with that, [Edje Electronics] has put together a step-by-step guide to using TensorFlow to retrain Google’s Inception object recognizer. He does it for Windows 10 since there’s already plenty of documentation out there for Linux OSes.

You’re not limited to just Inception though. Inception is one of a few which are very accurate but it can take a few seconds to process each image and so is more suited to a fast laptop or desktop machine. MobileNet is an example of one which is less accurate but recognizes faster and so is better for a Raspberry Pi or mobile phone.

Collage of images for card datasetYou’ll need a few hundred images of your objects. These can either be scraped from an online source like Google’s images or you get take your own photos. If you use the latter approach, make sure to shoot from various angles, rotations, and with different lighting conditions. Fill your background with various other things and even have some things partially obscuring your objects. This may sound like a long, tedious task, but it can be done efficiently. [Edje Electronics] is working on recognizing playing cards so he first sprinkled them around his living room, added some clutter, and walked around, taking pictures using his phone. Once uploaded, some easy-to-use software helped him to label them all in around an hour. Note that he trained on 24 different objects, which are the number of different cards you get in a pinochle deck.

You’ll need to install a lot of software and do some configuration, but he walks you through that too. Ideally, you’d use a computer with a GPU but that’s optional, the difference being between three or twenty-four hours of training. Be sure to both watch his video below and follow the steps on his Github page. The Github page is kept most up-to-date but his video does a more thorough job of walking you through using the software, such as how to use the image labeling program.

Why is he training an object recognizer on playing cards? This is just one more step in making a blackjack playing robot. Previously he’d done an impressive job using OpenCV, even though the algorithm handled non-overlapping cards only. Google’s Inception, however, recognizes partially obscured cards. This is a very interesting project, one which we’ll be keeping an eye on. If you have any ideas for him, leave them in the comments below.

Continue reading “Using TensorFlow To Recognize Your Own Objects”

NEETS: Electronics Education Courtesy of the US Navy

Just about everything the US Government publishes is available to the public. Granted, browsing the GPO bookstore yields a lot of highly specialized documents like a book on how to perform pediatric surgery in hostile environments. However, there are some gems if you know where to look. If you ever wanted to have a comprehensive electronics course, the US Navy’s NEETS (Navy Electricity and Electronics Training Series) is freely available and has 24 modules that cover everything from electron flow through conductors, to tubes, to transistors and integrated circuits.

There are many places you can download these in one form or another. Some of them are in HTML format. Others are in PDF, which might be easier to put on a mobile device. The Internet Archive has them, although sorting by title isn’t quite in numerical order.

Some of the content is a bit dated — the computer section talks about magnetic core and bubble memory, for example, even though the latest revision we know of was in 1998. Of course, there are also references to bits of Navy gear that probably doesn’t mean much to most of us. However, things like the shift register (from module 13) you can see above haven’t changed in a few decades, so you can still learn a lot. The phase splitter in the top banner is even more timeless (you can find it in module 8).

Continue reading “NEETS: Electronics Education Courtesy of the US Navy”

Code Craft: Using Eclipse for Arduino Development

As we work on projects we’re frequently upgrading our tools. That basic soldering iron gives way to one with temperature control. The introductory 3D printer yields to one faster and more capable. One reason for this is we don’t really understand the restrictions of the introductory level tools. Sometimes we realize this directly when the tool fails in a task. Other times we see another hacker using a better tool and realize we must have one!.

The same occurs with software tools. The Arduino IDE is a nice tool for starting out. It is easy to use which is great if you have never previously written software. The libraries and the way it ties nicely into the hardware ecosystem is a boon.

When you start on larger projects, say you upgrade to a Due or Teensy for more code or memory space, the Arduino IDE can hamper your productivity. Moving beyond these limitations requires a new, better tool.

Where do we find a better tool? To begin, recognize, as [Elliot] points out that There is no Arduino “Language”, we’re actually programming in C or C++. We chose which language through the extension on the file, ‘c’ for C and ‘cpp’ for C++. An Arduino support library may be written in C or C++ depending on the developer’s preference. It’s all mix ‘n match.

Potentially any environment that supports C/C++ can replace the Arduino IDE. Unfortunately, this is not easy to do, at least for inexperienced developers, because it means setting up the language tool chain and tools for uploading to the board. A developer with that much experience might eschew an integrated development environment altogether, going directly to using makefiles as [Joshua] describes in Arduino Development; There’s a Makefile for That.

The reality is the Arduino IDE is not much more than a text editor with the ability to invoke the tools needed to compile and download the code to the Arduino. A professional IDE not only handles those details but provides additional capabilities that make the software development process easier.

Continue reading “Code Craft: Using Eclipse for Arduino Development”

Hack Your Cat’s Brain to Hunt For Food

This cat feeder project by [Ben Millam] is fascinating. It all started when he read about a possible explanation for why house cats seem to needlessly explore the same areas around the home. One possibility is that the cat is practicing its mobile hunting skills. The cat is sniffing around, hoping to startle its prey and catch something for dinner. Unfortunately, house cats don’t often get to fulfill this primal desire. [Ben] thought about this problem and came up with a very interesting solution. One that involves hacking an electronic cat feeder, and also hacking his cat’s brain.

First thing’s first. Click past the break to take a look at the demo video and watch [Ben’s] cat hunt for prey. Then watch in amazement as the cat carries its bounty back to the cat feeder to exchange it for some real food.

Continue reading “Hack Your Cat’s Brain to Hunt For Food”