An exploded view of an AirPods Pro case. The outer case consists of two long, capsule-shaped sections that enclose several smaller parts including the wireless charging cable, contacts for charging the AirPods themselves, and the top rounded protective piece for the buds that nestles into the top capsule. This version includes screws to fasten everything together instead of adhesives.

Fixing Some More Of Apple’s Design Mistakes

Love them or hate them, there’s no denying that Apple has strayed from the Woz’s original open platform ideal for the Apple II. [Ken Pillonel] is back for another round of fixing Apple’s repairability mistakes with a full complement of 3D printable replacement parts for the AirPods Pro case.

While modeling all of the parts would be handy enough for repairing a device with a 0/10 iFixit score, [Pillonel] modified the parts to go together with screws instead of adhesive so any future repairs don’t require cracking the plastic egg. He says, “By showcasing the potential for repairability, I hope to inspire both consumers and multi-billion dollar companies, like Apple, to embrace sustainable practices in their products.”

[Pillonel]’s repairability exploits may seem familiar to readers from his previous work on adding USB-C to the iPhone and the AirPods Pro case. If you just need to retrieve a lost AirPod, you might try an electromagnet, or you can make a Bluetooth receiver from a pair of knock-off buds.

Continue reading “Fixing Some More Of Apple’s Design Mistakes”

This Week In Security: Apple’s 0-day, Microsoft’s Mess, And More

First up, Apple issued an emergency patch, then yanked, and re-issued it. The problem was a Remote Code Execution (RCE) vulnerability in WebKit — the basis of Apple’s cross-platform web browser. The downside of a shared code base,is that bugs too are write-once, exploit-anywhere. And with Apple’s walled garden insisting that every browser on iOS actually run WebKit under the hood, there’s not much relief without a patch like this one.

The vulnerability in question, CVE-2023-37450, is a bit light on further details except to say that it’s known to be exploited in the wild. The first fix also bumped the browser’s user-agent string, adding an (a) to denote the minor update. This was apparently enough to break some brittle user-agent detection code on popular websites, resulting in an unhelpful “This web browser is no longer supported” message. The second patch gets rid of the notification.

Microsoft Loses It

Microsoft has announced that on May 15th, an attack from Storm-0558 managed to breach the email accounts of roughly 25 customers. This was pulled off via “an acquired Microsoft account (MSA) consumer signing key.” The big outstanding question is how Microsoft lost control of that particular key. According to an anonymous source speaking to The Washington Post, some of the targeted accounts were government employees, including a member of cabinet. Apparently the FBI is asking Microsoft this very same question.

Speaking of Microsoft, there’s also CVE-2023-36884, a vulnerability in Microsoft Office. This one appears to be related to the handling of HTML content embedded in Office documents, and results in code execution upon opening the document. This along with another vulnerability (CVE-2023-36874) was being used by storm- another unknown threat actor, Storm-0978 in an ongoing attack.

There’s an interesting note that this vulnerability can be mitigated by an Attack Surface Reduction (ASR) rule, that blocks Office from launching child processes. This might be a worthwhile mitigation step for this and future vulnerabilities in office. Continue reading “This Week In Security: Apple’s 0-day, Microsoft’s Mess, And More”

