OpenCV And Depth Camera Spots Weeds

Using vision technology to identify weeds in agriculture is an area of active development, and a team of researchers recently shared their method of using a combination of machine vision plus depth information to identify and map weeds with the help of OpenCV, the open-source computer vision library. Agriculture is how people get fed, and improving weed management is one of its most important challenges.

Many current efforts at weed detection and classification use fancy (and expensive) multispectral cameras, but PhenoCV-WeedCam relies primarily on an OAK-D stereo depth camera. The system is still being developed, but is somewhat further along than a proof of concept. The portable setups use a Raspberry Pi, stereo camera unit, power banks, an Android tablet for interfacing, and currently require an obedient human to move and point them.

It’s an interesting peek at the kind of hands-on work that goes into data gathering for development. Armed with loads of field data from many different environments, the system can use the data to identify grasses, broad leaf plants, and soil in every image. This alone is useful, but depth information also allows the system to estimate overall plant density as well as try to determine the growth center of any particular plant. Knowing that a weed is present is one thing, but to eliminate it with precision — for example with a laser or mini weed whacker on a robot arm — knowing where the weed is actually growing from is an important detail.

PhenoCV-WeedCam (GitHub repository) is not yet capable of real-time analysis, but the results are promising and that’s the next step. The system currently must be carried by people, but could ultimately be attached to a robotic platform made specifically to traverse fields.

source https://hackaday.com/2021/01/31/opencv-and-depth-camera-spots-weeds/

Old Gas Meter gets Smart with the ESP8266

Measuring the usage of domestic utilities such as water, gas or electricity usually boils down to measuring a repetitive pulse signal with respect to time. To make things easy, most modern utility meters have a pulsed LED output, which can be used to monitor the consumption by using an external optical sensor. But what do you do if your meter isn’t so cooperative?

That’s exactly what [Francesco] had to figure out while developing the non-invasive gas tracking system he calls ESPmeter. His meter might not have an LED, but it did have a magnet attached to the counter disk which activated an internal hall sensor. With some hacking, he was able to attach an external Hall-effect sensor to pick up this magnet and use the signal to monitor his daily gas consumption.


A big stumbling block in such projects is the issue of powering the device for an extended period, and remembering when it’s time to change the batteries. With the clever use of commonly available parts, he was able to reduce power consumption allowing three AA batteries to last about a year between changes. For one thing, he uses an ATtiny13 to actually read the sensor values. The chip doesn’t run continuously, its watchdog is set at 1 Hz, ensuring that the device is woken up often enough so that it has time to power up the sensor and detect the presence of the magnet. Battery voltage is also measured via a voltage divider connected to the chip’s ADC pin.

At regular intervals throughout the day, the ESP8266 polls the ATtiny13 to pull the stored sensor pulses and voltage measurement. Then at midnight, the ESP transmits all the collected data to a remote server. Overall, this whole scheme allows [Francesco] to reliably gather his gas consumption data while not having to worry about batteries until he gets the low voltage notification. Since the data visualization requirements are pretty basic, he is keeping things simple by using Plotly to display his time series data.

If you are unfortunate enough to have an even older meter which doesn’t use optical or magnetic rotation sensing, you can use a disassembled mouse to keep track of the Gas Meter.

source https://hackaday.com/2021/01/31/old-gas-meter-gets-smart-with-the-esp8266/

Old Gas Meter gets Smart with the ESP8266

Measuring the usage of domestic utilities such as water, gas or electricity usually boils down to measuring a repetitive pulse signal with respect to time. To make things easy, most modern utility meters have a pulsed LED output, which can be used to monitor the consumption by using an external optical sensor. But what do you do if your meter isn’t so cooperative?

That’s exactly what [Francesco] had to figure out while developing the non-invasive gas tracking system he calls ESPmeter. His meter might not have an LED, but it did have a magnet attached to the counter disk which activated an internal hall sensor. With some hacking, he was able to attach an external Hall-effect sensor to pick up this magnet and use the signal to monitor his daily gas consumption.


A big stumbling block in such projects is the issue of powering the device for an extended period, and remembering when it’s time to change the batteries. With the clever use of commonly available parts, he was able to reduce power consumption allowing three AA batteries to last about a year between changes. For one thing, he uses an ATtiny13 to actually read the sensor values. The chip doesn’t run continuously, its watchdog is set at 1 Hz, ensuring that the device is woken up often enough so that it has time to power up the sensor and detect the presence of the magnet. Battery voltage is also measured via a voltage divider connected to the chip’s ADC pin.

At regular intervals throughout the day, the ESP8266 polls the ATtiny13 to pull the stored sensor pulses and voltage measurement. Then at midnight, the ESP transmits all the collected data to a remote server. Overall, this whole scheme allows [Francesco] to reliably gather his gas consumption data while not having to worry about batteries until he gets the low voltage notification. Since the data visualization requirements are pretty basic, he is keeping things simple by using Plotly to display his time series data.

If you are unfortunate enough to have an even older meter which doesn’t use optical or magnetic rotation sensing, you can use a disassembled mouse to keep track of the Gas Meter.

source https://hackaday.com/2021/01/31/old-gas-meter-gets-smart-with-the-esp8266/

Old Gas Meter gets Smart with the ESP8266

Measuring the usage of domestic utilities such as water, gas or electricity usually boils down to measuring a repetitive pulse signal with respect to time. To make things easy, most modern utility meters have a pulsed LED output, which can be used to monitor the consumption by using an external optical sensor. But what do you do if your meter isn’t so cooperative?

That’s exactly what [Francesco] had to figure out while developing the non-invasive gas tracking system he calls ESPmeter. His meter might not have an LED, but it did have a magnet attached to the counter disk which activated an internal hall sensor. With some hacking, he was able to attach an external Hall-effect sensor to pick up this magnet and use the signal to monitor his daily gas consumption.


A big stumbling block in such projects is the issue of powering the device for an extended period, and remembering when it’s time to change the batteries. With the clever use of commonly available parts, he was able to reduce power consumption allowing three AA batteries to last about a year between changes. For one thing, he uses an ATtiny13 to actually read the sensor values. The chip doesn’t run continuously, its watchdog is set at 1 Hz, ensuring that the device is woken up often enough so that it has time to power up the sensor and detect the presence of the magnet. Battery voltage is also measured via a voltage divider connected to the chip’s ADC pin.

