Apple’s Continuing Failing Repair Score With The AirPods Pro 3

It takes quite a bit of effort to get a 0 out of 10 repairability score from iFixit, but in-ears like Apple’s AirPods are well on course for a clean streak there, with the AirPod Pro 3 making an abysmal showing in their vitriolic teardown video alongside their summary article. The conclusion is that while they are really well-engineered devices with a good feature set, the moment the battery wears out it is effectively e-waste. The inability to open them without causing at least some level of cosmetic damage is bad, and that’s before trying to glue the device back together. Never mind effecting any repairs beyond this.

Worse is that this glued-together nightmare continues with the charging case. Although you’d expect to be able to disassemble this case for a battery swap, it too is glued shut to the point where a non-destructive entry is basically impossible. As iFixit rightfully points out, there are plenty of examples of how to do it better, like the Fairbuds in-ears. We have seen other in-ears in the past that can have some maintenance performed without having to resort to violence, which makes Apple’s decisions here seem to be on purpose.

Although in the comments to the video there seem to be plenty of happy AirPod users for whom the expected 2-3 year lifespan is no objection, it’s clear that the AirPods are still getting zero love from the iFixit folk.

Continue reading “Apple’s Continuing Failing Repair Score With The AirPods Pro 3”

Optimizing A QuickTake Image Decoder For The Apple II’s 6502

The idea of using the Apple II home computer for digital photography purposes may seem somewhat daft considering that this is not a purpose that they were ever designed for, yet this is the goal that [Colin Leroy-Mira] had, requiring some image decoder optimizations. That said, it’s less crazy than one might assume at first glance, considering that the Apple II was manufactured until 1993, while the Apple QuickTake digital cameras that [Colin] wanted to use for his nefarious purposes saw their first release in 1994.

These QuickTake cameras feature an astounding image resolution of up to 640×480, using 24-bit color. Using the official QuickTake software for Apple Macintosh System 7 through 9 the photographs in proprietary QTK format could be fetched for display and processing. Doing the same on an Apple II would obviously require a bit more work, not to mention adapting of the image to the limitations of the 8-bit Apple II compared to the Motorola 68K and PowerPC-based Macs that the QuickTake was designed to be used with.

Targeting the typical ~1 MHz 6502 CPU in an Apple II, the dcraw QTK decoder formed the basis for an initial decoder. Many memory and buffer optimizations later, an early conversion to monochrome and various other tweaks later – including a conversion to 6502 ASM for speed reasons – the decoder as it stands today manages to decode and render a QTK image in about a minute, compared to well over an hour previously.

Considering how anemic the Apple II is compared to even a budget Macintosh Classic II system, it’s amazing that displaying bitmap images works at all, though [Colin] reckons that more optimizations are possible.

Simple Counter Mechanism In An Asthma Inhaler

The counter wheel and white worm gear inside the counter. (Credit: Anthony Francis-Jones, YouTube)
The counter wheel and white worm gear inside the counter. (Credit: Anthony Francis-Jones, YouTube)

Recently [Anthony Francis-Jones] decided to take a closer look at the inhaler that his son got prescribed for some mild breathing issues, specifically to teardown the mechanical counter on it. Commonly used with COPD conditions as well as asthma, these inhalers are designed to provide the person using it with an exact dose of medication that helps to relax the muscles of the airways. Considering the somewhat crucial nature of this in the case of extreme forms of COPD, the mechanical counter that existed on older versions of these inhalers is very helpful to know how many doses you have left.

Disassembling the inhaler is very easy, with the counter section easily extracted and further disassembled. The mechanism is both ingenious and simple, featuring the counter wheel that’s driven by a worm gear, itself engaged by a ratcheting mechanism that’s progressed every time the cylinder with the medication is pushed down against a metal spring.

After the counter wheel hits the 0 mark, a plastic tab prevents it from spinning any further, so that you know for certain that the medication has run out. In the video [Anthony] speculates that the newer, counter-less inhalers that they got with the latest prescription can perhaps be harvested for their medication cylinder to refill the old inhaler, followed by resetting the mechanical counter. Of course, this should absolutely not be taken as medical advice.

Continue reading “Simple Counter Mechanism In An Asthma Inhaler”

Open Source Controller For Old And Expensive Industrial Robots

The Zynq-7000 usage at the core of the robot controller. (Credit: Excessive Overkill, YouTube)
The Zynq-7000 usage at the core of the robot controller. (Credit: Excessive Overkill, YouTube)

Industrial robots like robotic arms are basically everywhere, albeit usually out of the public’s eye in factories. This also means that they get replaced and scrapped all the time, making for many opportunities to snap up an industrial robot that once cost as much as a pretty fancy car for essentially peanuts. Over the years the bloke behind the [Excessive Overkill] YouTube channel did this a lot, which also revealed the main issue with these ‘cheap’ robots: the electronics and associated software, with the manufacturer rarely going out of their way to appease to hobbyists trying to fix up one of these units, never mind for free.

That said, if you’re persistent enough, you can reverse-engineer these beasts to the point where you can develop your own controller hardware and software solution. This is exactly what was done, resulting in an open source controller, found on the ExcessiveMotion GitHub page, that should allow you to control many of these industrial robots. At the core is a Zynq-7000 hybrid FPGA-ARM SoC chip, running real-time Linux (with preemptive scheduling patch) on the SoC side and custom HDL on the FPGA side to handle the hard real-time tasks.

