Transparent Framedeck Is Clearly Capable

When the universe tells you to build a cyberdeck, then build a cyberdeck you must. The lucky [Richard Sutherland] got an email from user-serviceable laptop purveyors Framework about the availability of their main board for use as a single-board computer. They agreed to send him a laptop and some extra modules as long as he promised to build something awesome with it. There was just one fabulous caveat: whatever design he came up with had to be released to the public.

[Richard] took this capable board with four USB ports and built an all-in-one that pays homage to the slab-style computers like the TRS-80 Model 100, which [Richard] really wanted as a kid. It looks lovely in layered acrylic and brass, and even though we pretty much always think that see-through is the best design choice you can make, transparency really works here. Tucked into those layers is a custom 36-key split running on an Elite-C microcontroller with Gazzew Boba U4 Silent-but-tactile switches, and a trackball in between. Be sure to take the build tour and check out all the process pictures.

Acrylic looks great and seems great on paper, but what about actual use? [Richard] put rubbery SKUF feet on the front, and a pair of repositionable feet on the back. Not only will it stay in place on the table, but he’ll be able to see the screen better and type at an angle greater than zero.

As cool as it would be to have Framedeck in the apocalypse, it will be hard to hide and could get looted. You might want to build something a bit more concealed.

Building Petahertz Logic With Lasers And Graphene

There was a time when we thought a 50 MHz 486 was something to get excited about. In comparison, the computer this post was written on clocks in at about 3.8 GHz, which these days, isn’t an especially fast machine. But researchers at the University of Rochester and the  Friedrich-Alexander-Universität Erlangen-Nürnberg want to blow the doors off even the fastest modern CPUs. By using precise lasers and graphene, they are developing logic that can operate at nearly 1 petahertz (that’s 1,000,000 GHz).

These logic gates use a pair of very short-burst lasers to excite electrical current in graphene and gold junctions. Illuminating the junctions very briefly creates charge carriers formed by electrons excited by the laser. These carriers continue to move after the laser pulse is gone. However, there are also virtual charge carriers that appear during the pulse and then disappear after. Together, these carriers induce a current in the graphene. More importantly, altering the laser allows you to control the direction and relative composition of the carriers. That is, they can create a current of one type or the other or a combination of both.

This is the key to creating logic gates. By controlling the real and virtual currents they can be made to add together or cancel each other out. You can imagine that two inputs that cancel each other out would be a sort of NAND gate. Signals that add could be an OR or AND gate depending on the output threshold.

[Ignacio Franco], the lead researcher, started working on this problem in 2007 when he started thinking about generating electrical currents with lasers. It would be 2013 before experiments bore out his plan and now it appears that the technique can be used to make super fast logic gates.

We often pretend our logic circuits don’t have any propagation delays even though they do. If you could measure it in femtoseconds, maybe that’s finally practical. Then again, sometimes delays are useful. You have to wonder how much the scope will cost that can work on this stuff.

Repairing An HDMI Adapter Doesn’t Go So Well

[Adrian] has a lot of retrocomputers, so he uses an RGB to HDMI converter to drive modern monitors. In particular, he has a box that uses a programmable logic chip to read various RGB signals and ships them to a Raspberry Pi Zero to drive the HDMI output. Sounds great until, of course, something goes wrong.

A converter that had worked stopped working due to a bad board with the programmable logic chip on it. Unlike the retrocomputers, this board has little tiny surface mount components. A little analysis suggested that some of the chip pins were not accepting inputs.

Continue reading “Repairing An HDMI Adapter Doesn’t Go So Well”

Can You Hear Me Now? Lunar Edition

Despite what it looks like in the movies, it is hard to communicate with astronauts from Earth. There are delays, and space vehicles don’t usually have a lot of excess power. Plus everything is moving and Doppler shifting and Faraday rotating. Even today, it is tricky. But how did Apollo manage to send back TV, telemetry, and voice back in 1969? [Ken Shirriff] and friends tell us part of the story in a recent post where he looks at the Apollo premodulation processor.