At regular intervals throughout the day, the ESP8266 polls the ATtiny13 to pull the stored sensor pulses and voltage measurement. Then at midnight, the ESP transmits all the collected data to a remote server. Overall, this whole scheme allows [Francesco] to reliably gather his gas consumption data while not having to worry about batteries until he gets the low voltage notification. Since the data visualization requirements are pretty basic, he is keeping things simple by using Plotly to display his time series data.

If you are unfortunate enough to have an even older meter which doesn’t use optical or magnetic rotation sensing, you can use a disassembled mouse to keep track of the Gas Meter.

source https://hackaday.com/2021/01/31/old-gas-meter-gets-smart-with-the-esp8266/

This Hot Air Gun Is Either A Work Of Genius Or Lethal, We Can’t Decide

One of the essentials on the bench is some form of hot air gun. Whether it’s a precision tool intended for reworking PCBs or the broad-stroke item used for paint stripping, we’ve all got one somewhere. The paint-stripping variety are pretty cheap, but not as cheap as [Porcas Pregos e Parafusos]’s home made hot air gun. This slightly hair-raising device is made from a variety of junk parts and delivers hot air, though we suspect the possibility for burning the operator remains high.

At its heart is one of those mains powered water boiler elements designed to be lowered into a cup or similar, and since such devices would burn out if not cooled in some way, there is a fan from a microwave oven passing air over it. The whole thing sits inside an aluminium cone cut from a circular cake tin, and is held together on a wooden chassis to which the handle and power switch from a defunct electric drill provide the operator with something to hold on to.

As you can see from the video below the break it makes for an effective hot air gun, but one that we’re guessing you’d soon learn to avoid touching on the metal cone. Still, as a community we’re used to this with our soldering irons, as the RevSpace T-shirt puts it: “If it smells like chicken, you’re holding it wrong“.

Strangely, this isn’t the first DIY heat gun we’ve seen.

Thanks [Danjovic] for the tip.

source https://hackaday.com/2021/01/31/this-hot-air-gun-is-either-a-work-of-genius-or-lethal-we-cant-decide/

Mystery Box Gives Up Its Patented Secrets

[CuriousMarc] likes to go to surplus stores even though there are fewer of them around. On a recent trip, he found a box that had some parts he thought would work for a temperature controller project. It was marked Dial-A-Level and proudly proclaimed that it had a patent pending. The box was from the 1970s and [Marc] was wondering what the device was meant to do.

The device was a bit of a puzzle since it had three oddly-marked probe inputs. A search through the patent database revealed the device was a “capacitance probe for detecting moisture with very long cables.” The idea was to create a capacitor at the end of the cable and use the liquid as a dielectric. The sensor creates a 10 kHz sine wave it uses to excite the probe and an op amp measures the relative capacitive reactance of the probe versus a reference capacitor. The rest of the circuit is a comparator that reacts when the level is at a threshold.

We love seeing the old hand-drawn boards from that era. Component designations are in copper and there’s no solder mask visible. There was a clever application of a silicon controlled rectifiers and a relay to create a type of flip flop, that [Marc] explains.

Interestingly, the company that made the device, Expo Instruments, is still around and [Marc] contacted them. The actual patent holder replied and was amazed that [Marc] had possession of this antique. You can only wonder if anything you build today will wind up on whatever passes for YouTube three or four decades from now.

Capacitive sensing is quite versatile. Of course, there are many other ways to sense liquid level, too.

source https://hackaday.com/2021/01/31/mystery-box-gives-up-its-patented-secrets/

3D Printing a Full Scale Fiberglass Speedboat

It’s an age-old problem. You draw up a nice 6.5-meter long motorboat and then discover the shape won’t allow for a fiberglass mold. What do you do? If you’re [Moi], you grab a few Kuka robots and 3D print it using thermoplastic with embedded glass fibers. A UV light cures the plastic and you wind up with printed fiberglass. That’s the story behind the MAMBO, a 3D printed powerboat.

Despite the color, the fiberglass isn’t blue out of the gate — the boat is painted. Still, it looks nice with lines inspired by [Sonny Levi]’s Arcidiavolo design from 1973. MAMBO stands for Motor Additive Manufacturing BOat. It has a dry weight of about 800 kg and is fitted with a cork floor, white leather seats, and an engine. We presume none of those things were 3D printed.

Although it wasn’t fiberglass, we’ve seen a 3D printed boat before. In particular, the University of Maine’s giant 22,000 square foot printer cranked one out. We’ve also seen boats printed in standard PLA filament, which then had fiberglass cloth and resin applied after printing. True that one was only RC, but there’s no reason the concept couldn’t be scaled up if you had the patience.

source https://hackaday.com/2021/01/30/3d-printing-a-full-scale-fiberglass-speedboat/

Master Video Call Control Panel is Made of PCBs

[memestra] is a teacher whose life has become a series of videoconferences over the last year or so. With all the classes and meetings, they spend the whole day switching between either Zoom, Teams, or Meet. If anyone needs a single piece of hardware to control them all, it’s [memestra]. Well, and every other teacher out there.

The hardware — an Arduino Pro Micro and some buttons — should come as no surprise, except for maybe [memstra]’s use of a resistor network for the LEDs. Still, there’s a lot to like about this little box, starting with the enclosure. That’s not milled or laser-cut metal — each side is a PCB, and they’re all soldered together into a box.

We especially like the top panel, which fits down over the PCB that all the components are soldered to. Each of the non-volume buttons has multiple functions that are accessed by pressing, long pressing, or double pressing. But even the volume buttons do double duty: press them together to mute and un-mute. If [memestra] ever forgets which button does what and how, there’s a handy reference table silkscreened on the bottom panel.

In true teacher fashion, [memestra] has written comprehensive instructions for anyone looking to build a similar device. The heavily-commented code should make it a cinch to drop in keyboard shortcuts for Discord or anything else you might be using, though it’s worth noting that this box is optimized for the desktop apps and not the browser-based versions.

Just looking for a fun way to end video calls? Pull chains are pretty fun.

source https://hackaday.com/2021/01/30/master-video-call-control-panel-is-made-of-pcbs/

Master Video Call Control Panel is Made of PCBs

[memestra] is a teacher whose life has become a series of videoconferences over the last year or so. With all the classes and meetings, they spend the whole day switching between either Zoom, Teams, or Meet. If anyone needs a single piece of hardware to control them all, it’s [memestra]. Well, and every other teacher out there.

