Antennagate: 20 bytes of code triggered iPhone 4 scandal
A software engineer has deciphered how Apple solved the iPhone 4 antenna problem in 2010: a tiny change in a table made all the difference.
Apple's press conference on the iPhone 4's Antennagate has gone down in the history books. Steve Jobs explained at the time that Antennagate – a drop in reception quality due to the device being surrounded – affected all manufacturers.
(Image: Apple)
After 15 years, software engineer and designer Sam Henry Gold has solved the mystery of how Apple fixed the iPhone 4's Antennagate scandal on the software side. As Gold documents in detail on X (formerly Twitter), it was just 20 changed bytes in a lookup table that corrected the dramatic drop in signal strength bars.
The iPhone 4 made headlines in the summer of 2010 when users discovered that the signal bars dropped dramatically when holding the device normally during a phone call. Apple initially reacted defensively; Steve Jobs countered irritably that users were holding the phone incorrectly. The company later admitted that the formula for calculating the signal strength was faulty and in many cases displayed two bars more than were actually present. The company then distributed free bumper cases and settled a lawsuit with an out-of-court settlement in which affected US customers received 15 dollars in compensation.
Analysis of the firmware reveals simple lookup table
Gold now loaded two firmware versions—before and after the update to iOS 4.0.1—and analyzed the CoreTelephony framework. In the Binary CommCenter, he found the relevant lookup table that converts signal strength values into bars. According to him, the original table was calibrated extremely optimistically: users almost always saw four or five bars, even with weak reception. When gripping the device, which attenuated the antenna, there was an abrupt drop from five to two bars.
The calculation itself is simple: CommCenter loads each threshold value from memory and compares it until the appropriate range is found. The problem was not in the code but in the threshold values of the lookup table. In iOS 4.0.1, Apple changed these values to a much smoother curve. A diagram shows that it now takes a much greater loss of signal to drop from five to zero bars. Five bars are displayed less frequently, but the dramatic drop has disappeared.
Videos by heise
Psychological trick with larger bars
Gold also discovered a psychological trick: Apple increased the height of the signal bars in the updated version so that one or two bars no longer looked quite so weak. This visual adjustment was intended to further improve the user's perception, even if the actual signal strength remained identical.
While Apple improved the antenna in the successor model iPhone 4S on the hardware side, the actual issue with the iPhone 4 was primarily software-based. The faulty display suggested strong reception where there was none—the physical effect of antenna attenuation by touch did exist but was dramatized by the unrealistic bar display. By correcting the 20 bytes in the lookup table, Apple elegantly solved the perception problem without having to change the hardware.
The Antennagate affair remains a lesson in the importance of realistic user interfaces. While Apple has now taken control of the entire wireless technology with its own 5G modems, the 2010 case is an example of how strongly the presentation of technical parameters can influence user perception.
(mki)