Things like weight and volume are always at a premium in a spacecraft, as is power. When you look at pictures of this solid box that weighs over 14 pounds, you’ll be amazed at how much is crammed into a relatively tiny spot. Remember, if this box was flying in 1969 it had to be built much earlier so there’s no way to expect dense ICs and modern packaging. There’s not even a printed circuit board. The components are attached to metal pegs in a point-to-point fashion. The whole thing lived near the bottom of the Command Module’s lower equipment bay.

Continue reading “Can You Hear Me Now? Lunar Edition”

Network Time Protocol On The ESP32

Network Time Protocol (NTP) is one of the best ways to keep networked computers synchronized to the same time. It’s simple, lightweight, and not only allows computers to maintain a time standard together, but it also allows some computer manufacturers to save some money on hardware costs. The Raspberry Pi is perhaps the most well-known example of a low-cost computer without the extra expense of a real-time clock (RTC). While the Pi sets up NTP essentially automatically, other microcontrollers like the ESP32 don’t, but it is possible to configure them to use this time standard with some work.

For this project the MicroPython implementation for the ESP32 is required. MicroPython is a way of running Python code on microcontrollers or other embedded systems without all of the overhead that Python would normally require. Luckily enough, the NTP libraries are built right in so once MicroPython is running on the ESP32 it’s nearly as easy as calling the library. Of course you will have to make sure there is an internet connection, and then grab the time, sync it to the machine, and then set the timezone.

For a bonus exercise, the project’s creator [Bhavesh] suggests attempting to configure Daylight Savings Time, although this can be a surprisingly difficult problem to solve. In the meantime, there are a few other ways of installing a clock on a microcontroller like this one. An RTC module is an obvious choice, but you can also get incredibly accurate time by using a GPS module as well.

Gaming Mouse Becomes Digital Camera

Ever since the world decided to transition from mechanical ball mice to optical mice, we have been blessed with computer pointing devices that don’t need regular cleaning and have much better performance than their ancestors. They do this by using what is essentially a tiny digital camera to monitor changes in motion. As we’ve seen before, it is possible to convert this mechanism into an actual camera, but until now we haven’t seen something like this on a high-performance mouse designed for FPS gaming.

For this project [Ankit] is disassembling the Logitech G402, a popular gaming mouse with up to 4000 dpi. Normally this is processed internally in the mouse to translate movement into cursor motion, but this mouse conveniently has a familiar STM32 processor with an SPI interface already broken out on the PCB that could be quickly connected to in order to gather image data. [Ankit] created a custom USB vendor-specific endpoint and wrote a Linux kernel module to parse the data into a custom GUI program that can display the image captured by the mouse sensor on-screen.

It’s probably best to not attempt this project if you plan to re-use the mouse, as the custom firmware appears to render the mouse useless as an actual mouse. But as a proof-of-concept project this high-performance mouse does work fairly well as a camera, albeit with a very low resolution by modern digital camera standards. It is much improved on older mouse-camera builds we’ve seen, though, thanks to the high performance sensors in gaming mice.

Asahi GPU Hacking

[Alyssa Rosenzweig] has been tirelessly working on reverse engineering the GPU built into Apple’s M1 architecture as part of the Asahi Linux effort. If you’re not familiar, that’s the project adding support to the Linux kernel and userspace for the Apple M1 line of products. She has made great progress, and even got primitive rendering working with her own open source code, just over a year ago.

Trying to mature the driver, however, has hit a snag. For complex rendering, something in the GPU breaks, and the frame is simply missing chunks of content. Some clever testing discovered the exact failure trigger — too much total vertex data. Put simply, it’s “the number of vertices (geometry complexity) times amount of data per vertex (‘shading’ complexity).” That… almost sounds like a buffer filling up, but on the GPU itself. This isn’t a buffer that the driver directly interacts with, so all of this sleuthing has to be done blindly. The Apple driver doesn’t have corrupted renders like this, so what’s going on?
Continue reading “Asahi GPU Hacking”