A pinout diagram of the new Pi 4, showing all the alternate interfaces available.

Did You Know That The Raspberry Pi 4 Has More SPI, I2C, UART Ports?

We’ve gotten used to the GPIO-available functions of Raspberry Pi computers remaining largely the same over the years, which is why it might have flown a little bit under the radar: the Raspberry Pi 4 has six SPI controllers, six I2C controllers, and six UARTs – all on its 40-pin header. You can’t make use of all of these at once, but with up to four different connections wired to a single pin you can carve out a pretty powerful combination of peripherals for your next robotics, automation or cat herding project.

The datasheet for these peripherals is pleasant to go through, with all the register maps nicely laid out – even if you don’t plan to work with the register mappings yourself, the maintainers of your preferred hardware enablement libraries will have an easier time! And, of course, these peripherals are present on the Compute Module 4, too. It might feel like such a deluge of interfaces is excessive, however, it lets you achieve some pretty cool stuff that wouldn’t be possible otherwise.

Having multiple I2C interfaces helps deal with various I2C-specific problems, such as address conflicts, throughput issues, and mixing devices that support different maximum speeds, which means you no longer need fancy mux chips to run five low-resolution Melexis thermal camera sensors at once. (Oh, and the I2C clock stretching bug has been fixed!) SPI interfaces are used for devices with high bandwidth, and with a few separate SPI ports, you could run multiple relatively high-resolution displays at once, No-Nixie Nixie clock style.

As for UARTs, the Raspberry Pi’s one-and-a-half UART interface has long been an issue in robotics and home automation applications. With a slew of devices like radio receivers/transmitters, LIDARs and resilient RS485 multi-drop interfaces available in UART form, it’s nice that you no longer have to sacrifice Bluetooth or a debug console to get some fancy sensors wired up to your robot’s brain. You can enable up to six UARTs. Continue reading “Did You Know That The Raspberry Pi 4 Has More SPI, I2C, UART Ports?”

ESP32 And Raspberry Pi Take Over Game Boy LCD

The Nintendo Game Boy and its many permutations represent one of the most well-known and successful gaming platforms ever produced. There was a decades-long stretch of time where the most popular kid in the lunch room was the one who brought in their Game Boy so the rest of the class could huddle around and check out the latest Pokemon title.

But those days are long gone, and now these once-coveted handhelds can be had for a song on the second-hand market. Which makes it the perfect time to check out this project [kgsws] released recently that allows you to interface the Game Boy LCD with the ESP32 or the Raspberry Pi. In the most basic of applications, it lets you push video from your Linux computer out to the Game Boy LCD over WiFi. But as the video below illustrates, that’s just the tip of the iceberg.

With the ESP32 wired between the handheld’s LCD and main PCB, the microcontroller can also act as a capture device using I2S camera mode. Compared to what ends up showing on the handheld’s LCD, the recorded gameplay [kgsws] shows off looks fantastic. Visuals are crisp and fluid, and naturally devoid of the Game Boy’s iconic (if slightly nauseating) greenish tint.

The project also includes the capability to control an array of Game Boy LCDs, which allows for some interesting possibilities. The image can be stretched to cover multiple displays, which [kgsws] demonstrates by playing a game on 3 x 3 grid of salvaged panels, but each LCD also can be controlled individually as is the case with the large digital clock seen above.

Whether you’re looking for a way to capture gameplay on the real hardware, or want to run RetroPie on a real Game Boy screen, we’re excited to see what folks come up with using this project.

Continue reading “ESP32 And Raspberry Pi Take Over Game Boy LCD”

Sending Pics To Grandma, No Smartphone Needed

When it comes to keeping in touch with the grandparents, a lack of familiarity with modern technology can get in the way. [palmerabollo] wanted to share photos with his grandmother, but found that it was difficult as she didn’t have a smartphone or an Internet connection to receive photos. Thus, a custom build for grandma was in order! (translated)

To minimise maintenance requirements, the build relies on a thermal receipt printer. Each roll of thermal paper is good for printing off about 150 images before needing a change, so it’s a low-cost, fuss-free solution with no need for ink changeovers.

A Raspberry Pi Zero 2W runs the show, paired with a HAT that provides cellular internet connectivity. Photos are sent over Telegram with some custom Python code that [palmerabollo] put together. The system uses the Python “thermalprinter” library, with the Floyd-Steinberg dithering algorithm baked in allowing nice quality even on the simple thermal printer.

It’s a fun build, and lets [palmerabollo] send his grandmother fun photos and messages without requiring any effort on her part. It’s super cute to see the photos stuck up on the refrigerator, too.

There’s plenty of fun to be had with thermal printers, so don’t be afraid to get stuck in yourself! Video after the break. Continue reading “Sending Pics To Grandma, No Smartphone Needed”

Cyberdeck