The controller during testing. (Credit: Excessive Overkill, YouTube)
The controller during testing. (Credit: Excessive Overkill, YouTube)

The controller is made to be modular, with a backplane that can accept various interface cards in addition to the current RS-485 and RS-422 interfaces that are commonly used in industrial settings, such as here for controlling the individual servo drives of the robots. To make assembly and testing interesting, the first controller and integration with a robot was made ready for display at the Open Sauce 2025 event, requiring things to be rushed along, including reverse-engineering the servo protocol for a small-ish industrial robot suitable for public display and use, as well as developing the kinematics for the robotic arm.

With the controller now demonstrated, clearly this is the perfect time to rush out and get one of these fun industrial robots for a few hundred bucks. Currently the controller is still being finalized, with the author asking for feedback on what it should be able to support. If you have a particularly unusual industrial robot lounging around without the requisite controller, this might be your chance to revive it.

Thanks to [Hans] for the tip.

Continue reading “Open Source Controller For Old And Expensive Industrial Robots”

When USB Charger Marketing Claims Are Technically True

The 600W is not the output rating, despite all appearances. (Credit: Denki Otaku, YouTube)
The 600W is not the output rating, despite all appearances. (Credit: Denki Otaku, YouTube)

We have seen many scam USB chargers appear over the years, with a number of them being enthusiastically ripped apart and analyzed by fairly tame electrical engineers. Often these are obvious scams with clear fire risks, massively overstated claims and/or electrocution hazards. This is where the “600W” multi-port USB charger from AliExpress that [Denki Otaku] looked at is so fascinating, as despite only outputting 170 Watt before cutting out, it’s technically not lying in its marketing and generally well-engineered.

The trick being that the “600W” is effectively just the model name, even if you could mistake it for the summed up output power as listed on the ports. The claimed GaN components are also there, with all three claimed parts counted and present in the main power conversion stages, along with the expected efficiency gains.

While testing USB-PD voltages and current on the USB-C ports, the supported USB-PD EPR wattage and voltages significantly reduce when you start using ports, indicating that they’re clearly being shared, but this is all listed on the product page.

The main PCB of the unit generates the 28 VDC that’s also the maximum voltage that the USB-C ports can output, with lower voltages generated as needed. On the PCB with the USB ports we find the step-down converters for this, as well as the USB-PD and other USB charging control chips. With only a limited number of these to go around, the controller will change the current per port dynamically as the load increases, as you would expect.

Considering that this particular charger can be bought for around $30, is up-front about the limitations and uses GaN, while a genuine 300 Watt charger from a brand like Anker goes for $140+, it leads one to question the expectations of the buyer more than anything. While not an outright scam like those outrageous $20 ‘2 TB’ SSDs, it does seem to prey on people who have little technical understanding of what crazy amounts of cash you’d have to spend for a genuine 600 Watt GaN multi-port USB charger, never mind how big such a unit would be.

Continue reading “When USB Charger Marketing Claims Are Technically True”

Implementing A Kalman Filter In PostgreSQL To Smooth GPS Data

Usually databases are treated primarily as fairly dumb data storage systems, but they can be capable of much more. Case in point the PostgreSQL database and its – Ada-based – PL/pgSQL programming language, which allows you to perform significantly more complex operations than would be realistically possible with raw SQL. Case in point the implementation of a Kalman Filter by the folk over at Traconiq, which thus removes the necessity for an external filtering pipeline.

Using a Kalman Filter is highly desirable when you’re doing something like vehicle tracking using both dead-reckoning and GPS coordinates, as it filters out noise that can be the result of e.g. GPS reception issues. As noted in the article, transferring state from one row to the next requires a bit of lateral thinking, but is doable with some creative SQL usage. As PL/pgSQL is very similar to Oracle’s PL/SQL, this same code should work there too without too much porting required.

The code for the different implementations and associated benchmarks can be found on GitHub, though the benchmark results make it abundantly clear that the most efficient approach is to run an offline aggregate processing routine. This coincides with the other batch processing tasks that are typically performed by a database server to e.g. optimize storage, so this isn’t entirely unsurprising.

On 3D Scanners And Giving Kinects A New Purpose In Life

The concept of a 3D scanner can seem rather simple in theory: simply point a camera at the physical object you wish to scan in, rotate around the object to capture all angles and stitch it together into a 3D model along with textures created from the same photos. This photogrammetry application is definitely viable, but also limited in the sense that you’re relying on inferring three-dimensional parameters from a set of 2D images and rely on suitable lighting.

To get more detailed depth information from a scene you’d need to perform direct measurements, which can be done physically or through e.g. time-of-flight (ToF) measurements. Since contact-free ways of measurements tend to be often preferred, ToF makes a lot of sense, but comes with the disadvantage of measuring of only a single spot at a time. When the target is actively moving, you can fall back on photogrammetry or use an approach called structured-light (SL) scanning.

SL is what consumer electronics like the Microsoft Kinect popularized, using the combination of a visible and near-infrared (NIR) camera to record a pattern projected onto the subject, which is similar to how e.g. face-based login systems like Apple’s Face ID work. Considering how often Kinects have been used for generic purpose 3D scanners, this raises many questions regarding today’s crop of consumer 3D scanners, such as whether they’re all just basically Kinect-clones.

Continue reading “On 3D Scanners And Giving Kinects A New Purpose In Life”