Run Out Of GPIO On Your Pi? Don’t Despair!

When the first Raspberry Pi rolled off the production line back in 2012 it sported a 26-pin expansion header that seemed to conceal endless possibilities. A later upgrade to the 40-pin header we have today unleashed a few more precious interfaces, but even then it’s still possible to run out. This was the problem faced by [woj], who needed a PWM line to drive a cooling fan  but whose other work had used everything on the header. The solution? Dive into the other connectors on board looking for an unused GPIO.

Every full-sized Pi has a connector for the camera and the LCD screen, and to operate some of the functions of those peripherals they contain a few extra GPIOs that aren’t normally used by end users. If  the camera or LCD is not being used then these lines are potentially up for grabs. In particular there’s a GPIO that turns the camera on or off that’s relatively easy to solder a wire to, and it was this one that fed the PWM line.

There are of course a few other ways to  find some more lines on a Pi and indeed almost any microcontroller, with one of the many types of GPIO expansion chips.  This trick is a particularly simple one though. and perhaps unsurprisingly it has surfaced here before.

Ask Hackaday: Why Make Modular Hardware?

In the movies, everything is modular. Some big gun fell off the spaceship when it crashed? Good thing you can just pick it up and fire it as-is (looking at you, Guardians of the Galaxy 2). Hyperdrive dead? No problem, because in the Star Wars universe you can just drop a new one in and be on your way.

Of course, things just aren’t that simple in the real world. Most systems, be they spaceships or cell phones, are enormously complicated and contain hundreds or thousands of interconnected parts. If the camera in my Samsung phone breaks, I can’t exactly steal the one from my girlfriend’s iPhone. They’re simply not interchangeable because the systems were designed differently. Even if we had the same phone and the cameras were interchangeable, they wouldn’t be easy to swap. We’d have to crack open the phones and carefully perform the switch. Speaking of switches, the Nintendo Switch is a good counterexample here. Joycon break? Just buy a new one and pop it on.

What if more products were like the Nintendo Switch? Is its modularity just the tip of the iceberg?

Continue reading “Ask Hackaday: Why Make Modular Hardware?”

Paper Pi Is An Ergonomic Cyberdeck Meant For Thumbs

What’s the fastest way to master console stuff like screen or emacs? Force yourself to use it exclusively, of course. But maybe you’d be tempted to cheat with a desktop. We know we would be. In that case, you ought to build a console-only cyberdeck like this sweet little thing by [a8skh4].

This cyberdeck serves another purpose as well — the keyboard layout is Miryoku, so [a8ksh4] can get more practice with that at the same time. Fortunately, the layout is built for emacs.

Inside is a Raspberry Pi 4 and what looks to be an Arduino handling the keyboard input. The Paper Pi spotlights a 4.2″ e-ink screen between a split thumb keyboard that’s made of soft, silent, tactile switches.

Since they’re SMD, [a8ksh4] made clever use of header pins to get them to work with protoboard. As much as we love the keyboard, it would be awesome to see a few switches on the shoulders or even the back that make use of the rest of the fingers. Check out more build pictures in the gallery.

We love to see cyberdecks with split keyboards, because you shouldn’t have to sacrifice ergonomics in a portable computer. Here’s one that comes in three pieces, making it easy to get the spacing between the halves just right.

Via r/cyberdeck

Visual Raspberry Pi With Node-Red And TensorFlow

If you prefer to draw boxes instead of writing code, you may have tried IBM’s Node-RED to create logic with drag-and-drop flows. A recent [TensorFlow] video shows an interview between [Jason Mayes] and [Paul Van Eck] about using TensorFlow.js with Node-RED to create machine learning applications for Raspberry Pi visually. You can see the video, below.

The video doesn’t go into much detail since it is only ten minutes long. But it does show how easy it is to do things like identify images using an existing TensorFlow model. There is a more detailed tutorial available, as well as a corresponding video, which you can see below.

Continue reading “Visual Raspberry Pi With Node-Red And TensorFlow”

PiStorm Brings Modern Muscle To The Amiga

The Amiga, well known as the best and greatest computer ever designed, is nonetheless a platform of yesteryear. Its 68K, and later PowerPC, architectures have both been abandoned by the mainstream, and its attractive grey industrial design no longer graces store shelves. That doesn’t mean the platform is dead however, with diehard shredders like [Claude Schwarz] working hard to keep it alive with projects like PiStorm.

