Python Comes To The Arduino Uno Q

MicroPython is a well-known and easy-to-use way to program microcontrollers in Python. If you’re using an Arduino Uno Q, though, you’re stuck without it. [Natasha] saves the day by bringing us a a subset reimplementation of machine for the Arduino Uno Q.

In the past, microcontrollers were primarily programmed in C, but since MicroPython’s popularity increased over the years, it has become more and more common for introductory microcontroller programming to be in Python. Python, of course, is generally considered more beginner-friendly than C. [Natasha] presumably wanted to teach this way using an Uno Q, but the usual MicroPython APIs weren’t available. And so, in true hacker fashion, they simply made their own library to implement the most important bits of the familiar API. It currently implements a subset of the machine module: Pin, PWM, ADC, I2C, SPI and UART. While not complete, this certainly has potential to make the Uno Q easier to use for those familir with MicroPython.

Hacking Fermentation For Infinite Pickles From Pass-thru Bioreactor

Home-fermented foods are great– they’re healthier, more flavourful, and cheaper than store-bought alternatives. What they aren’t is convenient: you need to prep a big batch of veggies, let it sit, and then you have to store the excess pickles. If you’re not careful, you end up with ancient, over-fermented pickles at the bottom of the crock, or worse– run out of pickles! Surely a fate worse than death. [Cody] at Cody’s Lab has a solution: a continous-flow fermentation process that keeps just the right supply of pickles coming at all times. Our grandmothers who kept a crock for months in the cold room or root cellar might be confused, but this hack brings pickles into the Just-In-Time framework of the 21st century.

Specifically this is for lactic acid fermentation, the type that gets you kosher dills, saurkraut and kimchi along with a whole mess of other tangy, tasty vegetable treats. Vinegar pickles are a whole other thing. It’s done in a brine, as the lactic acid bacteria are salt tolerant in a way that most things that would rot your food and/or make you sick would not. You can reuse the brine over and over, which is what [Cody] is doing: he crafts a U-shaped crock out of old glass bottles and a couple of pickle jars. He cuts the jars into angled pipe segments that are held together with aquarium sealant, which is apparently food safe. It holds water and looks surprisingly good, in that it isn’t hideous.

The bioreactor gets loaded up with veggies on one end, plus lots of salt and spices to taste, plus some cultured brine from an old batch to kickstart everything. The starter isn’t necessary; it just gets things going faster. The initial packing is the hardest: after filling it the first time, one needs only press new veggies in at one end, while removing tasty treats at the other. A special packing tool [Cody]makes helps with that, but he plans on adding a larger feed side. Thanks to that kickstart, the pickles were ready to try after about a week– which means his tube is a bit long, for his desired dwell time. If you like more fermentation to your pickles, then you might like this size.

May be the first time pickles have been featured on Hackaday without turning them into LEDs. We’ve featured plenty of fermentation projects, with automation to help make the best brew or a build for better tempeh, but not a lot of vegetables.

Thanks to [cam72cam] for the tip!

Continue reading “Hacking Fermentation For Infinite Pickles From Pass-thru Bioreactor”

A Look At Full Spectrum 3D Printing

Many modern desktop 3D printers include the ability to print in multiple colors. However, this typically only works with a few colors at a time, and the more colors you can use, the higher the machine’s cost and complexity. However, a recent technique allows printers to mix new colors by overlaying thin sheets of different filaments. [YGK3D] looks at how it works in a recent video.

In the early days of 3D printing, there were several competing approaches. You could have separate extruders, each with a different color. Some designs used a single extruder and switched between different filaments on demand. Others melted different filaments together in the hot end.

One advantage of the hotends that melted different materials is that you could make different colors by adjusting the feed rates of the plastics. However, that has its own problems with maintaining flow rate, and you can’t really use multiple material types. But using single or multiple hotends that take one filament at a time means you can only handle as many colors as you have filaments. You can’t mix, say, white and black to get gray.

Using Full Spectrum, you can define virtual filaments, and the software figures out how to approximate the color you want by using thin layers of different colors. The results are amazing. While this technically could work on any printer, in reality, a filament-switching printer will create a ton of waste to mix colors, and a single-filament machine will drive you batty manually swapping filament.

So you probably really need a tool changer and translucent plastic. You can see the difference in the test article when using opaque filament vs translucent ones. At low layer heights, four filament colors can give you 39 different colors. At more common layer heights, you may have to settle for 24 different colors.

One issue is that the top and bottom surfaces don’t color well. However, a new plugin that adds texture to the surfaces may help overcome that problem.

We looked at Full Spectrum earlier, but development continues. If you are still trying to get a handle on your filament-switching printer, we can help.

Continue reading “A Look At Full Spectrum 3D Printing”

AI For The Skeptics: Attempting To Do Something Useful With It

There are some subjects as a writer in which you know they need to be written, but at the same time you feel it necessary to steel yourself for the inevitable barrage of criticism once your work reaches its audience. Of these the latest is AI, or more specifically the current enthusiasm for Large Language Models, or LLMs. On one side we have the people who’ve drunk a little too much of the Kool-Aid and are frankly a bit annoying on the subject, while on the other we have those who are infuriated by the technology. Given the tide of low quality AI slop to be found online, we can see the latter group’s point.

