Linux Server, Wakey, Wakey

We all know we should save energy and not leave computers on all the time. It is probably better for the computer, too. But when you operate a home server, it isn’t feasible to just turn it on when you want to use it and then turn it off again. Or is it? [Daniel] decided that was exactly what he wanted to do, and it was quite an adventure to get there.

The trick is to use a Raspberry Pi — they don’t draw nearly the power a big computer does — to stay awake to facilitate the process. The Pi watches for ARP requests for the sleeping machine and replies on its behalf so that other network nodes can find the machine even when it isn’t on.

The server itself detects if it is idle in a cron job. When it finds that there are no SSH or other service connections for a set period of time, it suspends the machine to RAM, putting it in a low-power mode. Waking a sleeping computer up over the network is a solved problem, and [Daniel] investigated several wake-on-lan solutions.

There were several oddities to work out, including a Mac pinging an unused network share, and a router that was making NetBIOS queries. However, [Daniel] found a $30 router that could do port mirroring and that helped a lot with troubleshooting.

This is one of those things where his recipe won’t exactly fit your situation. But the post has a lot of good information and some nice tricks for troubleshooting any kind of network bizarreness.

Wireshark is a great tool for this kind of work, too. Another useful technique is recording network traffic and playing it back.

A New Commodore C128 Cartridge

A new Commodore C128 cartridge in 2023?  That’s what [idun-projects] set out to do and, as you can see in the video below, did. I did the original C128 hardware design and worked with the amazing team that turned this home computer out in 1985. Honestly, I am amazed that any of them are still working 38 years later, let alone that someone is making new cartridges for it.

I also never thought I would hear about someone’s in-depth experience designing for the ‘128. The post takes us through [idun-project’s] decision to use the ‘128 and how modern expectations apply to all computers, even the old ones. Hot on the list was connectivity and reasonable storage (looking at you, floppy disks).

Continue reading “A New Commodore C128 Cartridge”

Low-Cost Display Saved By RP2040

Anyone looking for components for electronics projects, especially robotics, microcontrollers, and IoT devices, has likely heard of Waveshare. They are additionally well-known suppliers of low-cost displays with a wide range of resolutions, sizes, and capabilities, but as [Dmitry Grinberg] found, they’re not all winners. He thought the price on this 2.8-inch display might outweigh its poor design and lack of documentation, and documented his process of bringing it up to a much higher standard with a custom driver for it.

The display is a 320×240 full-color LCD which also has a touchscreen function, but out-of-the-box only provides documentation for sending data to it manually. This makes it slow and, as [Dmitry] puts it, “pure insanity”. His ultimate solution after much poking and prodding was to bit-bang an SPI bus using GPIO on an RP2040 but even this wasn’t as straightforward as it should have been because there are a bunch of other peripherals, like an SD card, which share the bus. Additionally, an interrupt is needed to handle the touchscreen since its default touch system is borderline useless as well, but after everything was neatly stitched together he has a much faster and more versatile driver for this display and is able to fully take advantage of its low price.

For anyone else attracted to the low price of these displays, at least the grunt work is done now if a usable driver is needed to get them up and running. And, if you were curious as to what [Dmitry] is going to use this for, he’s been slowly building up a PalmOS port on hardware he’s assembling himself, and this screen is the perfect size and supports a touch interface. We’ll keep up with that project as it progresses, and for some of [Dmitry]’s other wizardry with esoteric displays make sure to see what he’s done with some inexpensive e-ink displays as well.

IBM Selectric Typewriters Finally Get DIY Typeballs

IBM’s Selectric line of typewriters were quite popular in the 1960s, thanks in part to an innovation called the typeball which allowed for easy font changes on a single machine. Unfortunately, as if often the case when specialized components are involved, it’s an idea that hasn’t aged particularly well. The Selectric typewriters are now around 60 years old and since IBM isn’t making replacement parts, those restoring these machines have had to get somewhat creative like using a 3D printer to build new typeballs.

It sounds like it would be a simple, but much like the frustration caused with modern printers, interfacing automated computer systems with real-world objects like paper and ink is not often as straightforward as we would like. The main problem is getting sharp edges on the printed characters which is easy enough with metal but takes some more finesse with a printed plastic surface. For the print, each character is modelled in OpenSCAD and then an automated process generates the 3D support structure that connects the character to the typeball.

This process was easier for certain characters but got more complicated for characters with interior sections or which had a lot of sharp angles and corners. Testing the new part shows promise, although the plastic components will likely not last as long as their metal counterparts. Still, it’s better than nothing.