The hardware — an Arduino Pro Micro and some buttons — should come as no surprise, except for maybe [memstra]’s use of a resistor network for the LEDs. Still, there’s a lot to like about this little box, starting with the enclosure. That’s not milled or laser-cut metal — each side is a PCB, and they’re all soldered together into a box.

We especially like the top panel, which fits down over the PCB that all the components are soldered to. Each of the non-volume buttons has multiple functions that are accessed by pressing, long pressing, or double pressing. But even the volume buttons do double duty: press them together to mute and un-mute. If [memestra] ever forgets which button does what and how, there’s a handy reference table silkscreened on the bottom panel.

In true teacher fashion, [memestra] has written comprehensive instructions for anyone looking to build a similar device. The heavily-commented code should make it a cinch to drop in keyboard shortcuts for Discord or anything else you might be using, though it’s worth noting that this box is optimized for the desktop apps and not the browser-based versions.

Just looking for a fun way to end video calls? Pull chains are pretty fun.

source https://hackaday.com/2021/01/30/master-video-call-control-panel-is-made-of-pcbs/

Master Video Call Control Panel is Made of PCBs

[memestra] is a teacher whose life has become a series of videoconferences over the last year or so. With all the classes and meetings, they spend the whole day switching between either Zoom, Teams, or Meet. If anyone needs a single piece of hardware to control them all, it’s [memestra]. Well, and every other teacher out there.

The hardware — an Arduino Pro Micro and some buttons — should come as no surprise, except for maybe [memstra]’s use of a resistor network for the LEDs. Still, there’s a lot to like about this little box, starting with the enclosure. That’s not milled or laser-cut metal — each side is a PCB, and they’re all soldered together into a box.

We especially like the top panel, which fits down over the PCB that all the components are soldered to. Each of the non-volume buttons has multiple functions that are accessed by pressing, long pressing, or double pressing. But even the volume buttons do double duty: press them together to mute and un-mute. If [memestra] ever forgets which button does what and how, there’s a handy reference table silkscreened on the bottom panel.

In true teacher fashion, [memestra] has written comprehensive instructions for anyone looking to build a similar device. The heavily-commented code should make it a cinch to drop in keyboard shortcuts for Discord or anything else you might be using, though it’s worth noting that this box is optimized for the desktop apps and not the browser-based versions.

Just looking for a fun way to end video calls? Pull chains are pretty fun.

source https://hackaday.com/2021/01/30/master-video-call-control-panel-is-made-of-pcbs/

Scrappy: Drag Racing Bush Plane

We like to feature hacks that are affordable and accessible to the average person, but from time to time it’s fun to dream about the projects we’ll tackle when we’re all grown up and stinking rich. [Mike Patey] appears to fall rather comfortably in the latter category, but thankfully he hasn’t lost his “excited kid with big plans” spirit. A talented and experienced experimental aircraft builder, he’s currently working on Scrappy, a small bush plane built to be a short take-off and landing drag racer.

Scrappy started life as a Carbon Cub, a modernized kit version of the venerable Piper Super Cub. The only thing left of the original plane is a part of the fuselage frame, with almost everything else being custom. The engine is a 780 cubic inch (13 liter) horizontally opposed 8-cylinder, scavenged from one of [Mike]’s racing planes, and fitting it required extensive structural changes to the fuselage. The paddle-like propeller was intended for an airboat, and is designed for high thrust at low speeds. The skin of the aircraft is all carbon fiber, and the suspension almost looks like it’s borrowed from an off-road racing truck. [Mike] also added (and test fired) a ballistic recovery parachute. The cockpit instruments are also over-the-top for an aircraft like this, with seven Garmin multi-function displays.

Scrappy is still missing its wings, which will also be heavily modified. From the oil-cooling system to the door latch and gust-lock for the stick, everything was designed and made by [Mike]. We’re enjoying the in-depth build videos that show how he tackles all the little challenges that pop-up in such an ambitious project.

[Mike] made a name for himself with his previous monster bush plane Draco, which was sadly destroyed during an ill-considered take-off last year. Fortunately nobody was harmed in the incident, and Draco became a part donor for Scrappy. If budget planes are more your style, check out [Peter Sripol]’s latest electric microlight.

source https://hackaday.com/2021/01/30/scrappy-drag-racing-bush-plane/

A Heat Reclaimer For Your Woodstove; The One Thing It’s Not Is Cool

It’s the middle of winter for those of us who live in the Northern Hemisphere, which naturally turns minds towards heating, or sometimes the lack of it. It’s particularly difficult for those who rely on a wood stove to escape the feeling that perhaps most of that hard-won heat may be whistling up the chimney rather than keeping them warm. It’s a problem [Lou] has addressed with his DIY chimney heat reclaimer.

As can be seen from the video below the break, his stove appears to be in a workshop, and has a long single-wall metal stove pipe. Over the outside of this he’s placed a pair of T pieces joined by a longer length of pipe all of a larger bore, and a mains-powered fan forces air through this air jacket. The result is a continuous flow of hot air that he claims delivers a 45% heat reclamation. We’re curious though whether the reduction in flue temperature might cause extra tar condensation and thus the build-up of flammable material further up the chimney. The stove itself is a double barrel affair with access for smoking, and the video describing it is worth a look in itself.

Whatever the stove, be sure to ensure a constant supply of fuel!

source https://hackaday.com/2021/01/30/a-heat-reclaimer-for-your-woodstove-the-one-thing-its-not-is-cool/

Nissan Gives Up root Shell Thanks to Hacked USB Drive

For the impatient Nissan owners who may be joining us from Google, a hacker by the name of [ea] has figured out how to get a root shell on the Bosch LCN2kai head unit of their 2015 Xterra, and it looks like the process should be the same for other vehicles in the Nissan family such as the Rogue, Sentra, Altima, and Frontier. If you want to play along at home, all you have to do is write the provided image to a USB flash drive and insert it.

Now for those of us who are a more interested in how this whole process works, [ea] was kind of enough to provide a very detailed account of how the exploit was discovered. Starting with getting a spare Linux-powered head unit out of a crashed Xterra to experiment with, the write-up takes the reader through each discovery and privilege escalation that ultimately leads to the development of a non-invasive hack that doesn’t require the user to pull their whole dashboard apart to run.

The early stages of the process will look familiar to anyone who’s messed with embedded Linux hacking. The first step was to locate the board’s serial port and connect it to the computer. From there, [ea] was able to change the kernel parameters in the bootloader to spawn an interactive shell. To make things a little easier, the boot scripts were then modified so the system would start up an SSH server accessible over a USB Ethernet adapter. With full access to the system, the search for exploits could begin.

