Meet The RouterPi, A Compute Module 4 Based GbE Router

[Zak Kemble] likes to build things, and for several years has been pining over various Raspberry Pi products with an eye on putting them into service as a router. Sadly, none of them so far provided what he was looking for with regard to the raw throughput of the Gigabit Ethernet ports. His hopes were renewed when the Compute Module 4 came on scene, and [Zak] set out to turn the CM4 module into a full Gigabit Ethernet router. The project is documented on his excellent website, and sources are provided via a link to GitHub.

A view underneath shows off the RTC, power supply, and more.

Of course the Compute Module 4 is just a module- it’s designed to be built into another product, and this is one of the many things differentiating it from a traditional Raspberry Pi. [Zak] designed a simple two layer PCB that breaks out the CM4’s main features. But a router with just one Ethernet port, even if it’s GbE, isn’t really a router. [Zak] added a Realtek RTL8111HS GbE controller to the PCIe bus, ensuring that he’d be able to get the full bandwidth of the device.

The list of fancy addons is fairly long, but it includes such neat hacks as the ability to power other network devices by passing through the 12 V power supply, having a poweroff button and a hard reset button, and even including an environmental sensor (although he doesn’t go into why… but why not, right?).

Testing the RouterPi uncovered some performance bottlenecks that were solved with some clever tweaks to the software that assigned different ports an tasks to different CPU cores. Overall, it’s a great looking device and has been successfully server [Zak] as a router, a DNS resolver, and more- what more can you ask for from an experimental project?

This CM4 based project is a wonderful contrast to Cisco’s first network product, which in itself was innovative at the the time, but definitely didn’t have Gigabit Ethernet. Thanks to [Adrian] for the tip!

Wireshark HTTPS Decryption

If you’ve done any network programming or hacking, you’ve probably used Wireshark. If you haven’t, then you certainly should. Wireshark lets you capture and analyze data flowing over a network — think of it as an oscilloscope for network traffic. However, by design, HTTPS traffic doesn’t give up its contents. Sure, you can see the packets, but you can’t read them — that’s one of the purposes of HTTPS is to prevent people snooping on your traffic from reading your data. But what if you are debugging your own code? You know what is supposed to be in the packet, but things aren’t working for some reason. Can you decrypt your own HTTPS traffic? The answer is yes and [rl1987] shows you how.

Don’t worry, though. This doesn’t let you snoop on anyone’s information. You need to share a key between the target browser or application and Wireshark. The method depends on the target applications like a browser writing out information about its keys. Chrome, Firefox, and other software that uses NSS/OpenSSL libraries will recognize an SSLKEYLOGFILE environment variable that will cause them to produce the correct output to a file you specify.

How you set this depends on your operating system, and that’s the bulk of the post is describing how to get the environment variable set on different operating systems. Wireshark understands the file created, so if you point it to the same file you are in business.

Of course, this also lets you creep on data the browser and plugins are sending which could be a good thing if you want to know what Google, Apple, or whoever is sending back to their home base using encrypted traffic.

Wireshark and helpers can do lots of things, even Bluetooth. If you just need to replay network data and not necessarily analyze it, you can do that, too.

Eight RS232 Ports, One Ethernet Port

When it comes to impromptu enclosures, [Paul Wallace] is a man after our own hearts, for his serial-to-Ethernet converters allowing him to control older test equipment were housed in takeaway curry containers. Once the test equipment pile had grown it became obvious that a pile of curry containers was a bit unwieldy, even if the curry had been enjoyable, so he set about creating an all-in-one multiway serial to Ethernet box.

Reminiscent of the serial terminal access controllers that were found in dumb terminal sites back in the day, it’s a box with eight DB-9 connectors for serial ports and a single RJ45 Ethernet port. Inside is a Teensy 4.1 which packs a PHY and eight hardware serial ports, and a pile of MAX232 level converter modules. These have a small modification to wire in the CTS and RTS lines, and the whole is clothed in a custom 3D printed case.

The result is a very neat, almost commercial standard box that should save him quite a bit of space. Not everyone has eight devices to drive, so if you have just one how about using an ESP8266?

Receiver board of the Ethernet tester, with only probing pins, and no resistors populated

Ethernet Tester Needs No LEDs, Only Your Multimeter

Ethernet cable testers are dime a dozen, but none of them are as elegant and multimeter-friendly as this tester from our Hackaday.io regular, [Bharbour]. An Ethernet cable has 8 wires, and the 9 volts of easily available batteries come awfully close to that – which is why the board has a voltage divider! On the ‘sender’ end, you just plug this board onto the connector, powered by a 9 volt battery. On the “receiver” end, you take your multimeter out and measure the testpoints – TP7 should be at seven volts, TP3 at three volts, and so on.

As a result, you can easily check any of the individual wires, as opposed to many testers which only test pair-by-pair. This also helps you detect crossover and miswired cables – while firmly keeping you in the realm of real-life pin numbers! This tester is well thought-out when it comes to being easily reproducible – the PCB files are available in the “Files” section, and since the “receiver” and “sender” PCBs are identical, you only need to do a single “three PCBs” order from OSHPark in order to build your own!

