PCIe For Hackers: An M.2 Card Journey

I’ve designed a few M.2 adapters for my own and my friends’ use, and having found those designs online, people have asked me for custom-made adapters. One of these requests is quite specific – an adapter that adds one more PCIe link to an E-key M.2 slot, the kind of slot you will see used in laptops for WiFi cards.

See, the M.2 specification allows two separate PCIe links connected to the E-key slot; however, no WiFi cards use this apart from some really old WiGig-capable ones, and manufacturers have long given up on connecting a second link. Nevertheless, there are some cards like the Google Coral M.2 E-key dual AI accelerator and the recently announced uSDR, that do indeed require the second link – otherwise, only half of their capacity is available.

It’s not clear why both Google and WaveletSDR designed for a dual-link E-key socket, since those are a rare occurrence; for the Google card, there are plenty of people complaining that the board they bought just doesn’t fully work. In theory, all you need to do to help such a situation, is getting a second PCIe link from somewhere, then wiring it up to the socket – and a perfect way to do it is to get a PCIe switch chip. You will lose out on some bandwidth because the uplink PCIe connection of the switch can only go so fast; for things like this AI accelerator, it’s not much of a problem since the main point is to get the second device accessible. For the aforementioned SDR, it might turn out useless, or you might win some but lose some – can’t know until you try! Continue reading “PCIe For Hackers: An M.2 Card Journey”

PCjr WebServer Hits 2500 Hours Uptime

When [Mike] fired up his PCjr webserver back in March, he probably wasn’t expecting it to go viral. 2640 hours later, here we are! Not only has his machine run continuously for over 110 days, it also is surviving a global hug of death. All of this is thanks to some very special software.

We see lots of old machines here on Hackaday. We also see lots of minimal web servers. But we don’t see many that can run for thousands of hours, offering up to 8 simultaneous connections. Curious if jr is still up? Check brutmanlabs.org. The whole website is hosted on the 40-year-old machine. If you want to be a bit more kind, here’s a direct link to the text-only status page. While many of those hours were idle, currently lots of folks are hitting that little V20 CPU, so please give it a few seconds to respond.

The PCjr has a few upgrades — the aforementioned V20 CPU upgrade, a jrIDE sidecar, and a memory upgrade to 736 kB to name a few.  Ethernet connectivity is via a Xircom parallel port adapter – which is circa 1993.  The operating system is IBM PC DOS 5.02. One thing to note is that all these upgrades were possible back in the mid-1980’s when the PCjr was still current.  [Mike] could run the system with an MFM hard drive, an ISA ethernet card (via an adapter), and use the original CRT monitor. Older DOS versions would work too — though partition sizes would be limited. The “modern” conveniences are just to keep from wearing out vintage hardware which is quickly becoming rare.

The real glue that holds this all together is [Mike’s] own software: mTCP. mTCP is a full set of tools for running internet applications on systems running MS-DOS or a compatible OS. We’ve seen quite a few mTCP projects over the years.  [Mike] has worked tirelessly testing the software, ensuring that it is stable and reliable.

Software is never perfect though – one thing [Mike] didn’t implement is a log roller. Since he has logging turned on, the PCjr was slowly filling up its hard drive. Once the drive was full, mTCP would perform an orderly shutdown — but the uptime will be reset.  [Mike] was able to go in and switch off logging with  DOS’s DEBUG command. A live patch is not the way one would normally update software – but the fact that he was able to do it shows how deep [Mike’s] knowledge of the software goes.

[Mike] has even provided a live stream recording of the little PCjr handling requests from all over the globe.

Continue reading “PCjr WebServer Hits 2500 Hours Uptime”

DIY All-Flash NAS Vs. Commercial Hardware

[Jeff Geerling] has tried building his own network-attached storage before, but found that the Raspberry Pi just wasn’t able to keep pace with his demands. He’s back with a new all-flash NAS build, and put his new design to the test against proper store-bought gear.

His build is based around the ROCK 5 Model B, which is able to truck data around far faster than most other single-board computers. Internally, it can top 1 GB/sec without too much hassle. He decided to build a NAS rig using the board, putting it up against the turn-key ASUSTOR AS-T10G3.

Using OpenMediaVault to run the ROCK 5 as a NAS, [Jeff] was able to get decent performance out of the setup. With a 3-drive RAID 5 configuration, he recorded write and read speeds of 100 MB/sec and 200 MB/sec respectively, over a 2.5 Gbps network connection. There were also some spikes and curious performance wobbles. While speed was better than [Jeff]’s previous Raspberry Pi experiments, it wasn’t capable of double or triple the performance like he’d hoped. In comparison, the ASUSTOR solution was capable of much greater speeds. It topped out at 600 MB/sec write speeds, and 1.2 GB/sec on reads.