A simple script on the flash drive enables the SSH server.

After some poking, [ea] discovered the script designed to mount USB storage devices had a potential flaw in it. The script was written in such a way that the filesystem label of the device would be used to create the mount point, but there were no checks in place to prevent a directory traversal attack. By crafting a label that read ../../usr/bin/ and placing a Bash script on the drive, it’s possible to run arbitrary commands on the head unit. The provided script permanently adds SSHd to the startup process, so when the system reboots, you’ll be able to log in and explore.

So what does [ea] want to do with this new-found exploit? It looks like the goal is to eventually come up with some custom programs that extend the functionality of the in-dash Linux system. As it seems like these “infotainment” systems are now an inescapable feature of modern automobiles, we’re certainly excited to see projects that aim to keep them under the consumer’s control.

source https://hackaday.com/2021/01/30/nissan-gives-up-root-shell-thanks-to-hacked-usb-drive/

Run the Math, or Try it Out?

I was reading Joshua Vasquez’s marvelous piece on the capstan equation this week. It’s a short, practical introduction to a single equation that, unless you’re doing something very strange, covers everything you need to know about friction when designing something with a rope or a cable that has to turn a corner or navigate a wiggle. Think of a bike cable or, in Joshua’s case, a moveable dragon-head Chomper. Turns out, there’s math for that!

Basically, the more you wrap a cable or rope around something stationary, the more friction you have to deal with. I put this to good advantage last Spring when my son and I were doing some random tree-climbing with ropes. Turns out that four or five loops of climbing rope against fairly frictiony bark is enough to hold the weight of a grown man, with nothing other than the weight of the rope itself on the other end, for instance. I was also using this effect in a recent wall-plotter-bot design that uses simple cable braid instead of the ubiquitous timing belt.

In none of these cases did I work out the capstan equation with my pocket calculator: four loops around is almost always enough™. But by digging into the math and physics, I got more insight. Basically, the friction is an exponential with the angle times the friction coefficient of your cable in the exponent. So what? So, that next turn holds exponentially more weight when you’re climbing. And the grippiness of the tree bark matters in just the same way. You might know this intuitively from experience, but it’s nice to have numbers.

And what’s even better about the insight from doing the math is what doesn’t matter. The radius of the tree falls out, so you can pick a fat branch or a skinny one, as long as it’ll hold your weight!) The fat branch bends less sharply, which gives you less friction per centimeter, but there’s also more centimeters per wrap, and they cancel out. So pick a fatter, rougher tree over a skinnier, smoother one. I would have never thought that!

Here at Hackaday, we’re big fans of rough-and-ready learning by doing. Will this work? Try it out! (If it shouldn’t, and yet it does, it’s a hack.) But there’s also a lot to be said for knowing the underlying math and physics too. Many people think of math as being about crunching numbers, but I find the deeper intuition about which variables in your problem matter, and which don’t at all, infinitely more useful. Learning by doing, guided by a good physical / mathematical intuition, is the best of both worlds. And it saves wear and tear on your mint HP-48G.

source https://hackaday.com/2021/01/30/run-the-math-or-try-it-out/

An Op-Amp From The Ground Up

If we had to pick one part to crown as the universal component in the world of analogue electronics, it would have to be the operational amplifier. The humble op-amp can be configured into so many circuit building blocks that it has become an indispensable tool for designers. It’s tempting to treat an op-amp as a triangular black box in a circuit diagram, but understanding its operation gives an insight into analogue electronics that’s worth having. [Mitsuru Yamada]’s homemade op-amp using discrete components is thus a project of interest, implementing as it does a complete simple op-amp with five transistors.

Looking at the circuit diagram it follows the classic op-amp with a long-tailed pair of NPN transistors driving a PNP gain stage and finally a complimentary emitter follower as an output buffer. It incorporates the feedback capacitor that would have been an external component on early op-amp chips, and it has a couple of variable resistors to adjust the bias. Keen eyed readers will notice its flaws such as inevitably mismatched transistors and the lack of a current mirror in the long-tailed pair, but using those to find fault in a circuit built for learning is beside the point. He demonstrated it in use, and even goes as far as to show it running an audio power amplifier driving a small speaker.

For the dedicated student of op-amps, may we suggest further reading as we examine the first integrated circuit op-amp?

source https://hackaday.com/2021/01/30/an-op-amp-from-the-ground-up-2/

USB-C Charging on Your ThinkPad, One Step at a Time

Hackers love their ThinkPads. They’re easy to work on, well documented, and offer plenty of potential for upgrades. For the more daring, there’s also a wide array of community-developed modifications available. For example, [Berry Berry Sneaky] has recently put together a step-by-step guide on swapping the common ThinkPad rectangular charging port (also used on ThinkBooks and other Lenovo machines) for USB-C Power Delivery.

Now to be clear, this is not a new concept. But between freely sharing the STL for the 3D printed adapter, providing a full parts list, and providing clear instructions on how to put it all together, [Berry Berry Sneaky] has done a fantastic job of making this particular modification as approachable as possible. For the cost of a common PDC004 Power Delivery “trigger” module and a bit of PETG filament, you can add yet another device to the list of things that work with your shiny new USB-C charger.

While not strictly necessary, [Berry Berry Sneaky] recommends getting yourself a replacement DC input cable for your particular machine before you crack open the case. That will let you assemble everything ahead of time, making the installation a lot quicker. It will also let you keep the original rectangular power jack intact so you can swap it back in if something goes wrong or you decide this whole unified charging thing isn’t quite what you hoped for.

Not a member of the ThinkPad Army? No worries. We’ve seen a lot of interest in using these configurable USB-C trigger modules to upgrade all manner of devices to the new Power Delivery standard or sometimes put together custom battery chargers for their older mobile gadgets.

source https://hackaday.com/2021/01/30/usb-c-charging-on-your-thinkpad-one-step-at-a-time/

SOUL Wants to Process Your Audio

Abstraction is the core of nearly all progress in computing. Unless you are fabricating your own semiconductors and drawing wire, we all create with building blocks ranging from components like CPUs, to operating system functions, to specialized libraries. Just as you wouldn’t want to spend your time deblocking disk records or rendering fonts for output devices, you probably shouldn’t have to think too much about audio data. While there are some powerful audio processing libraries out there, a new embeddable language called SOUL (SOUnd Language) is now in version 1.0 and wants to help you create efficient code for processing audio.

