Running OpenCL on a Raspberry Pi GPU

This is an interesting development for media users and machine learning hackers: [doe300] has implemented OpenCL on the Raspberry Pi 3 Model B+called VCFCL That’s big news because the Pi 3+ has a Graphics Processing Unit (GPU) built into the processor that has been generally underutilized. The VideoCore IV GPU is built into the Broadcom BCM2837B0 and is surprisingly capable for a low-power chip. Although this GPU is well documented, it hasn’t been used that widely because you have to code specifically for this class of GPU. Adding in support for a high-level framework like OpenCL will make it much easier to run and adapt existing packages.

Continue reading “Running OpenCL on a Raspberry Pi GPU”

Building And Controlling 19 LEDs & Five Buttons From Five Outputs

Numbers are hard enough in English, but [Sadale] decided to take things a step further by building a calculator that works in Toki Pona. The result is Ilo Nanpa, an awesome hardware calculator that works in this synthetic minimal language. This is a bit harder than you might think, because Toki Pona doesn’t have digits in the same way that Neo-Latin languages like English do. Instead, you combine smaller numbers to make bigger ones. One is Wan, Two is Tu, but three is Wan Tu (1+2). As you might expect, this makes dealing and representing larger numbers somewhat complicated.

Ilo Nanpa gets around this in a wonderfully elegant way, and with some impressive behind the scenes work. The calculator has 16 LEDs, nine buttons and a slider switch, but they are all controlled and read through just five IO pins on the STM8S001J3 controller that runs the device.

That’s because {Sadale] did some remarkable work with multiplexing and charlieplexing. Multiplexing is controlling more outputs than there are control inputs by using rows and columns: it is how the LED display you are probably reading this on can be controlled by just a few wires. By switching through these rows and columns at a higher speed than the eye can see, you create the illusion of a single, continuous display.

Charlieplexing takes this a step further by using multiple voltages on a single connection to further split the signal. With the clever use of voltage dividers the directional properties of LEDs and multiple voltage levels, the Ilo Nanpa runs all of the LEDs and senses all of the buttons and the slider from just five pins. That’s a remarkably neat piece of design, and it is worth spending some time looking over the excellent explanation of the process that [Sadale] wrote to see how it is done, and poring over the code for the device to see how he programmed this all into a single low powered chip. And, while you are reading, you might pick up a few words of Toki Pona. Tawa Pona!

Continue reading “Building And Controlling 19 LEDs & Five Buttons From Five Outputs”

Electrifying a Honda NC50 Express

[Quasse] bought a 1978 Honda NC50 Express moped with the intention of fixing it up and riding it, only to find that the engine was beyond repair. So, they did what any self-respecting hacker would do: tear out the motor and replace it with an electric one. It’s still a work in progress, but they have got it up and running by replacing the engine with a Turnigy SK3 6374 motor, a 192KV motor that [Quasse] calculated should be able to drive the moped at just over 30 miles per hour. Given that this was the top speed that the NC50 could manage on gas power, that’s plenty fast.

Continue reading “Electrifying a Honda NC50 Express”

Make Your Cactus Bionic With Bionic Cactus

The closest some of us at Hackaday get to a green thumb comes when we are painting, so for us and other folks not gifted in the gardening department Bionic Cactus might help. It’s a neatly designed water and light control system, built around an ESP8266. You can control the system through a web interface, setting a schedule for water and light and seeing how much water is left in the reservoir. There is also a soil moisture sensor and it will even email you when it is running low on water. As creator [SamsonKing] notes, if you combine this with a 3D-printed plant pot and light holder, and you’ve got a complete system from growing herbs and spices in the middle of winter.

[SamsonKing] created the system using PlatformIO, a neat open source Internet of Things development platform that means you could probably switch the system over to run on other low-power platforms if you had them lying around. But with an ESP8266 typically costing no more than a few bucks, it’s a neat and low-cost way to keep your plants fed and watered.

Automated gardening has featured many times here at Hackaday, just one of many is this indoor hydroponic lettuce factory.

Visual Airplane Tracker Runs On Pi

As no doubt is the case with many readers, there is a Raspberry Pi running in the yard near where this is being written that tracks airplanes, listening into the ADS-B radio broadcasts that they send and uploading the data to a sharing service. This device lacks the blinky LEDs that hacking custom states it should have, though. This project from [xy72y5e] would be a great way to deal with that problem: they used a Unicorn hat to create a simple map of local airplanes. This shows the location and track of aircraft in the area on the 8 by 8 RGB LED matrix of the Unicorn Hat.

While the device here maps local planes from their radio fixes, the code that [xy72y5e] published works with the api of ADSBExchange, a site that shares flight data. This means that the map can be easily set to show air traffic at a different location to the device itself. And it wouldn’t be that difficult to alter this to show the locally detected planes, as [xy72y5e] has published the full Python code that creates the map. This would also go well with some of the other airplane tracking hacks that we’ve seen recently, such as the planespotter destination tracker or tracking airplanes by radar reflections

[Via Reddit]

Controlling Non-Googley Devices With Google Assistant

In the near future of the Smart Home, you will be able to control anything with your voice. Assuming that everything supports the Smart Home standard you chose, that is. If you have a device that supports one of the other standards, you’ll end up uselessly yelling at it. Unless you use gBridge. As the name suggests, gBridge is a bridge between Google Assistant devices and the rest of the smart home universe. It’s an open source project that is available as a Docker image can be run on a low power device in the home, or on a hosted service.

Fundamentally, gBridge is a Google Assistant to MQTT translator. Message Queuing Telemetry Transport (MQTT) is the messaging protocol that many smart home devices use, as it runs over TCP and doesn’t take much power to implement. We’ve covered how to bash around in MQTT and do much of this yourself here, but gBridge looks to be somewhat easier to use. It’s just come out of beta test, and it looks like it might be a good way to get into Smart Home hacking.

There are, of course, plenty of other ways of doing this, such as IFFFT, but [Peter Kappelt], the brains behind gBridge, claims that it is more flexible, as it offers support for the whole Google Assistant vocabulary, so you can do things like put devices into groups or do more conditional control (such as if the light level in the hallway rises above a certain amount, start recording with a camera) with non-Google devices. [Peter] is also looking to run gBridge as a hosted service, where he does the behind the scenes stuff to update servers, etc, in return for a small fee.

Continue reading “Controlling Non-Googley Devices With Google Assistant”

UV Glow Clock Tells The Time Glowingly

Reddit user [TuckerPi] wanted to make something to thank his father for helping him get through his engineering degrees. He hit it out of the park with this awesome glowing clock. The clock uses a strip of UV glow tape, which is rotated by a small stepper motor. On one side a UV LED is moved up and down by a second motor to make the tape glow underneath it. A Raspberry Pi drives the whole system, writing the time on the tape and rotating it to face outwards. Once a minute the clock rewrites the time on the rubber.

This is a lovely build that shows what [TuckerPI] learned in college, as he built most of the mechanism himself, cutting his own metal gears and parts and making a nice, simple case from African mahogany. He also shows his mistakes, such as his first attempt to build the glowing mechanism from silicon rubber mixed with UV powder. Although it worked initially, he found that the UV powder fell out of the rubber after a short while, so he replaced it with UV glow tape.

[TuckerPi] hasn’t published the full schematics of the device, but there is a lot of detail in the Imgur photos of the build and in the Reddit thread where he discussed the build. Kudos to him for finding an interesting and unique way to thank his father for his help.

Continue reading “UV Glow Clock Tells The Time Glowingly”