If you’re looking to build a high-performance DIY NAS, the ROCK 5 may be a better solution than most Raspberry Pi boards. However, if you want speed over all else, existing commercial NAS solutions really have the edge. Video after the break.

Continue reading “DIY All-Flash NAS Vs. Commercial Hardware”

Vintage Digital Frequency Meter Teardown

You think of digital displays as modern, but the idea isn’t that new. We had clocks, for example, with wheels and flip digits for years. The Racal frequency counter that [Thomas Scherrer] is playing with in the video below has columns of digits with lamps behind them. You just need the right plastic and ten lightbulbs per digit, and you are in business. Easy enough to accomplish in 1962.

Inside the box was surprising. The stack of PC boards looks more like a minicomputer than a piece of test gear. There were a few novel items inside, too, ranging from a glass-encapsulated crystal to an interesting method of selecting the line voltage.

Continue reading “Vintage Digital Frequency Meter Teardown”

Solenoid Keyboard Sounds Very Much Like A Typewriter

Mechanical keyboards are muchly adored things. For many of us, they take us back to that loud clickity-clack that was so common before consumer keyboards went to membrane switches. For others, it’s just for the pure joy of the finger-powered symphony. The solenoid edition of the Red Herring keyboard from [Ming-Gih Lam] understands the beauty of this sound intimately. It can be nearly silent if you so desire, or it can clack away with the best of them (via Hackster.io).

It all comes down to the switches used in the design. [Lam] selected the Silent Alpacas from Durock, noted for their quiet operation, particularly when lubricated. You get just a faint slide-and-click noise from the keyboard under regular use.

The joy of the solenoid edition is in, you guessed it, the solenoid. It fires away with every keypress when enabled, creating a sound more akin to a real typewriter than any mechanical keyboard we’ve ever heard. Click-clack fans will love it, while those with sensitive ears will scream at any cube neighbours that dare to buy one and switch it on.

Files are available on Github for the curious. We’ve seen some other great keyboards over the years, like this nifty split-board design. Video after the break.

Continue reading “Solenoid Keyboard Sounds Very Much Like A Typewriter”

3D Printer Recognizes Third-Party Build Plates, Just Make Your Own ID Codes

The Bambu X1C 3D printer is a machine known for its speed, and it has a number of useful features like automatic build platform recognition. Factory build platforms are marked with an identifier code, and thanks to [elumspe] it’s now possible to make your own identifiers to stick onto third-party platforms and have the printer recognize them as though they were factory offerings. There’s even a super handy 3D-printable alignment tool that ensures the identifier goes in the correct spot, which is a nice touch.

These codes aren’t DRM so much as they are used by the printer to automatically verify that the installed build plate matches the slicer settings before a job begins. Printing one and sticking it in the right place is an easy way to get third-party plates recognized the same as factory offerings.

The identifier codes aren’t DRM so much as they are a way for the printer to verify that the installed build platform matches the slicer settings before a print begins, and throw up a warning if it doesn’t. The printer is perfectly happy to use third-party build surfaces, but since they lack an identifier, the printer will throw a warning each time. One solution is to simply disable checking the build platform before a print, but for those who would prefer to have the printer see what it expects to see, printing a small 2D barcode to stick on is an easy way to do it.

We see these sometimes called QR codes, but they look more like AprilTags. Both are types of 2D barcode, but while QR codes can encode a variety of information types, AprilTags are simpler and usually represent identifiers. In this case, they’re an appropriate way to let a camera-enabled printer know what kind of build plate is installed.

AprilTags are common in computer vision applications, and even relatively modest hardware can detect and decode them almost in real time. AprilTags are convenient and easy to use, as this gate access system demonstrates.

Breaking Land Speed Records With An RC Car

Building and running a land speed record car is an expensive business that requires incredibly wealthy benefactors. Doing it on a smaller scale with a radio control car is still pricy, but more within the reach of the individual. [ProjectAir] has been working on just that, and recently set out to break records with a car of his own design.

The car runs a Jetcat 220 engine capable of delivering 220 newtons of thrust, built into a custom aluminium chassis with streamlined bodywork. Early runs saw it reach 112 km/h, but the goal was to push it beyond 150 km/h to break the standing Guinness World Record.

With an RC event running on a local runway, [ProjectAir] had the venue and opportunity to make an attempt. It was tough going, with the car throwing off its nosecose in one run, while rough weather brought further struggles. Strong crosswinds played a role in a violent crash on the car’s fastest pass, which ripped the car apart and destroyed the engine. However, in the end, it had done enough to secure a record at over 152 km/h, even if its later faster efforts didn’t officially count.

It’s clear that the car has come a long way since [ProjectAir’s] initial efforts in 2022, and we can’t wait to see where the project goes next. Video after the break.

Continue reading “Breaking Land Speed Records With An RC Car”