The goal of SOUL is to target a runtime that can run on CPUs, but is better on DSPs. The code aims to be secure and real time with no pointers, garbage collection, and other things that typically interfere with audio processing or security.

The code isn’t hard to puzzle out. Here’s the example for cutting audio volume by half:

[CODE]

processor MinimalGainExample

{
// declare our inputs and outputs:
input stream float audioIn; // mono input stream called “audioIn”
output stream float audioOut; // mono output stream called “audioOut”

// every processor must declare a run() function
void run()
{
const float gain = 0.5f; // a constant to use as our gain factor

loop // (this just loops forever)
{
audioOut << audioIn * gain; // Read the next input sample, multiply by our // constant, and write it to our output advance(); // Moves all our streams forward by one frame } } } [/CODE] You can see that a processor is essential a thread and can have local and global storage. There are also graphs that assemble different processors with input and output. Usually, when we want to process audio, we turn to PortAudio just like [Matt] did for his oscilloscope port of Quake. We know of some projects that use Pure Data for audio processing, too.

source https://hackaday.com/2021/01/29/soul-wants-to-process-your-audio/

Add An Extra 8GB of VRAM To Your 2070

Most of us make do with the VRAM that came with our graphics cards. We can just wait until the next one comes out and get a little more memory. After all, it’d be madness to try and delicately solder on new components of something so timing-sensitive as RAM chips, right?

[VIK-on] took it upon himself to do just that. The inspiration came when a leaked diagram suggested that the RTX 2000 line could support 16 GB of RAM by using 2GB chips. NVIDIA never did release a 16GB version of the 2070, so this card is truly one of a kind. After some careful scouring of the internet, the GDDR6 chips were procured and carefully soldered on with a hot air gun. A few resistors had to be moved to accommodate the new RAM chips. During power-on, [VIK-on] saw all 16 GB enumerate and was able to run some stress tests. Unfortunately, the card wasn’t stable and started having black screen issues and wonky clocks. Whether it was a bad solder joint or firmware issues, it’s hard to say but he is pretty convinced it is a BIOS error. Switching the resistors back to the 8GB configuration yielded a stable system.

While a little more recent, this isn’t the only RAM upgrade we’ve covered in the last few months. Video after the break (it’s not in English but captions are available).

Thanks to Carson for sending this one in!

source https://hackaday.com/2021/01/29/add-an-extra-8gb-of-vram-to-your-2070/

Adding Remote Control To An Old Stereo

Sometimes, the best hifi gear is the gear you’ve already got. This is particularly the case in the cassette world, as high quality decks are long out of production. [Nick] liked his current rig, but wanted to be able to use it with a remote from across the room. Naturally, he set to hacking the feature in.

The cassette deck in question, a Yamaha K-220, was old enough to lack a remote, but thankfully new enough to use a computer-controlled tape transport. This meant that the basic features of play, stop, rewind and fast forward can all be controlled with simple digital buttons rather than mechanical ones. This made it easy to interface an ATmega328P to the stereo’s original circuitry. Digital IO pins are hooked up to the buttons, held as high-impedance inputs most of the time, only toggling to ground when necessary to trigger a button press. It was then a simple job to hook up an IR receiver to the chip and program it with some Arduino libraries to work with a typical stereo remote control [Nick] had laying around.

It’s a tidy build, and with more cool cassette releases coming out every year, we’re sure [Nick]’s going to put some miles on the setup. If you find IR too cumbersome though, you can go a step further and replace it with a web app instead. If you’ve been tinkering with similar things in your own workshop, be sure to drop us a line!

source https://hackaday.com/2021/01/29/adding-remote-control-to-an-old-stereo/

Proofing Press Proves DIY is A-OK

Back in the day when most people read the news on wood pulp, newspaper outfits would run off a test print on a small proofing press. This gave them a chance to check for typos before printing off thousands of newspapers on the real press.

These presses can be used for more than letterpress proofing, as [Paul] proves with this DIY version (YouTube, embedded below). They are simple machines that use a heavy roller on bearings to provide uniform pressure, so they’ll work for lino-cut printmaking and aquatint etchings, too.

The roller is the most important bit and is easily the most expensive part of a build like this one. [Paul]’s was fashioned by a UK machinist that he found through ebay. The total cost was £220 (~$300 USD), which is well below the thousand-pound mark where commercial machine prices start.

[Paul] made the base and handle out of plywood and CNC’d the side panels out of aluminium. These side panels contain bearings that hold the roller’s ends in place. As the roller moves back and forth, it slides along on another set of bearings the underside of the press. These bearings ride thin metal rails on the underside of the press so they don’t wear grooves into the wood over time.

[Paul]’s press looks fantastic and looks like it does a great job with everything he throws at it. Some uses require raising up the surface to be printed on to get a good transfer, so [Paul] might make it adjustable in the z-direction at some point in the future. Check out the build and walk-through video after the break.

If [Paul] looks familiar, it’s because we featured his equally impressive large-format book press last spring.

source https://hackaday.com/2021/01/29/proofing-press-proves-diy-is-a-ok/

This Week in Security: Sudo, Database Breaches, and Ransomware

We couldn't resist, OK?
Obligatory XKCD

Sudo is super important Linux utility, as well as the source of endless jokes. What’s not a joke is CVE-2021-3156, a serious vulnerability around incorrect handling of escape characters. This bug was discovered by researchers at Qualys, and has been in the sudo codebase since 2011. If you haven’t updated your Linux machine in a couple days, you may very well be running the vulnerable sudo binary still. There’s a simple one-liner to test for the vulnerability:

sudoedit -s '\' `perl -e 'print "A" x 65536'`

In response to this command, my machine throws this error, meaning it’s vulnerable:

malloc(): corrupted top size
Aborted (core dumped)

To understand the problem with sudo, we have to understand escape characters. It really boils down to spaces in file and folder names, and how to deal with them. You want to name your folder “My Stuff”? That’s fine, but how do you interact with that directory name on the command line, when spaces are the default delimiter between arguments? One option is to wrap it in quotation marks, but that gets old in a hurry. The Unix solution is to use the backslash character as an escape character. Hence you can refer to your fancy folder as My\ Stuff. The shell sees the escape character, and knows to interpret the space as part of the folder name, rather than an argument separator. Escape characters are a common vulnerability location, as there are plenty of edge cases.

Sudo is no exception. The edge case here is a second bug. The sudoedit command launches sudo in editor mode, and is intended to be equivalent to sudo -e. In fact on many systems, sudoedit is a symlink to sudo. The problem is in the command-line parsing code. If you try to invoke sudo with both the -e and -s flags, it treats the command as invalid, and helpfully prints the usage notes. However, when sudoedit is used to launch the editor mode, the -s flag can also be specified, putting sudo into an unintended state, with undefined behavior. After looking over the vulnerability, I’m convinced that this is the more serious of the two bugs. There are likely quite a few other vulnerabilities that could be found as a result of being able to put sudo in two modes of operation at once.

The other problem is how sudo handles an escape character with no following character to escape. The code hops over the null string termination, and keeps copying characters. In a normal usage mode, this code is impossible to execute in this strange way, but because of the odd dual-mode state, this bug can be exploited.

Updated versions of sudo have shipped in the major distros, so make sure you update! Thankfully, while there is a proof-of-concept one-liner that will crash sudo, no actual exploit code has been published. There will likely be full exploit POCs available soon, though.

Load a Webpage, Get iPwned

Apple has published an advisory about what appears to be an attack chain found in the wild against the iOS platform. The chain is a trio of CVEs, two in webkit and one in the kernel. This is likely the work of yet another state-sponsored actor, who put the attack chain together to gather information on a specific group of people. The two webkit CVEs are probably an initial RCE and a sandbox escape. The kernel vuln is then used to elevate to system privileges and run the spyware. It’s typical to see these malware packages run in memory only, and not make any permanent modifications to the device’s OS. If the rest of the story gets released, we can come back and check my guesses for accuracy.

Brazill Leaks Entire Taxpayer Database

It may not be the biggest database leak for raw size, but this must set a per capita record. One of Brazil’s government agencies seems to have let their database escape (in Portuguese), as a whopping 220 million records of CPF number, full name, and date of birth are floating around the shadier side of the internet. This is probably the identifying information of every Brazilian citizen alive, and even some who are no longer with us, because their official population is only 213 million. While the immediate uses for targeted phishing and fraud is obvious, it will be interesting to see what the long term effects are of publishing the equivalent of everyone’s social security number.

And not to be outdone, the dating site MeetMindful has leaked their entire user database as well. If there is any silver lining for the site’s users, it is that no private messages or pictures were part of the leak.

Dovecat. Wait What?

Recently both a Synology user, and a QNAP user discovered a dovecat process pegging their device processors at 100%. What is this strange process, clumsily trying to look like an innocent mail daemon?

Thankfully [Matthew Ruffel] has already done an analysis on this malware. Dovecat is nothing more than the open source XMRig crypto miner, with some hard coded configuration. It’s very possible that any system that has a dovecat process also has the “hy4” malware on it. What might be the most fascinating about this little crypto-mining malware campaign is that it seems to be targeting NAS devices. Alternatively, it may be simply targeting SSH servers with weak passwords.

NetWalker Takedown

The image to the right caught my attention, as there have just been a handful of successful TOR page takedowns like this. The NetWalker infrastructure has been seized, along with over $450,000 in cryptocurrency. A Canadian citizen has been arrested as part of the operation.

Krebs has more details on this story. NetWalker is a ransomware system, and has been called “ransomware-as-a-service”. It remains to be seen if the head of this particular snake has been cut off, or if instead it’s a hydra, and will pop right back up.

Odds’n’ends

VLC has released version 3.0.12. Most of the changelog is normal bug fixes, with support for Apple designed processors being the stand-out new feature, do note that this release also fixed “some security issues”. What issues might those be? While we don’t have the details spelled out, the security bulletin points out a pair of buffer overflows and some invalid pointers being dereferenced. Put clearly, these bugs could probably be used to build an exploit that triggers as a result of viewing a video.

The IObit forums were breached recently, and the user database is being used to spread ransomware. To make the whole scheme seem even more legitimate, the attacker hosted the malicious installer on the compromised site. Here’s where the story takes a humorous turn. The ransom process is also a crypto-currency ponzi scheme! You send us 200 DERO coins to decrypt your files, and once DERO hits $100 a coin, we’ll send you back $500 worth of the coin. It’s a 5X return on your investment!

Drupal just released an update that fixes a potentially severe vulnerability. The Archive_Tar library is used in Drupal core, and contained a directory traversal vulnerability, CVE-2020-36193. This usually means that even if an archive is unzipped in a safe directory, it can overwrite important files elsewhere on the server. Regardless, Drupal considers this a critical issue, and recommends updating right away.

source https://hackaday.com/2021/01/29/this-week-in-security-sudo-database-breaches-and-ransomware/

This Week in Security: Sudo, Database Breaches, and Ransomware

We couldn't resist, OK?
Obligatory XKCD

Sudo is super important Linux utility, as well as the source of endless jokes. What’s not a joke is CVE-2021-3156, a serious vulnerability around incorrect handling of escape characters. This bug was discovered by researchers at Qualys, and has been in the sudo codebase since 2011. If you haven’t updated your Linux machine in a couple days, you may very well be running the vulnerable sudo binary still. There’s a simple one-liner to test for the vulnerability:

sudoedit -s '\' `perl -e 'print "A" x 65536'`

In response to this command, my machine throws this error, meaning it’s vulnerable:

malloc(): corrupted top size
Aborted (core dumped)

To understand the problem with sudo, we have to understand escape characters. It really boils down to spaces in file and folder names, and how to deal with them. You want to name your folder “My Stuff”? That’s fine, but how do you interact with that directory name on the command line, when spaces are the default delimiter between arguments? One option is to wrap it in quotation marks, but that gets old in a hurry. The Unix solution is to use the backslash character as an escape character. Hence you can refer to your fancy folder as My\ Stuff. The shell sees the escape character, and knows to interpret the space as part of the folder name, rather than an argument separator. Escape characters are a common vulnerability location, as there are plenty of edge cases.

Sudo is no exception. The edge case here is a second bug. The sudoedit command launches sudo in editor mode, and is intended to be equivalent to sudo -e. In fact on many systems, sudoedit is a symlink to sudo. The problem is in the command-line parsing code. If you try to invoke sudo with both the -e and -s flags, it treats the command as invalid, and helpfully prints the usage notes. However, when sudoedit is used to launch the editor mode, the -s flag can also be specified, putting sudo into an unintended state, with undefined behavior. After looking over the vulnerability, I’m convinced that this is the more serious of the two bugs. There are likely quite a few other vulnerabilities that could be found as a result of being able to put sudo in two modes of operation at once.

The other problem is how sudo handles an escape character with no following character to escape. The code hops over the null string termination, and keeps copying characters. In a normal usage mode, this code is impossible to execute in this strange way, but because of the odd dual-mode state, this bug can be exploited.

Updated versions of sudo have shipped in the major distros, so make sure you update! Thankfully, while there is a proof-of-concept one-liner that will crash sudo, no actual exploit code has been published. There will likely be full exploit POCs available soon, though.

Load a Webpage, Get iPwned

Apple has published an advisory about what appears to be an attack chain found in the wild against the iOS platform. The chain is a trio of CVEs, two in webkit and one in the kernel. This is likely the work of yet another state-sponsored actor, who put the attack chain together to gather information on a specific group of people. The two webkit CVEs are probably an initial RCE and a sandbox escape. The kernel vuln is then used to elevate to system privileges and run the spyware. It’s typical to see these malware packages run in memory only, and not make any permanent modifications to the device’s OS. If the rest of the story gets released, we can come back and check my guesses for accuracy.

Brazill Leaks Entire Taxpayer Database

It may not be the biggest database leak for raw size, but this must set a per capita record. One of Brazil’s government agencies seems to have let their database escape (in Portuguese), as a whopping 220 million records of CPF number, full name, and date of birth are floating around the shadier side of the internet. This is probably the identifying information of every Brazilian citizen alive, and even some who are no longer with us, because their official population is only 213 million. While the immediate uses for targeted phishing and fraud is obvious, it will be interesting to see what the long term effects are of publishing the equivalent of everyone’s social security number.

And not to be outdone, the dating site MeetMindful has leaked their entire user database as well. If there is any silver lining for the site’s users, it is that no private messages or pictures were part of the leak.

Dovecat. Wait What?

Recently both a Synology user, and a QNAP user discovered a dovecat process pegging their device processors at 100%. What is this strange process, clumsily trying to look like an innocent mail daemon?

Thankfully [Matthew Ruffel] has already done an analysis on this malware. Dovecat is nothing more than the open source XMRig crypto miner, with some hard coded configuration. It’s very possible that any system that has a dovecat process also has the “hy4” malware on it. What might be the most fascinating about this little crypto-mining malware campaign is that it seems to be targeting NAS devices. Alternatively, it may be simply targeting SSH servers with weak passwords.

NetWalker Takedown

The image to the right caught my attention, as there have just been a handful of successful TOR page takedowns like this. The NetWalker infrastructure has been seized, along with over $450,000 in cryptocurrency. A Canadian citizen has been arrested as part of the operation.

Krebs has more details on this story. NetWalker is a ransomware system, and has been called “ransomware-as-a-service”. It remains to be seen if the head of this particular snake has been cut off, or if instead it’s a hydra, and will pop right back up.

Odds’n’ends

VLC has released version 3.0.12. Most of the changelog is normal bug fixes, with support for Apple designed processors being the stand-out new feature, do note that this release also fixed “some security issues”. What issues might those be? While we don’t have the details spelled out, the security bulletin points out a pair of buffer overflows and some invalid pointers being dereferenced. Put clearly, these bugs could probably be used to build an exploit that triggers as a result of viewing a video.

The IObit forums were breached recently, and the user database is being used to spread ransomware. To make the whole scheme seem even more legitimate, the attacker hosted the malicious installer on the compromised site. Here’s where the story takes a humorous turn. The ransom process is also a crypto-currency ponzi scheme! You send us 200 DERO coins to decrypt your files, and once DERO hits $100 a coin, we’ll send you back $500 worth of the coin. It’s a 5X return on your investment!

Drupal just released an update that fixes a potentially severe vulnerability. The Archive_Tar library is used in Drupal core, and contained a directory traversal vulnerability, CVE-2020-36193. This usually means that even if an archive is unzipped in a safe directory, it can overwrite important files elsewhere on the server. Regardless, Drupal considers this a critical issue, and recommends updating right away.

source https://hackaday.com/2021/01/29/this-week-in-security-sudo-database-breaches-and-ransomware/

This Week in Security: Sudo, Database Breaches, and Ransomware

We couldn't resist, OK?
Obligatory XKCD

Sudo is super important Linux utility, as well as the source of endless jokes. What’s not a joke is CVE-2021-3156, a serious vulnerability around incorrect handling of escape characters. This bug was discovered by researchers at Qualys, and has been in the sudo codebase since 2011. If you haven’t updated your Linux machine in a couple days, you may very well be running the vulnerable sudo binary still. There’s a simple one-liner to test for the vulnerability:

sudoedit -s '\' `perl -e 'print "A" x 65536'`

In response to this command, my machine throws this error, meaning it’s vulnerable:

malloc(): corrupted top size
Aborted (core dumped)

To understand the problem with sudo, we have to understand escape characters. It really boils down to spaces in file and folder names, and how to deal with them. You want to name your folder “My Stuff”? That’s fine, but how do you interact with that directory name on the command line, when spaces are the default delimiter between arguments? One option is to wrap it in quotation marks, but that gets old in a hurry. The Unix solution is to use the backslash character as an escape character. Hence you can refer to your fancy folder as My\ Stuff. The shell sees the escape character, and knows to interpret the space as part of the folder name, rather than an argument separator. Escape characters are a common vulnerability location, as there are plenty of edge cases.

Sudo is no exception. The edge case here is a second bug. The sudoedit command launches sudo in editor mode, and is intended to be equivalent to sudo -e. In fact on many systems, sudoedit is a symlink to sudo. The problem is in the command-line parsing code. If you try to invoke sudo with both the -e and -s flags, it treats the command as invalid, and helpfully prints the usage notes. However, when sudoedit is used to launch the editor mode, the -s flag can also be specified, putting sudo into an unintended state, with undefined behavior. After looking over the vulnerability, I’m convinced that this is the more serious of the two bugs. There are likely quite a few other vulnerabilities that could be found as a result of being able to put sudo in two modes of operation at once.

The other problem is how sudo handles an escape character with no following character to escape. The code hops over the null string termination, and keeps copying characters. In a normal usage mode, this code is impossible to execute in this strange way, but because of the odd dual-mode state, this bug can be exploited.

Updated versions of sudo have shipped in the major distros, so make sure you update! Thankfully, while there is a proof-of-concept one-liner that will crash sudo, no actual exploit code has been published. There will likely be full exploit POCs available soon, though.

Load a Webpage, Get iPwned

Apple has published an advisory about what appears to be an attack chain found in the wild against the iOS platform. The chain is a trio of CVEs, two in webkit and one in the kernel. This is likely the work of yet another state-sponsored actor, who put the attack chain together to gather information on a specific group of people. The two webkit CVEs are probably an initial RCE and a sandbox escape. The kernel vuln is then used to elevate to system privileges and run the spyware. It’s typical to see these malware packages run in memory only, and not make any permanent modifications to the device’s OS. If the rest of the story gets released, we can come back and check my guesses for accuracy.

Brazill Leaks Entire Taxpayer Database

It may not be the biggest database leak for raw size, but this must set a per capita record. One of Brazil’s government agencies seems to have let their database escape (in Portuguese), as a whopping 220 million records of CPF number, full name, and date of birth are floating around the shadier side of the internet. This is probably the identifying information of every Brazilian citizen alive, and even some who are no longer with us, because their official population is only 213 million. While the immediate uses for targeted phishing and fraud is obvious, it will be interesting to see what the long term effects are of publishing the equivalent of everyone’s social security number.

And not to be outdone, the dating site MeetMindful has leaked their entire user database as well. If there is any silver lining for the site’s users, it is that no private messages or pictures were part of the leak.

Dovecat. Wait What?

Recently both a Synology user, and a QNAP user discovered a dovecat process pegging their device processors at 100%. What is this strange process, clumsily trying to look like an innocent mail daemon?

Thankfully [Matthew Ruffel] has already done an analysis on this malware. Dovecat is nothing more than the open source XMRig crypto miner, with some hard coded configuration. It’s very possible that any system that has a dovecat process also has the “hy4” malware on it. What might be the most fascinating about this little crypto-mining malware campaign is that it seems to be targeting NAS devices. Alternatively, it may be simply targeting SSH servers with weak passwords.

NetWalker Takedown

The image to the right caught my attention, as there have just been a handful of successful TOR page takedowns like this. The NetWalker infrastructure has been seized, along with over $450,000 in cryptocurrency. A Canadian citizen has been arrested as part of the operation.

Krebs has more details on this story. NetWalker is a ransomware system, and has been called “ransomware-as-a-service”. It remains to be seen if the head of this particular snake has been cut off, or if instead it’s a hydra, and will pop right back up.

Odds’n’ends

VLC has released version 3.0.12. Most of the changelog is normal bug fixes, with support for Apple designed processors being the stand-out new feature, do note that this release also fixed “some security issues”. What issues might those be? While we don’t have the details spelled out, the security bulletin points out a pair of buffer overflows and some invalid pointers being dereferenced. Put clearly, these bugs could probably be used to build an exploit that triggers as a result of viewing a video.

The IObit forums were breached recently, and the user database is being used to spread ransomware. To make the whole scheme seem even more legitimate, the attacker hosted the malicious installer on the compromised site. Here’s where the story takes a humorous turn. The ransom process is also a crypto-currency ponzi scheme! You send us 200 DERO coins to decrypt your files, and once DERO hits $100 a coin, we’ll send you back $500 worth of the coin. It’s a 5X return on your investment!

Drupal just released an update that fixes a potentially severe vulnerability. The Archive_Tar library is used in Drupal core, and contained a directory traversal vulnerability, CVE-2020-36193. This usually means that even if an archive is unzipped in a safe directory, it can overwrite important files elsewhere on the server. Regardless, Drupal considers this a critical issue, and recommends updating right away.

source https://hackaday.com/2021/01/29/this-week-in-security-sudo-database-breaches-and-ransomware/

Fire In The Palm Of Your Hand

For as long as super-heroes have existed, they have inspired hacker projects. For [Everett Bradford], emulating the character Pyro from X-Men has been an on and off project for the last decade. His latest version, Pyro System V4, integrates quite a bit of control electronics to give the rather convincing effect of mind-controlled fire in the palm of his hand. (Video, embedded below.)

The system is a motor-actuated slider strapped to [Everett]’s forearm, which pushes a pivoting end-effector with an integrated butane burner into the palm of his hand. The slider runs on 4 mm linear bearings actuated by a small geared DC motor using cables. The end effector is spring-loaded to push it into the palm and integrates a high voltage ignition arc generator circuit, nozzle, and capacitive activation button.

The butane gas canister and the valve was cannibalized from a small blow torch lighter, and the valve is actuated by another geared DC motor. The valve actuator, slide actuator, and end-effector hinge all integrate position feedback via hall effect sensors and magnets. The sensor in the hinge allows the slide to actively correct for the angle of the user’s wrist, keeping the end effector in the middle of the palm.

The control circuit is split into two parts. One PIC16 microcontroller runs all the motion control and position sensing, while a PIC18 connected to a small touch screen handles user interface, control parameters, and ignition. The touch screen proved especially useful for control parameters during development without needing to connect to a laptop.

Some of [Everett]’s previous version had a much more impressive (and dangerous) flame but was also very bulky. We think this latest version strikes a pretty good balance regarding compactness and achieving convincing illusion.

[Colin Furze] is another name commonly associated with fire-breathing contraptions, but they have a proven history of landing him in hospital.

source https://hackaday.com/2021/01/29/fire-in-the-palm-of-your-hand/

A Look At The Interesting RP2040 Peripheral, Those PIOs

The Raspberry Pi Pico is the latest product in the Raspberry Pi range, and it marks a departure from their previous small Linux-capable boards. The little microcontroller board will surely do well in the Pi Foundation’s core markets, but its RP2040 chip must have something special as a commercial component to avoid being simply another take on an ARM microcontroller that happens to be a bit more expensive and from an unproven manufacturer in the world of chips. Perhaps that special something comes in its on-board Programable IO perhipherals, or PIOs. [CNX Software] have taken an in-depth look at them, which makes for interesting reading.

The PIOs are a set of state machines that have their own simple assembly language to execute simple repetitive I/O tasks without requiring the attention of the main processor core. How they can be configured is up to the imagination of the programmer, but examples suggested are extra I2C or SPI buses, or video interfaces. We expect the hacker community to push them to extremes with unexpected applications, much as has happened with the ESP32’s I2S peripheral. The article introduces the assembly language, then gives us simple examples in assembler, C/C++, and Python. If you have a Raspberry Pi Pico then you’ll surely be wanting to have a play with the PIOs, and we look forward to seeing what you come up with.

You can read Hackaday’s review of the Pico here.

 

source https://hackaday.com/2021/01/29/a-look-at-the-interesting-rp2040-peripheral-those-pios/