This is the second in what may become an occasional series looking at the subject from the perspective of wanting to find the useful stuff behind the hype; what is likely to fall by the wayside, and what as yet unheard of applications will turn this thing into something more useful than a slop machine or an agent that might occasionally automate some of your tasks correctly. In the previous article I examined the motivation of that annoying Guy In A Suit who many of us will have encountered who wants to use AI for everything because it’s shiny and new, while in this one I’ll try to do something useful with it myself.

Continue reading “AI For The Skeptics: Attempting To Do Something Useful With It”

A 6502 All In The Data

Emulating a 6502 shouldn’t be that hard on a modern computer. Maybe that’s why [lasect] decided to make it a bit harder. The PG_6502 emulator uses PostgreSQL. All the CPU resources are database tables, and all opcodes are stored procedures. Huh.

The database is pretty simple. The pg6502.cpu table has a single row that holds the registers. Then there is a pg6502.mem table that has 64K rows, each representing a byte. There’s also a pg6502.opcode_table that stores information about each instruction. For example, the 0xA9 opcode is an immediate LDA and requires two bytes.

The pg6502.op_lda procedure grabs that information and updates the tables appropriately. In particular, it will load the next byte, increment the program counter, set the accumulator, and update the flags.

Honestly, we’ve wondered why more people don’t use databases instead of the file system for structured data but, for us, this may be a bit much. Still, it is undoubtedly unique, and if you read SQL, you have to admit the logic is quite clear.

We can’t throw stones. We’ve been known to do horrible emulators in spreadsheets, which is arguably an even worse idea. We aren’t the only ones.

A Tale Of Cheap Hard Drives And Expensive Lessons

When it comes to electronic gadgets, I’m a sucker for a good deal. If it’s got a circuit board on the inside and a low enough price tag on the outside, you can be pretty sure I’ll be taking it home with me. So a few years ago, when I saw USB external hard drives on the shelf of a national discount chain for just $10, I couldn’t resist picking one up. What I didn’t realize at the time however, was that I’d be getting more in the bargain than just some extra storage space.

It’s a story that I actually hadn’t thought of for some time — it only came to mind recently after reading about how the rising cost of computer components has pushed more users to the secondhand market than ever before. That makes the lessons from this experience, for both the buyer and the seller, particularly relevant.

What’s in the Box?

It wasn’t just the low price that attracted me to these hard drives, it was also the stated capacity. They were listed as 80 GB, which is an unusually low figure to see on a box in 2026. Obviously nobody is making 80 GB drives these days, so given the price, my first thought was that it would contain a jerry-rigged USB flash drive. But if that was the case, you would expect the capacity to be some power of two.

Upon opening up the case, what I found inside was somehow both surprising and incredibly obvious. The last thing I expected to see was an actual spinning hard drive, but only because I lacked the imagination of whoever put this product together. I was thinking in terms of newly manufactured, modern, hardware. Instead, this drive was nearly 20 years old, and must have been available for pennies on the dollar since they were presumably just collecting dust in a warehouse somewhere.

Or at least, that’s what I assumed. After all, surely nobody would have the audacity to take a take a bunch of ancient used hard drives and repackage them as new products…right?

Continue reading “A Tale Of Cheap Hard Drives And Expensive Lessons”

Don’t Trust Password Managers? HIPPO May Be The Answer!

The modern web is a major pain to use without a password manager app. However, using such a service requires you to entrust your precious secrets to a third party. They could also be compromised, then you really are in trouble. You could manage passwords with local software or even a notebook, but that adds cognitive load. You could use the same password across multiple sites to reduce the load, but that would be unwise. Now, however, with the HIPPO system, there is another way.

HIPPO is implemented as a browser extension paired with a central server. The idea is not to store any password anywhere, but to compute them on the fly from a set of secrets. One secret at the server end, and one the user supplies as a passphrase. This works via an oblivious pseudorandom function (OPRF) protocol. Details from the linked site are sparse, but we think we’ve figured it out from other sources.

First, the user-supplied master password is hashed with the site identifier (i.e., the domain), blinded with a random number, and then processed using an OPRF, likely built on an elliptic-curve cryptographic scheme. This ensures the server never receives the raw password. Next, the server applies its own secret key via a Pseudorandom Function (PRF) and sends it back to the client. Obviously, its private key is also never sent raw. Next, the client removes the blinding factor (using the same random number it used when sending) from the original key, producing a site-specific high-entropy secret value that the extension passes to a Key Derivation Function (KDF), which formats it into a suitable form for use as a password. Finally, the extension auto-fills the password into the website form, ready to send to the site you want to access. This password is still unique per site and deterministic, which is how this whole scheme can replace a password database. Neat stuff!

This advantage to this whole scheme means there’s no vault to compromise, no storage requirements, and it generates a strong password for each unique site, meaning no password reuse and a low chance of brute-force cracking. The obvious flaw is that it creates a single point of failure (the HIPPO service) and shifts the risk of compromise from vault cracking the master password, infiltrating the server, or compromising its secret key. It’s an interesting idea for sure, but it doesn’t directly manage 2FA, which is a layer you’d want adding on top to ensure adequate security overall, and of course, it’s not a real, live service yet, but when (or if) it becomes one, we’ll be sure to report back.

Confused by all this? Why not dig into this article first? Or maybe you fancy a DIYable hardware solution?