Bharbour has a rich library of projects, and we encourage you to check them out! If you ever want to get yourself up to speed on Ethernet basics, we’ve talked about its entire history – and we’ve even explained PoE! After some intensive learning time, perhaps you can try your hand at crimping the shortest Ethernet cable ever.

Hacking An Extra SATA Port Into A Thin Client

Thin clients were once thought by some to be the future of computing. These relatively low-power machines would rely on large server farms to handle the bulk of their processing and storage, serving only as a convenient local way for users to get access to the network. They never quite caught on, but [Jan Weber] found an old example and set about repurposing it as a NAS.

The Fujitsu Futro S900 was built up to 2013, and only had one SATA port from the factory. [Jan] wanted to add another as this would make the device more useful as a network attached storage server.

The motherboard design was intended primarily for industrial control or digital signage applications, and thus has plenty of interfaces onboard. [Jan]’s first target was some unpopulated footprints for SATA ports onboard, but after soldering on a connector, it was found that the BIOS wouldn’t recognise the extra ports anyway.

However, after reflashing the BIOS with one from an alternate model, the port worked! The system also seemed to then imagine it was connected to many additional LAN interfaces, but other than that glitch, the hack is functional. Now, with a pair of 2 TB SSDs inside, the S900 is a great low-power NAS device that can store [Jan]’s files.

It’s a tidy hack, and one that will likely appeal to those who prefer to run their own hardware rather than relying on the cloud. If you’re working on your own innovative NAS project, be sure to let us know!

Tiny Ethernet Cable Arms Race Spawns From Reddit Discussion

If you’ve had any dealings with Cat 5 and Cat 6 cable, and let’s be honest, who hasn’t, you’ve probably wrestled with lengths anywhere from 1 meter to 25 meters if you’re hooking up a long haul. Network admins will be familiar with the 0.1 m variety for neat hookups in server cabinets. However, a Reddit community has recently taken things further.

It all started on r/ubiquiti, where user [aayo-gorkhali] posted a custom-built cable just over 2 inches long. The intention was to allow a Ubiquiti U6-IW access point to be placed on a wall. The tiny cable was used to hook up to the keystone jack that formerly lived in that position, as an alternative to re-terminating the wall jack into a regular RJ45 connector.

Naturally this led to an arms race, with [darkw1sh] posting a shorter example with two RJ-45 connectors mounted back to back with the bare minimum of cable crimped into the housings. [Josh_Your_IT_Guy] went out the belt sander to one-up that effort, measuring just over an inch in length.

[rickyh7] took things further, posting a “cable” just a half-inch long (~13 mm). In reality, it consists of just the pinned section of two RJ-45 connectors mounted back to back, wired together in the normal way. While electrically it should work, and it passes a cable tester check, it would be virtually impossible to actually plug it into two devices at once due to its tiny length.

We want to see this go to the logical end point, though. This would naturally involve hacking away the plastic casings off a pair of laptops and soldering their motherboards together at the traces leading to the Ethernet jack. Then your “cable” is merely the width of the solder joint itself.

Alternatively, you could spend your afternoon learning about other nifty hacks with Ethernet cables that have more real-world applications!

Teardown: Alcatel Telic 1 Minitel Terminal

For British teenagers in the 1980s, the delights of 8-bit computers such as the Sinclair Spectrum, Commodore 64, or BBC Micro were firmly restricted to the offline arena. We would read about the BBS scene on the other side of the Atlantic, but without cheap local calls and with a modem costing a small fortune, the chances of us ever experiencing one was zero. When we took the British school rite of passage of a trip to France though, we were astounded to see that every French person was not merely online, but that they were doing so with a neat little all-in-one terminal. We’d just been introduced to the French Minitel system, and in that minute shared a glimpse of the future.

Un Réseau Trés Français

The Minitel terminal is a small CRT monitor with a fold-down alphanumeric keyboard.
My Alcatel Minitel terminal

In the 1970s and 1980s, so-called videotext systems, terminal-based phoneline access to information services on central computers, were seen as an obvious next step for telephone network operators with an interest in profitable new products. In most countries this resulted in services such as the UK’s Prestel, a subscription service relying on costly hardware, but France Télécom instead pursued the bold path of making the terminals free to subscribers with free access to phone listings and yellow pages, but a business model based on pay-to-use premium services.

Thus, through the 1980s all French households had a Minitel terminal beside the phone, and the service became a runaway success. Ever since seeing Minitel terminals as a tourist I’d been fascinated by the service, so here in the 2020s when a friend was visiting their family in France I asked whether he could pick up an old Minitel terminal for me. Thus I found myself parting with around $25 and being rewarded with a slightly battered Minitel cardboard box containing one of the familiar brown Alcatel terminals. I certainly wasn’t expecting one in its original packaging. Continue reading “Teardown: Alcatel Telic 1 Minitel Terminal”