Regular Hackaday readers may recall that the ability to 3D print replacement Selectric typeballs has been on the community’s mind for years. When we last covered the concept in 2020 we reasoned that producing them on resin printers might be a viable option, and in the end, that does indeed seem to have been the missing element. In fact, this design is based on that same one we covered previously — it’s just taken this long for desktop resin 3D printing technology to mature enough.

Building The OhSillyScope

If you have a Raspberry Pi connected to an LED matrix, you might think about creating a simple oscilloscope. Of course, the Pi isn’t really well-suited for that and neither is an LED matrix, so [Thomas McDonald] decided to create the OhSillyScope, instead.

The device isn’t very practical, but it does add some flash to live music performances or it makes a cool music visualizer. The matrix is only 64×64 so you can’t really expect it to match a proper scope. Besides that, it pulls its data from the Pi’s ALSA sound system.

You can find a video of the device on [Thomas’] Reddit post and a few additional videos on his Instagram account. Looks like a fun project and it also serves as a nice example if you need to read data from the sound card or drive that particular LED matrix.

We might have opted for PortAudio if we had written the same code, but only because it is more portable, which probably doesn’t matter here. Of course, you could also use GNURadio and some Python to drive the display. As usual, plenty of ways to solve any given problem.

One of the PCB projects involved being held in the author's hands - a large-ish green board, with two Pi Picos visible on it

RP2040 And 5V Logic – Best Friends? This FX9000P Confirms!

Over the years, we’ve seen some modern microcontrollers turn out to be 5V-tolerant – now, RP2040 joins the crowd. Half a year ago, when we covered an ISA card based on a Pi Pico, [Eben Upton] left a comment saying that RP2040 is, technically, 5V tolerant for GPIO input purposes. The datasheets don’t state this because the reality of 5V tolerance isn’t the same as for natively 5V-tolerant chips – for instance, it doesn’t extend all the way to 5.5V for it to be ‘legally’ 5V-tolerant, as in, what 5V tolerance typically means when mentioned in a datasheet.

Having read that comment, [Andrew Menadue] has set out to test-drive the RP2040 GPIO capabilities, in a perfectly suited real-world scenario. He’s working with retro tech like Z80-era computers, using RP2040 boards for substituting entire RAM and ROM chips that have died in his FX9000P. Not only do the RP2040-driven replacements work wonders, using RP2040 boards also turns out to be way cheaper than sourcing replacements for chips long out of production!

Previously, [Andrew] used level shifter chips for interfacing the RP2040 with 5V systems, but he’s rebuilt a few designs of his without level shifters for the sake of this experiment. Now, he reports that, so far, those boards have been running long-term without problems. Together with [Eben]’s comment, this instills confidence in us when it comes to our RP2040 forays and 5V inputs.

There are a number of important caveats to this, that you should read up on. Some major points – certain GPIOs (like ADC ones) can’t take it, the GPIOs aren’t 5V-tolerant when set to output, and you shouldn’t feed the GPIOs 5V when the RP2040’s VDDIO is not powered up. [Andrew] points out one such case himself – one board of his has shed all level shifters except for the 8-bit address bus, which is driven by either the CPU or the RP2040 at different times, and that would result in 5V on an output-set GPIO when contention happens. All in all, if you’re working with 5V logic and your application is more hacking than business-critical stuff, you can shed the level shifters, too.

Continue reading “RP2040 And 5V Logic – Best Friends? This FX9000P Confirms!”

PiEEG Offers Affordable Brain-Computer Interface

One day in the future, we may interact with our electronic devices not with physical input or even voice commands, but simply by thinking about what we want to do. Such brain–computer interfaces (BCIs), combined with machine learning, could allow us to turn our ideas into reality faster and with less effort than ever before — imagine being able to produce a PCB design simply by thinking about how the completed circuit would work. Of course as an assistive technology, BCIs would be nothing less than life-changing for many.

Today BCIs are in their infancy, but that doesn’t mean there isn’t room for hackers and makers to experiment with the concept. [Ildar Rakhmatulin] has been working on low-cost open source BCIs for years, and with the recent release of his PiEEG on Crowd Supply, thinks he’s finally found an affordable solution that will let individuals experiment with this cutting edge technology.

Implemented as a shield that can be connected to a Raspberry Pi 3 or 4, the PiEEG features 8 channels for connecting wet or dry electrodes that can measure biosignals such as those used in electroencephalography (EEG), electromyography (EMG), and electrocardiography (ECG). With the electrodes connected, reading these biosignals is as easy as running a Python script. While primarily designed for neuroscience experimentation, [Ildar] says the device is also useful for learning more about signal processing, filters, and machine learning.

Continue reading “PiEEG Offers Affordable Brain-Computer Interface”