Closeup of an Apple ][ terminal program. The background is blue and the text white. The prompt says, "how are you today?" and the ChatGPT response says, "As an AI language model, I don't have feelings, but I am functioning optimally. Thank you for asking. How may I assist you?"

Apple II – Now With ChatGPT

Hackers are finding no shortage of new things to teach old retrocomputers, and [Evan Michael] has taught his Apple II how to communicate with ChatGPT.

Written in Python, iiAI lets an Apple II access everyone’s favorite large language model (LLM) through the terminal. The program lives on a more modern computer and is accessed over a serial connection. OpenAI API credentials are stored in a file invoked by iiAI when you launch it by typing python3 openai_apple.py. The program should work on any device that supports TTY serial, but so far testing has only happened on [Michael]’s Apple IIGS.

For a really clean setup, you might try running iiAI internally on an Apple II Pi. ChatGPT has also found its way onto Commodore 64 and MS-DOS, and look here if you’d like some more info on how these AI chat bots work anyway.

Continue reading “Apple II – Now With ChatGPT”

Increasing System Memory With The Flick Of A Switch

There’s an apocryphal quote floating around the internet that “640K ought to be enough memory for anybody” but it does seem unlikely that this was ever actually said by any famous computer moguls of the 1980s. What is true, however, is that in general more computer memory tends to be better than less. In fact, this was the basis for the Macintosh 512k in the 1980s, whose main feature was that it was essentially the same machine as the Macintosh 128k, but with quadruple the memory as its predecessor. If you have yet to upgrade to the 512k, though, it might be best to take a look at this memory upgrade instead.

The Fat Mac Switcher, as it is called by its creator [Kay Koba], can upgrade the memory capability of these retro Apple machines with the simple push of a switch. The switch and controller logic sit on a separate PCB that needs to be installed into the computer’s motherboard in place of some of the existing circuitry. The computer itself needs its 16 memory modules replaced with 41256 DRAM modules for this to work properly though, but once its installed it can switch seamlessly between 512k and 128k modes.

Another interesting quirk of the retro Macintosh scene is that the technically inferior 128k models tend to be valued higher than the more capable 512k versions, despite being nearly identical otherwise. There are also some other interesting discussions on one of the forum posts about this build as well. This module can also be used in reverse; by installing it in a Macintosh 512k the computer can be downgraded to the original Macintosh 128k. For this the memory modules won’t need to be upgraded but a different change to the motherboard is required.

A product like this certainly would have been a welcome addition in the mid 80s when these machines were first introduced, since the 512k was released only months after the 128k machines were, but the retrocomputing enthusiasts should still get some use out of this device and be more able to explore the differences between the two computers. If you never were able to experience one of these “original” Macintosh computers in their heyday, check out this fully-functional one-third scale replica.

The Apple Silicon That Never Was

Over Apple’s decades-long history, they have been quick to adapt to new processor technology when they see an opportunity. Their switch from PowerPC to Intel in the early 2000s made Apple machines more accessible to the wider PC world who was already accustomed to using x86 processors, and a decade earlier they moved from Motorola 68000 processors to take advantage of the scalability, power-per-watt, and performance of the PowerPC platform. They’ve recently made the switch to their own in-house silicon, but, as reported by [The Chip Letter], this wasn’t the first time they attempted to design their own chips from the ground up rather than using chips from other companies like Motorola or Intel.

In the mid 1980s, Apple was already looking to move away from the Motorola 68000 for performance reasons, and part of the reason it took so long to make the switch is that in the intervening years they launched Project Aquarius to attempt to design their own silicon. As the article linked above explains, they needed a large amount of computing power to get this done and purchased a Cray X-MP/48 supercomputer to help, as well as assigning a large number of engineers and designers to see the project through to the finish. A critical error was made, though, when they decided to build their design around a stack architecture rather than a RISC. Eventually they switched to a RISC design, though, but the project still had struggled to ever get a prototype working. Eventually the entire project was scrapped and the company eventually moved on to PowerPC, but not without a tremendous loss of time and money.

Interestingly enough, another team were designing their own architecture at about the same time and ended up creating what would eventually become the modern day ARM architecture, which Apple was involved with and currently licenses to build their M1 and M2 chips as well as their mobile processors. It was only by accident that Apple didn’t decide on a RISC design in time for their personal computers. The computing world might look a lot different today if Apple hadn’t languished in the early 00s as the ultimate result of their failure to develop a competitive system in the mid 80s. Apple’s distance from PowerPC now doesn’t mean that architecture has been completely abandoned, though.

Thanks to [Stephen] for the tip!

Reverse Engineering The Apple Lightning Connector

A frequent contributor to the hacker community, [stacksmashing] has prepared an excellent instructional video on reverse engineering Apple’s Lighting connector proprietary protocol. The video begins by showing how to gain physical access to the signals and hooking them up to a logic analyzer. He then notes that the handshaking uses only a single signal and proposes that Apple isn’t going to re-invent the wheel (perhaps a risky assumption). Using a ChatGPT search, obligatory these days, we learn that Dallas Semiconductor / Microchip 1-wire is probably the protocol employed.

Which embedded single-wire busses exist that encode bits with different lengths of low and high signals?

At the basic level, 1-wire and protocols like Texas Instruments SDQ operate in a similar manner. It turns out that [stacksmashing] already wrote a SDQ analyzer module for the Saleae logic analyzer. Aided by this tool, he digs deeper and learns more about the kinds of messages and their contents. For example, upon being plugged in, the host system queries the accessory’s serial number, manufacturer, model number, and product description. Finally, he introduces the CRC reverse engineering tool reveng to determine which CRC polynomial and algorithm the protocol uses to frame each packet.

Even if you have no interest in Lightning cables, this video is a great tutorial on the types of things you need to do in order to make sense of an unknown communications protocol. Gather what information you can, make some educated guesses, observe the signals, revise your guesses, and repeat. In part two, [stacksmashing] will show how to build a homemade iPhone JTAG cable.

We wrote in more detail about cracking the Lightning interface back in 2015. The Lightning interface may have been a good solution in its day, foreshadowing some of the features we now have in USB-C. But its proprietary and closed nature meant it wasn’t used outside of the Apple ecosystem. With the proliferation and capabilities of USB-C, not to mention various legislative edicts, Lightning’s days seem numbered. Is the industry finally settling on one interface? Let us know your thoughts in the comments below.

Continue reading “Reverse Engineering The Apple Lightning Connector”

A closeup of a black flexible PCB with an out-of-focus quarter in the background, approximately the same size as the end of the PCB we're looking at. One the right is a USB C connector and to its left are two SMD components with visible pins. Several smaller SMD components (resistors or caps?) are soldered to other parts of the board.

Making The AirPods Pro Case Repairable

Apple is often lauded for its design chops, but function is often sacrificed at the altar of form, particularly when repair is involved. [Ken Pillonel] has made it easier for everyone to replace the batteries or lightning port in the AirPods Pro case. (YouTube)

With such notable hacks as adding USB C to the iPhone already under his belt, [Pillonel] has turned his attention to fixing the notoriously poor repairability of AirPods and AirPods Pro, starting with the cases. While the batteries for these devices are available, replacement Lightning ports are not, and taking the housing apart for the case is an exercise in patience where the results can’t be guaranteed.

He designed a USB C replacement port for broken Lightning ports that is a perfect fit if you happen to get the case apart in one piece. If you’re less successful, he has you covered there too with a 3D printable enclosure replacement.

We sure miss the days of schematic proliferation here at Hackaday, but we know you don’t let glued enclosures or unobtainium parts stand in the way of repairs.

Continue reading “Making The AirPods Pro Case Repairable”