PiStorm is a Motorola 68K CPU emulator, running on a Raspberry PI 3A. The Pi uses its GPIOs to interact with a CPLD chip, which acts as the logic glue to allow the modern single board computer to emulate the Amiga’s original processor. However, it’s more than just an easy way to replace or upgrade a CPU. It also offers additional features, like retargetable graphics acceleration, SCSI disk emulation, and the ability to run whatever Kickstart ROM you so desire.

While the initial work has been done on a Pi 3A, [Claude] has also demonstrated some of the basic functionality running on a Pi CM4 too. The benchmarks are more fierce than a Beyoncé Super Bowl half time show, so if you need grunt on your classic Amiga, this could be the way to go. As a bonus, files to build your own are readily available on Github, which should make it a mite more accessible than other Amiga accelerator boards.

We wonder whether this accelerator could be used to hook the Amiga up to Spotify, a la this previous build. Likely, time will tell. Video after the break.

Continue reading “PiStorm Brings Modern Muscle To The Amiga”

Bridging The PC And Embedded Worlds With Pico And Python

Although protocols like I2C and SPI are great for communicating between embedded devices and their peripherals, it can be a pain to interface these low-level digital interfaces to a PC. [Alexandre] typically used an Arduino to bridge between the PC and embedded worlds, but he got tired of defining a custom serial protocol for each project. Inspired by MicroPython’s machine module, [Alexandre] has developed u2if—an implementation of some of MicroPython’s machine module for PC—using a USB-connected Raspberry Pi Pico to bridge between a PC and low-level digital interfaces.

u2if consists of two parts: the PC portion is a Python implementation of a portion of the MicroPython machine module, and the Raspberry Pi Pico receives some custom C++ firmware. Thus far, [Alexandre] has implemented functionality for the onboard ADCs, I2C, SPI, UART, and GPIO lines as well as additional support for I2S sound and the WS2812B addressable LED.

Development board for Raspberry Pi Pico.

In addition to the u2if package, [Alexandre] has designed a PCB to break out all of the Raspberry Pi Pico’s interfaces in a handy 3×3.9″ board. We especially like that multiple headers are supplied for I2C, including one with enough space to mount an SSD1306 OLED display.

We think this could be an incredibly useful tool, and what makes it even more impressive is that it uses a board many of us already have laying around. If you want a dedicated device for interfacing with low-level digital buses, you may want to check out the GreatFET.

Tightly Packed Raspberry Pi Tricorder Impresses

We’ll say upfront that we don’t have nearly as much information about this 3D printed Star Trek: The Next Generation tricorder as we’d like. But from the image galleries [Himmelen] has posted we know it’s running on the Raspberry Pi Zero W, has a color LCD in addition to a monochrome OLED, and that it’s absolutely packed with gear.

So far, [Himmelen] has fit an NESDR RTL-SDR dongle, a GPS receiver, an accelerometer, and the battery charging circuitry in the top half of the case. Calling it a tight fit would be something of an understatement, especially when you take into account all the wires snaking around in there. But as mentioned in the Reddit thread about the device, a custom PCB backplane of sorts is in the works so all these modules will have something a little neater to plug into.

There are a lot of fantastic little details in this build that have us very excited to see it cross the finish line. The female USB port that’s been embedded into the top of the device is a nice touch, as it will make it easy to add storage or additional hardware in the field. We also love the keyboard, made up of 30 individual tact switches with 3D printed caps. It’s hard to imagine what actually typing on such an input device would be like, but even if each button just fired off its own program or function, we’d be happy.

Judging by the fact that the LCD shows the Pi sitting at a login prompt in all the images, we’re going to go out on a limb and assume [Himmelen] hasn’t gotten to writing much software for this little gadget yet. Once the hardware is done and it’s time to start pushing pixels though, something like Pygame could be used to make short work of a LCARS-style user interface that would fit the visual style of The Next Generation. In fact, off the top of our heads we can think of a few turn-key projects out there designed for creating Trek UIs, though the relatively limited computational power of the Pi Zero might be a problem.

We’ve seen several projects that tried to turn the iconic tricorder into a functional device. Some have focused on the arguably more recognizable Next Generation style such as this one, and others have targeted the more forgiving brick-shaped unit from Kirk and Spock’s era. The Wand Company is even working on a officially licensed tricorder that will supposedly be as close to we can get to the real thing with modern tech and a $250 USD price tag, though we’d wager COVID has slowed progress down on that one. In any event, whether you build it or buy it, the tricorder seems destined to become reality before too long.