The EDG C++ Compiler Frontend Has Been Open Sourced

Recently [John Spicer] of the EDG C++ compiler front-end project announced that the project will be made open source, from now on managed by the non-profit C++ Alliance. Related source code can be found on the GitHub account.

The Edison Design Group (EDG) is a US company which has made compiler front-ends since 1988, previously also for Java and Fortran. They are used in the Intel C++ compiler, Microsoft’s VC++, NVIDIA’s CUDA compiler, as well as many other commercial products. Last year the decision was made to shutdown the company in 2026 and transition to an open source model, with the details outlined on the EDGCPP site.

Although far from the only C++ front-end, EDGCPP will be very interesting still for supporting bleeding-edge features and having been used in such wide-ranging, demanding applications by a host of commercial customers. For most of us C++ developers our contact with it will have been via the MSVC and Intel Compiler Collection tooling, but of course it’s just one part of the entire toolset.

We’re looking forward to seeing what this means for the wider open source C++ ecosystem, especially as it pertains to GCC and LLVM’s Clang.

Using LineageOS For Phones And DIY Smart TVs Is Pretty Nifty

Although Android is essentially just another Linux distribution, most people only experience it in the form of the rather restrictive and proprietary versions found on smartphones, tablets and smart TVs. While this is probably fine for the average person, there’s also a lot to be said for the more pure Android experience in the form of LineageOS.

With this fully open and community-supported version of Android you’re free to muck about with your hardware to your heart’s content, without annoyances like unremovable bloatware apps and restrictions on e.g. enabling developer mode.

Even more fun is that there are ports of LineageOS to systems such as the Raspberry Pi SBC, including in the Android TV configuration. This means that not only can your ten year old Android phone get a make-over with a recent version of Android, you can also create your own Android TV-based smart TV without all the spying and other nasty things that commercial smart TVs love to do.

Continue reading “Using LineageOS For Phones And DIY Smart TVs Is Pretty Nifty” →

USB-C PD Tamed With This Analyzer

USB-C Power Delivery (PD) has been a boon to anyone working with low-voltage DC power, because at a stroke it replaces a vast array of wall warts, power supplies, and connector standards with one simple and straightforward commoditized system. But with varying capabilities between sources and sinks, it can be difficult to know what’s going on.

[Marco Tabini] has created Dr. PD, a USB -C PD protocol analyzer. It can sit between USB-C PD source and sink, or emulate a sink in order to characterize a source. It supports an impressive range of USB power protocols, and can work up to the full 48 volt/240 watt limits of the technology. The project is open source and is to be the subject of a crowdfunding campaign should you want one without the extra work.

It’s likely that many of you will have had bad experiences with cheap USB-C PD gear failing to follow standards, being unable to handle the specified current, or just plain supplying the wrong voltage. We have, and while USB-C PD is genuinely a great technology, this regrettable hardware represents its grubby underbelly. This is just the project we need on the bench in our hackerspace.

In the past we’ve written about USB-C PD as a great example of new technology done right.

A New Type Of LLM On The Block: Decision-Making Models

Large language models (LLMs) output language, but they are commonly tasked with making a decision or classification of some kind instead of writing an essay or chat reply. An LLM will be provided with input, and asked to classify that content in some way: with a rating, yes/no answer, a best-fit categorization, and so forth. A recent new type of model by the name of Jev was released only weeks ago and it is extremely fast, ultra-cheap, and laser-focused on that decision-making role. It can’t write even a single sentence, but it can classify and categorize very, very quickly.

Jev works like this: it still accepts text input, but it outputs only floating-point numbers. Those numbers are the “answers” to user-specified yes/no type questions, lists of choices, and scoring-type requests. [Simon Willison] provides a concise summary of what Jev does, and what makes this new category of model so interesting.

To say that the idea has caught on would be a wild understatement. Folks are making their own decision-type models and experiments in a flurry. Kev and Nimble are two examples (Nimble was added as a supported model in Ollama just recently, and is small enough to run locally with relative ease.)

If this type of local AI model was the missing link you needed to get an idea working, don’t keep it to yourself! Tell us all about it on the tips line.

Two Microcontrollers Talking, All It Needs Is An LED