This End Times Cyberdeck Is Apocalypse-Ready

In the cyberdeck world, some designs are meant to evoke a cyberpunk vibe, an aesthetic that’s more lighthearted than serious. Some cyberdecks, though, are a little more serious about hardening their designs against adverse conditions. That’s where something like the ARK-io SurvivalDeck comes into play.

Granted, there does seem to be at least a little lightheartedness at play with the aptly named [techno-recluse]’s design. It’s intended to be an “Apocalypse Repository of Knowledge”, which may be stretching the point a bit. But it does contain an impressive amount of tech —  wide-band software defined radio (SDR) covering HF to UHF, GPS module, a sensor for air pressure, temperature, and humidity, and a Raspberry Pi 3B running Kali Linux. Everything is housed in a waterproof ammo can; a 3D printed bezel holds an LCD touchscreen and a satisfying array of controls, displays and ports. The lid of the ammo can holds a keyboard, which was either custom-made to precisely fit the lid or was an incredibly lucky find.

There’s a lot to like about this build, but our favorite part is the external dipole for receiving NOAA weather satellite imagery. The ability to monitor everything from the ham bands to local public service channels is a nice touch too. And we have no complaints about the aesthetics or build quality either. This reminds us of an earlier cyberdeck with a similar vibe, but with a more civilian flavor.

Thanks to [Kate] for the tip.

[via Tom’s Hardware]

Learning The Ropes With A Raspberry Pi Mandelbrot Cluster

You’ve probably heard it said that clustering a bunch of Raspberry Pis up to make a “supercomputer” doesn’t make much sense, as even a middle-of-the-road desktop could blow it away in terms of performance. While that may be true, the reason most people make Pi clusters isn’t for raw power, it’s so they can build experience with parallel computing without breaking the bank.

So while there was probably a “better” way to produce the Mandelbrot video seen below, creator [Michael Kohn] still learned a lot about putting together a robust parallel processing environment using industry standard tools like Kubernetes and Docker. Luckily for us, he was kind enough to document the whole process for anyone else who might be interested in following in his footsteps. Whatever your parallel task is, and whatever platform it happens to be running on, some of the notes here are likely to help you get it going.

It’s not the biggest Raspberry Pi cluster we’ve ever seen, but the four Pi 4s and the RGB LED festooned enclosure they live in make for an affordable and space-saving cluster to hone your skills on. Whether you’re practicing for the future of software development and deployment, or just looking for something new to play around with, building one of these small-scale clusters is a great way to get in on the action.

Continue reading “Learning The Ropes With A Raspberry Pi Mandelbrot Cluster”

Portable PI Powered Music Player

There was a brief time in the early 2000s when we carried cellphones, wallets, keys, and a bespoke digital media player loaded with a small selection of our music libraries. Devices like iPods, Zunes, Sandisk Sansa, and iRiver. Then as cell phones gained more storage and processing power, the two devices became one, and audio players slipped to obscurity as sports accessories. Perhaps in that vein, [BalderDragonSlayer] made his own Raspberry Pi-powered media player.

The device was cobbled together using a Raspberry Pi Zero, an Adafruit OLED bonnet, a LiPo charger, and a cheap USB DAC. The interface software is written in python, which has all your usual player controls, using the directional joystick and two pushbuttons on the bonnet. DietPi is a slimmed-down Linux that offers an impressively fast boot time, which is why it was picked for this project. The case was a simple project case with some holes dremeled into the face for the screen and buttons.

It is a wonderful little project that seems wonderful for walks in the park. This isn’t the first Pi-powered media player we’ve seen before. But we’re hoping we see more in the future.

Automated Mushroom Cultivation Yields Delicious Fried Goodies

[Kyle Gabriel] knows mushrooms, and his years of experience really shine through in his thorough documentation of an automated mushroom cultivation environment, created with off-the-shelf sensors and hardware as much as possible. The results speak for themselves, with some delicious fried oyster mushrooms to show for it!

Fried oyster mushrooms, grown from scratch.

The most influential conditions for mushroom cultivation are temperature, humidity, and CO2 concentration, and to automate handling the environmental conditions [Kyle] created Mycodo, an open-source system that leverages inexpensive hardware and parts while also having the ability to take regular photos to keep an eye on things.

Calling [Kyle]’s documentation “comprehensive” doesn’t do it justice, and he addresses everything from setting up a positive pressure air filtration system for a work area, to how to get usable cultures from foraged mushrooms, all the way through growth and harvesting. He even includes a delicious-looking recipe for fried mushrooms. It just doesn’t get more comprehensive than that.

We’ve seen [Kyle]’s earlier work before, and it’s fantastic to see the continued refinement. Check out a tour of the whole thing in the video embedded below (or skip to 16:11 if you want to make yourself hungry.)

Continue reading “Automated Mushroom Cultivation Yields Delicious Fried Goodies”