A red 3D-printed Raspberry Pi-based document scanner

Raspberry Pi Scanner Digitizes On The Cheap

It’s pretty important in 2024 to be able digitize documents quickly and easily without necessarily having to stop by the local library or buy an all-in-one printer. While there are plenty of commercial solutions out there, [Caelestis Cosplay] has created a simple document scanner that takes documents, as [Caelestis Cosplay] puts it, from papers to pixels.

The build is probably what you’re expecting — it’s essentially a Raspberry Pi (in this case a 4B), a V2 Pi camera, and a handful of custom 3D-printed parts. [Caelestis Cosplay] says they had never designed anything for printing before, and we think it looks great. There’s also a buzzer to indicate that the scan is starting (one beep) or has completed (two beeps), a ‘ready’ indicator, and a ‘working’ indicator.

Everything you’d need to build your own is available over on Instructables, including document scanner and controller scripts. Be sure to check it out in action after the break, and see it quickly scan in a document and put it on a thumb drive.

Looking for a 3D scanner? Check out the OpenScan project.

Continue reading “Raspberry Pi Scanner Digitizes On The Cheap”

FLOSS Weekly Episode 779: Errata Prevention Specialist

This week Jonathan Bennett and Dan Lynch sit down with Andy Stewart to talk about Andy’s Ham Radio Linux (AHRL)! It’s the Linux distro designed to give hams the tools they need to work with their radios. What’s it like to run a niche Linux distro? How has Andy managed to keep up with this for over a decade? And what’s the big announcement about the project breaking today?

Continue reading “FLOSS Weekly Episode 779: Errata Prevention Specialist”

Compiling And Running Turbo Pascal In The Browser

When a friend of [Lawrence Kesteloot] found a stack of 3.5″ floppy disks, they found that it contained Turbo Pascal code which the two of them had worked on back in the Summer of 1989. Amidst reminiscing about the High School days and watching movies on VHS, [Lawrence] sought a way to bring these graphical applications once more back to life. Not finding an easy way to compile Turbo Pascal code on Mac even back in 2013 when he started the project, he ended up writing a Turbo Pascal compiler in JavaScript, as any reasonable person would do in this situation.

SPIDER.PAS in its full glory. (Credit: Lawrence Kesteloot)
SPIDER.PAS in its full glory. (Credit: Lawrence Kesteloot)

As noted by [Lawrence], the compiler doesn’t implement the full Turbo Pascal 5.5 language, but only the subset that was required to compile and run these applications which they had found on the floppy disks. These include ROSE.PAS and SPIDER.PAS along with three others, and can also be found in the GitHub repository. As can be seen in the online version of the compiler, it captures the feel of programming Pascal in 1989 on the command line.

Naturally, the software situation has changed somewhat over the last decade. We’ve recently seen some promising multi-platform Pascal compilers, and of course you could even run Turbo Pascal in DOSBox or similar. That might make this project seem irrelevant, but being able to write and run Pascal applications in more ways and on more platforms is never a bad thing.

The Next Evolution Of The Raspberry Pi Recovery Kit

At Hackaday, the projects we cover are generally a one-off sort of thing. Somebody makes something, they post it online, we share it with our audience — rinse and repeat. If a project really captures people’s imaginations, it might even inspire a copy or two, which is gratifying for everyone involved. But on the rarest of occasions, we run across a project like [Jay Doscher]’s Recovery Kit.

To say that the Recovery Kit was an inspiration to others would be putting it mildly. Revolutionary would be more like it, as it resulted in more “Pi-in-a-Pelican” builds than we could possibly count. So it’s only natural that [Jay] would return to the well and produce a second version of his heavy-duty cyberdeck.

Continue reading “The Next Evolution Of The Raspberry Pi Recovery Kit”

Linux Fu: Stupid Systemd Tricks

Last time, I gave a whirlwind introduction to a very small slice of systemd. If you aren’t comfortable with systemd services, timers, and mounts, you might want to read that now. Otherwise, press on to see a few interesting uses for custom systemd units, including running a few things on a schedule and automatically mounting a Raspberry Pi Zero.

Can you do every one of these things in a different way? Of course you can. I’m not debating the relative merits of using or not using systemd. However, unless you totally control your own environment, good chance you are going to have to interact with systemd at some point.

Stupid Trick #1: Update Your IP Address

A few years ago, I talked about updating your remote DNS server with your public IP address. This lets you refer to a hostname like snoopy.hackaday.com and get back to your computer that often changes IP addresses. Sure, you can get services to do that for you, but you must either pay or agree to read ads on their site to keep your hostname going. This is all under your control. In the original post, I suggested using cron or NetworkManager to run the update script. I also hinted you could do it with systemd, but I didn’t tell you how. Let’s fix that.

Continue reading “Linux Fu: Stupid Systemd Tricks”

PicoNtrol Brings Modern Controllers To Atari 2600

While there’s an argument to be made that retro games should be experienced with whatever input device they were designed around, there’s no debating that modern game controllers are a lot more ergonomic and enjoyable to use than some of those early 8-bit entries.

Now, thanks to the PicoNtrol project from [Reogen], you can use the latest Xbox and PlayStation controllers with the Atari 2600 via Bluetooth. Looking a bit farther down the road the project is aiming to support the Nintendo Entertainment System, and there’s work being done to bring the Switch Pro Controller into the fold as well.

Continue reading “PicoNtrol Brings Modern Controllers To Atari 2600”

Delays And Timers In LTSpice (no 555)

If you need a precise time, you could use a microcontroller. Of course, then all your friends will say “Could have done that with a 555!” But the 555 isn’t magic — it uses a capacitor and a comparator in different configurations to work. Want to understand what’s going on inside? [Mano Arrostita] has a video about simulating delay and timer circuits in LTSpice.

The video isn’t specifically about the 555, but it does show how the basic circuits inside a timer chip work. The idea is simple: a capacitor will charge through a resistor with an exponential curve. If you prefer, you can charge with a constant current source and get a nice linear charge.

You can watch the voltage as the capacitor charges and when it reaches a certain point, you know a certain amount of time has passed. The discharge works the same way, of course.

We like examining circuits for learning with a simulator, either LTSpice or something like Falstad. It is easier than breadboarding and encourages making changes that would be more difficult on a real breadboard. If you want a refresher on LTSpice or current sources, you can kill two birds with one stone.

Continue reading “Delays And Timers In LTSpice (no 555)”