There are some projects that seem at first sight to be easy, but anyone who tries them finds a whole heap of unexpected problems and turns to the off-the-shelf device. PCB antennas for example, or data links using LEDs, whether IR or visible. The latter doesn’t faze [Luca Soltoggio] though, because he has two ESP32s talking to each other using visible light. Best of all, both use a single LED as both transmitter and receiver.

The software is called SecurePair, and is an Arduino library for exchanging keys and communicating with encryption. The LEDs are the cool hardware hack but it’s designed to work with ESPNow or LoRa too, indeed a typical use case would see light for pairing and wireless for the exchange of encrypted data.. In case you were wondering, it relies on the property of an LED that it’s also a photodiode of sorts. Best of all, while the examples have two ESP32s, it’s not limited to that number and many more can join the conversation if needed.

Check out the video below to see it in action — if you’re curious about LEDs as sensors, we’ve been there too.

Continue reading “Two Microcontrollers Talking, All It Needs Is An LED” →

3D-Printed Filter Removes Most Microplastics From Water

With the rise of synthetic polymers in everywhere from clothing, packaging and beyond, we have also seen a corresponding rise in fragments of these polymers in the environment. These micro- and nanoplastics (MNPs) come in a wide variety of sizes, but have in common that they do not break down very easily, leaving filtration as an important way to keep them out of our potable water sources. A recent paper by [Ethan A. Crawford] et al. in  Separation and Purification Technology details a way to use a low-cost, 3D-printed filtration mesh to filter out up to 90% of MNPs using their prototype.

This prototype uses a multi-layer filtration system printed in PLA, creating a flow-through system in which polyethylene glycol (PEG) acts as a sacrificial additive to the PLA. Whereas creating the fine pores required for filtration of MNPs is impossible using FDM printing, the spheres of PEG that form inside the printed filter can be subsequently etched away using nothing but hot (80°C) water, leaving behind a porous surface capable of trapping fine particles.

These pores are characterized in the paper, with the PLA-PEG10 sample showing the best porous structure while maintaining structural integrity of the PLA material. With 20 layers of these filters a filtration efficiency of 90% was achieved, though as the authors note aspects like improving the system and potential reusability still have to be investigated.

We have previously looked at MNPs, including how little we know about how many of them really are inside our bodies right now, and how lab gloves may be contaminating test results.

Ambition, Thy Name Is A 3D Printed Transonic R/C Jet

Building anything that flies from scratch is an ambitious undertaking, even if it’s ‘just’ radio-controlled. 3D printing the aircraft isn’t that odd these days, but putting a hot jet engine into a plastic airframe is another ambitous reach. Getting said 3D printed airframe up to the transonic speed of Mach 0.8? Ambition, thy name is Kingchaser. Or at least, that’s the name [The Mach Initiative] give to their very ambitious aircraft, the video about which is embedded below.

The airframe is largely 3D printed from PETG– that’s all the orange bits– but there are carbon fiber rods and an aluminum frame to help take up the strain. The black section around the motor is printed from PPS-CF– that’s Polyphenylene sulfide with carbon fibre–wrapped in carbon fiber to take the heat. This all builds off a smaller PLA version that’s already flown called Kingfisher, which claimed the title of the first 3D printed jet. That flight is on their YouTube channel, if you’re interested.

Now with a bigger aircraft and a much bigger engine– 300 N or 68 lbf of thrust– they’re going for the speed record. If they get even close to the design goal of mach 0.8, they’re absolutely going to leave the world’s fastest drone– a 626 km/h quadcopter we’ve written about— in the dust.

The switch to PETG from PLA, for the record, was to deal with the expected aerodynamic heating at that speed, about 990 km/h or 615 mph. An interesting detail many don’t bother with when it comes to 3D printed airplanes is that the skin has all been polished smooth, since skin drag is dominant at that speed regime. The video is just chock full of those little details that it takes to defeat drag and get to the record speed, and there’s more to come from [The Mach Initiative].

Speaking of remote controlled speed records, we covered another batch of brits take home the land speed record a few years back. May [The Mach Initiative] see such success!

Continue reading “Ambition, Thy Name Is A 3D Printed Transonic R/C Jet” →