Repository navigation
Releases
0.5.4-beta.2
Because AirDrop was never supposed to work on Intel Wi-Fi.
BTLEAdvFixup 0.9.1: new Bluetooth LE mice and keyboards pair again.
What's new
- New LE mice and keyboards pair again (#27, #31, thanks to CreateRan). With IntelBTPatcher disabled, a new LE mouse or keyboard connected but never finished pairing, because BTLEAdvFixup didn't include IntelBTPatcher's fix for it. BTLEAdvFixup 0.9.1 includes it, along with lshbluesky's LE Data Length Change fix for Tahoe. Devices that were already paired weren't affected.
- macOS 26.7.2: BTLEAdvFixup 0.9.1 also patches a second spot in 26.7.2's
bluetoothd, whose bytes differ from 26.7.3's there. - The Wi-Fi driver is the same code as 0.5.4-beta.1; only its build name changed. See that release for laobamac's fixes and block ack without
-itlawdlcoexmulti.
Files
ForbiddenItlwm-0.5.4-beta.2-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: the Wi-Fi driver for macOS 26.7.x, 15.8.x and 14.8.9. Each replacesAirportItlwm.kext. Use only the one for your macOS.BTLEAdvFixup-0.9.1-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: use the one for your macOS, with-btleadvset and IntelBTPatcher disabled.
Before a macOS update, boot once without -btleadv.
Tested
- On the project's hackintosh (Tahoe 26.7.1, AX211): BTLEAdvFixup 0.9.1 loads with all its hooks, Bluetooth and paired devices work, AirDrop at about 20 MB/s both ways.
- The pairing fix itself, by CreateRan on macOS 26.7.2 with an AX200: a new LE mouse pairs and stays connected. Reports from other cards are welcome.
Known issues
- Mac → iPhone is slow when your Wi-Fi is on the listener's channel (usually 149, #24). Workaround: put your router on another channel, such as 36–48 or 157.
- Some sends stay on "Waiting" before connecting (#35). Being investigated.
- Sleep wasn't tested on the project's hackintosh (one user reports it working, #38). Instant Hotspot and Continuity Camera don't work yet.
Disclaimer
- Beta: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
Checksums (SHA-256)
54021a179519f12df3db6930b1f5cc35031ec4c0fc32cdad36cfab5df0e18de2 BTLEAdvFixup-0.9.1-Sequoia.zip
e06f895395a4c52131216bd6ca24032a1623b258a034492f1df70e8d01001d55 BTLEAdvFixup-0.9.1-Sonoma.zip
462236d11f32773850db0af97fb38be1ca62c38e0ed97488f08ca2df40f90676 BTLEAdvFixup-0.9.1-Tahoe.zip
82d791b52aa05715d146e326cab08706d064fb2e9f9a82171e298d9fca42a54a ForbiddenItlwm-0.5.4-beta.2-Sequoia.zip
c13f4aa5a81d6b3ab13ca460dc877e239094b6deaa465720cff53f9298351b1c ForbiddenItlwm-0.5.4-beta.2-Sonoma.zip
64a0a5bac8d7af9d65c451a130d6d4edece5fc641821f60e9ab6f78465179339 ForbiddenItlwm-0.5.4-beta.2-Tahoe.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia|sonoma, BTLEAdvFixup with tools/build_btleadv.py.
0.5.4-beta.1
Because AirDrop was never supposed to work on Intel Wi-Fi.
laobamac's fixes to the base driver, and block ack without -itlawdlcoexmulti.
This is the first release with the new names: beta means everything in it was tested on the project's hackintosh. (Up to 0.5.3, -test1 was used for what is now called alpha.)
What's new
- laobamac's later fixes (#36, thanks to alikaylan). The 21 commits laobamac made to itlwm/AirportItlwm after ForbiddenItlwm started, merged with their authorship kept. They mostly improve normal Wi-Fi: transmit queues and rate control, joins (including WPA2/WPA3 networks and invalid 160 MHz channels), scanning, VT-d, and link quality for iMessage and other iServices.
- Block ack without
-itlawdlcoexmulti(#16). When the AirDrop listener shares your Wi-Fi's channel, the driver now answers the iPhone's block-ack requests: iPhone → Mac goes from about 1 MB/s to about 5 MB/s there. Mac → iPhone is still sent frame by frame in that setup (#24).-itlawdlnosharedbaturns it off for comparison. - Block-ack requests pause while AirDrop is idle, instead of repeating for up to 10 minutes after a transfer.
- Tools:
airdrop_measure.shshows the listener's width in shared mode;check_compat.shrecognises IntelBTUnified and warns that it can't be used with BTLEAdvFixup.
For testers of #24
The test without -itlawdlcoexmulti (Mac's Wi-Fi on 149) now means something: before this release, block ack never ran without that flag. With this build, remove -itlawdlcoexmulti, keep your Mac on 149, and send Mac → iPhone with bash tools/compat/airdrop_measure.sh running. Please post ITLAWDLCoexBaTxStateName and the speed in #24.
Files
ForbiddenItlwm-0.5.4-beta.1-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: the Wi-Fi driver for macOS 26.7.x, 15.8.x and 14.8.9. Each replacesAirportItlwm.kext. Use only the one for your macOS.BTLEAdvFixup-0.9.0-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: unchanged since 0.5.0-test1.
Before a macOS update, boot once without -btleadv.
Tested
On the project's hackintosh (Tahoe 26.7.1, AX211, normal Wi-Fi on channel 36): Wi-Fi works, AirDrop at 17–24 MB/s iPhone → Mac and 21–26 MB/s Mac → iPhone, block ack agreed both ways. The Sequoia and Sonoma builds are built and checked offline, as before.
Known issues
- Mac → iPhone is slow when your Wi-Fi is on the listener's channel (usually 149, #24). Workaround: put your router on another channel, such as 36–48 or 157.
- A new Bluetooth LE mouse or keyboard may not pair with BTLEAdvFixup active (#27). Already-paired devices keep working. A fix is being added (#31).
- Some sends stay on "Waiting" before connecting (#35). Being investigated.
- Sleep wasn't tested. Instant Hotspot and Continuity Camera don't work yet.
Disclaimer
- Beta: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
Checksums (SHA-256)
5c6e8ba3d1c6c02bd13c97ebe868078934eff2c268f5ab3220fd0fea9888a86e BTLEAdvFixup-0.9.0-Sequoia.zip
bdbde0ed1632d985e08a85fd68b307f1b64774969c18fc2d007c4828e30e6bf8 BTLEAdvFixup-0.9.0-Sonoma.zip
5ea0925c4d0b207557a57fd3b3aec2854050b63cecca52f563693179e17bb2d1 BTLEAdvFixup-0.9.0-Tahoe.zip
41da8f03046120adbcd87b89d0fbd30c4facf2ded8fc1aba895c4358910966d4 ForbiddenItlwm-0.5.4-beta.1-Sequoia.zip
2388a51bfcfeb0878357949dc002e34538cc32531a84c7cb98006dfd3d07914a ForbiddenItlwm-0.5.4-beta.1-Sonoma.zip
07104b0f8b36b1adf27a377ee58badf5aceeea9fa6b06e6f844931a6558618c3 ForbiddenItlwm-0.5.4-beta.1-Tahoe.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia|sonoma.
ForbiddenItlwm 0.5.3-test1 (test build)
Because AirDrop was never supposed to work on Intel Wi-Fi.
A test build for slow Mac → iPhone transfers (#22, #24): two experimental boot flags, off by default.
Background
When the Mac's own Wi-Fi is on the same channel as AirDrop's listener (usually 149), the iPhone never accepts block ack. The Mac then sends one frame at a time, at a few MB/s instead of about 20. With the Mac's Wi-Fi on any other channel, the iPhone accepts within a second (thanks to ZEQ-Avidia's measurements in #24).
What's new
-itlawdlbaaskshared: when the Mac's Wi-Fi and the listener share a channel, send the block-ack request without waiting for the iPhone's window. New keyITLAWDLCoexBaAsksShared.-itlawdlhideinfra: leave the Mac's Wi-Fi network and channel out of AirDrop's sync frames, so the iPhone sees a Mac that isn't on Wi-Fi. New keyItlwmAWDLSyncInfraStripped.tools/compat/airdrop_measure.shnow also shows dropped TX frames.
How to help test
If your Mac's Wi-Fi is on the listener's channel (check ITLAWDLCoexChannel and your Wi-Fi channel) and Mac → iPhone is slow:
- Add one of the two flags, reboot, and do a Mac → iPhone transfer with
bash tools/compat/airdrop_measure.shrunning. - Note whether
ITLAWDLCoexBaTxStateNamereachesagreed, and the speed. - Repeat with the other flag instead. Please post both results in #24.
Workaround meanwhile: put your router (or the Mac's network) on another channel, such as 36–48 or 157.
Files
ForbiddenItlwm-0.5.3-test1-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: the Wi-Fi driver for macOS 26.7.x, 15.8.x and 14.8.9. Each replacesAirportItlwm.kext. Use only the one for your macOS.BTLEAdvFixup-0.9.0-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: unchanged since 0.5.0-test1.
Before a macOS update, boot once without -btleadv.
Known issues
- Without the flags, this build behaves exactly like 0.5.2-test1. Tested on the project's hackintosh on Tahoe only (26.7.1, AX211); there neither flag is active, since its Wi-Fi isn't on the listener's channel.
- Sleep wasn't tested. Instant Hotspot and Continuity Camera don't work yet.
Disclaimer
- Test build: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
Checksums (SHA-256)
5c6e8ba3d1c6c02bd13c97ebe868078934eff2c268f5ab3220fd0fea9888a86e BTLEAdvFixup-0.9.0-Sequoia.zip
bdbde0ed1632d985e08a85fd68b307f1b64774969c18fc2d007c4828e30e6bf8 BTLEAdvFixup-0.9.0-Sonoma.zip
5ea0925c4d0b207557a57fd3b3aec2854050b63cecca52f563693179e17bb2d1 BTLEAdvFixup-0.9.0-Tahoe.zip
fc2d32d6dc982d7ba176d84ee3777647721a22d262dbc8e104c8db2111b4e34a ForbiddenItlwm-0.5.3-test1-Sequoia.zip
acb3ebdd6b23f011d54d415404a0ab5b6858089e9999cf88cec60c290c62b3e9 ForbiddenItlwm-0.5.3-test1-Sonoma.zip
7f03df98c1548db3781281baa02381dbc0539ae935d5eaabf5fd719456f89819 ForbiddenItlwm-0.5.3-test1-Tahoe.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia|sonoma and rebuilds byte for byte.
ForbiddenItlwm 0.5.2-test1 (test build)
Because AirDrop was never supposed to work on Intel Wi-Fi.
A test build with diagnostics for the open reports, a fix for losing channel 149 in China and Japan, and a new script to measure AirDrop speed and connect times.
What's new
- Channel 149 no longer lost to a passing world-mode country. The card's firmware can briefly report its world code and then the same country again. The driver used to clear its channel-149 hints each time, so in China and Japan AirDrop fell back to channel 6 for a while (#21). Now the hints are cleared only when a different country is learned.
- New diagnostics for the open reports:
ITLAWDLCoexPeerSequence: the iPhone's 16-slot channel schedule (#21, #24).ITLAWDLCoexAddsAfterRemove/ITLAWDLCoexAddsAfterRestart: whether the AirDrop listener was re-added after a Wi-Fi reconnect or after a firmware restart (#16).ITLAWDLCoexCountryUnusableAnswers/ITLAWDLCoexHintClears: how often the firmware's country drops away.- Cleaner keys:
ITLAWDLCoexLastBuildResultnow resets after a successful frame,ItlwmAWDLTransportReadyis gone, and the data copy counters only appear with their probe flag (#7).
-itlawdlsameband(test flag, off by default): keeps the listener on channel 6 while the Mac's Wi-Fi is on 2.4 GHz, for setups where Wi-Fi keeps dropping with-itlawdlcoexmulti(#16).tools/compat/airdrop_measure.sh: measures AirDrop speed and connect times in both directions from macOS's own AirDrop log. No sysdiagnose needed.- Docs: a shorter README with an after-install test list, a roadmap (
docs/ROADMAP.md), and the confirmed Sequoia builds and cards.
Who should update
- Everyone testing: yes, especially if you're reporting a problem. The new keys help diagnose it.
- China and Japan: yes, for the channel-149 fix.
- BTLEAdvFixup 0.9.0 is unchanged from 0.5.0-test1 and 0.5.1-test1.
Measure your transfers
bash tools/compat/airdrop_measure.sh
Leave it running and send files both ways. It prints the speed and connect time macOS measured for each transfer. Please include its output when you report speed problems.
Files
ForbiddenItlwm-0.5.2-test1-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: the Wi-Fi driver for macOS 26.7.x, 15.8.x and 14.8.9. Each replacesAirportItlwm.kext. Use only the one for your macOS.BTLEAdvFixup-0.9.0-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: the same files as in the previous two releases.
Before a macOS update, boot once without -btleadv.
Known issues
- Mac → iPhone can be much slower than iPhone → Mac on some setups (#22, #24). Under investigation.
- Tested on the project's hackintosh on Tahoe only (26.7.1, AX211): Wi-Fi, Bluetooth and AirDrop both ways work. The Sonoma build is untested.
- Sleep wasn't tested. Instant Hotspot and Continuity Camera don't work yet.
Disclaimer
- Test build: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
Checksums (SHA-256)
5c6e8ba3d1c6c02bd13c97ebe868078934eff2c268f5ab3220fd0fea9888a86e BTLEAdvFixup-0.9.0-Sequoia.zip
bdbde0ed1632d985e08a85fd68b307f1b64774969c18fc2d007c4828e30e6bf8 BTLEAdvFixup-0.9.0-Sonoma.zip
5ea0925c4d0b207557a57fd3b3aec2854050b63cecca52f563693179e17bb2d1 BTLEAdvFixup-0.9.0-Tahoe.zip
d2394610b4bd0f85110e7157f7e0158bc36c1251032cca4c5560924c486a6c54 ForbiddenItlwm-0.5.2-test1-Sequoia.zip
4d9cf7ded1baad0e536fbc3618f0aa10700a6f13fcc1bb4375479c42dd5703ae ForbiddenItlwm-0.5.2-test1-Sonoma.zip
937e253de14a02f53b27269903c3d79ee107758f8093dc8d9105bc12ac089a7f ForbiddenItlwm-0.5.2-test1-Tahoe.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia|sonoma and rebuilds byte for byte.
ForbiddenItlwm 0.5.1-test1 (test build)
Because AirDrop was never supposed to work on Intel Wi-Fi.
A fix for AirDrop on Sequoia: awdl0 was never created, so transfers stayed on "Waiting". Sequoia users, please test.
What's new
- Sequoia: AirDrop transfers fixed (#7, #13, #16). The driver created its AirDrop packet pools in a mode Sequoia's kernel refuses for a network interface, so
awdl0was never created. Devices could see each other, but nothing was sent. The pools are now ordinary packet pools, as Apple's own drivers use.- Found by liszsw241 in #19, who confirmed AirDrop both ways on 15.6 with this change. The 0.5.0 diagnostics from 15.8.1 and 15.8.2 show the same failure. Not yet confirmed on 15.8.x itself: please report either way.
- The Sonoma build gets the same change. Tahoe is unchanged.
itlawdlbtcoexnow works beside normal Wi-Fi (#19). It was only read in the old monitor test mode.- Everything from 0.5.0-test1 is included: the fix for Wi-Fi not starting on some machines with 0.4.x, channel 149 where the firmware marks it passive, and macOS Sonoma 14.8.9.
Who should update
- Sequoia: yes. Replace
ForbiddenItlwm.kextwith the Sequoia build. BTLEAdvFixup 0.9.0 is unchanged from 0.5.0-test1. - Tahoe on 0.5.0-test1: optional; only the Bluetooth coexistence flag changed.
- Anyone on 0.4.x: yes, for 0.5.0's start fix.
Check on Sequoia
ifconfig awdl0
ioreg -l -w0 | grep -E '"ItlwmAWDL(InterfaceBuild|PoolType)"'
ifconfig awdl0 should show the interface, ItlwmAWDLInterfaceBuild should be forbidden-0.5.1-test1-sequoia, and ItlwmAWDLPoolType should be 1.
Files
ForbiddenItlwm-0.5.1-test1-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: the Wi-Fi driver for macOS 26.7.x, 15.8.x and 14.8.9. Each replacesAirportItlwm.kext. Use only the one for your macOS.BTLEAdvFixup-0.9.0-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: the same files as in 0.5.0-test1. They need Lilu, IntelBluetoothFirmware and BlueToolFixup, with IntelBTPatcher disabled.
Before a macOS update, boot once without -btleadv.
Known issues
- Tested on the project's hackintosh on Tahoe only (26.7.1, AX211): Wi-Fi, Bluetooth and AirDrop work. The Sequoia fix is confirmed by a tester on 15.6, not yet on 15.8.x. The Sonoma build is untested.
- Sleep wasn't tested. Instant Hotspot and Continuity Camera don't work yet.
Disclaimer
- Test build: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
Checksums (SHA-256)
5c6e8ba3d1c6c02bd13c97ebe868078934eff2c268f5ab3220fd0fea9888a86e BTLEAdvFixup-0.9.0-Sequoia.zip
bdbde0ed1632d985e08a85fd68b307f1b64774969c18fc2d007c4828e30e6bf8 BTLEAdvFixup-0.9.0-Sonoma.zip
5ea0925c4d0b207557a57fd3b3aec2854050b63cecca52f563693179e17bb2d1 BTLEAdvFixup-0.9.0-Tahoe.zip
c451113cb585be58a0e2f7bc90c41b36d56b3b5573cc29122c388135f09a0706 ForbiddenItlwm-0.5.1-test1-Sequoia.zip
bf5c64d15e4f2d9f65c354e0135c35b26042de1562a7929fe4ebb02cb5333e6b ForbiddenItlwm-0.5.1-test1-Sonoma.zip
0dbeddf134c3e35b4fa99911768ca0f85dd69667057b2143b4052b94d2bfaa54 ForbiddenItlwm-0.5.1-test1-Tahoe.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia|sonoma and rebuilds byte for byte.
ForbiddenItlwm 0.5.0-test1 (test build)
Because AirDrop was never supposed to work on Intel Wi-Fi.
A test build: macOS Sonoma 14.8.9, a fix for Wi-Fi not starting on some machines with 0.4.x, and channel 149 where the firmware marks it passive. Tested on Tahoe; Sequoia and Sonoma not yet.
What's new
- Fixed: Wi-Fi didn't start on some machines with 0.4.0 and 0.4.1 (#14, #16). 0.4.0 read the card's MSI settings from the wrong place, so on some machines the driver stopped right after starting and Wi-Fi stayed off or greyed out. 0.3.x wasn't affected.
- macOS Sonoma 14.8.9, as its own kexts. Verified offline against Apple's 14.8.9 Kernel Debug Kit (23J631). AirDrop starts only on 14.8.9; other Sonoma 14.4+ builds get plain Wi-Fi. BTLEAdvFixup 0.9.0 has a Sonoma build.
- Channel 149 where the firmware marks it passive (#11, #15). In some countries (China, for example) the AirDrop listener fell back to channel 6 at 20 MHz. Now, as on Linux, once the hackintosh has heard a Wi-Fi network's beacon on channels 149 to 161, the listener can use 149 at 80 MHz. A router on 149 at 80 MHz is enough.
- Security: firmware messages are length-checked on every card family, and the build adds a stack protector and zero-filled local variables.
- Diagnostics for open reports:
ItlwmAWDLClientEvents(who opens and closes the AirDrop interface, #7, #13) andItlwmStartLog(the driver's messages when it fails to start, #14, #16). - Sequoia Bluetooth patterns also match 15.8 and 15.8.2.
Who should try it
- Wi-Fi off or greyed out on 0.4.x: this build. Check the result with
ioreg -l -w0 | grep -E '"ItlwmStart'. - Sonoma 14.8.9: testers wanted. Start from a USB stick.
- China, or anyone stuck on channel 6: this build, ideally with a network on 149 nearby.
- Sequoia AirDrop testers (#7, #13): this build, to collect
ItlwmAWDLClientEvents. Transfers don't work on Sequoia yet. - Tahoe with working AirDrop on 0.4.1: optional.
Files
ForbiddenItlwm-0.5.0-test1-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: the Wi-Fi driver for macOS 26.7.x, 15.8.x and 14.8.9. Each replacesAirportItlwm.kext. Use only the one for your macOS.BTLEAdvFixup-0.9.0-Tahoe.zip,-Sequoia.zipand-Sonoma.zip: need Lilu, IntelBluetoothFirmware and BlueToolFixup, with IntelBTPatcher disabled.
Before a macOS update, boot once without -btleadv.
Known issues
- Tested only on the project's hackintosh (Tahoe 26.7.1, AX211): Wi-Fi, Bluetooth and AirDrop both ways work. The Sequoia and Sonoma builds and the 0.4.x start fix on the affected machines (#14, #16) still need testers.
- Sequoia: Wi-Fi works for testers, but AirDrop transfers don't yet (#7, #13).
- Sleep wasn't tested. Instant Hotspot and Continuity Camera don't work yet.
Disclaimer
- Test build: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
Checksums (SHA-256)
5c6e8ba3d1c6c02bd13c97ebe868078934eff2c268f5ab3220fd0fea9888a86e BTLEAdvFixup-0.9.0-Sequoia.zip
bdbde0ed1632d985e08a85fd68b307f1b64774969c18fc2d007c4828e30e6bf8 BTLEAdvFixup-0.9.0-Sonoma.zip
5ea0925c4d0b207557a57fd3b3aec2854050b63cecca52f563693179e17bb2d1 BTLEAdvFixup-0.9.0-Tahoe.zip
e4de69baef7ed71bf7f3d5f37e027cf8cbbe2e548223579f786801add8c18db4 ForbiddenItlwm-0.5.0-test1-Sequoia.zip
df1588b05e4c8779c10c274d2243c0b9bc67ea4d2ff3216944c41f40784ffe4b ForbiddenItlwm-0.5.0-test1-Sonoma.zip
24e23e5c0a42c9a124901f9b4e9a2eccd0a44efbb90b1c97d6dcafcd02ab21d3 ForbiddenItlwm-0.5.0-test1-Tahoe.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia|sonoma and rebuilds byte for byte. BTLEAdvFixup rebuilds identically apart from its random LC_UUID.
ForbiddenItlwm 0.4.1-beta1
Because AirDrop was never supposed to work on Intel Wi-Fi.
A fix for Sequoia: BTLEAdvFixup now actually starts there. Everyone on an earlier version should still update (0.4.0-beta1's security fixes are included).
What's new
- Sequoia: BTLEAdvFixup 0.8.3 starts on Sequoia. Every earlier Sequoia build of BTLEAdvFixup told Lilu it was for Tahoe, and Lilu disables a plugin on any other macOS. So on Sequoia it never ran:
bluetoothdwasn't patched, the IntelBTPatcher replacement wasn't active, and iPhones couldn't find the hackintosh over Bluetooth. - Nothing else changed. ForbiddenItlwm is rebuilt from the same code as 0.4.0-beta1 with the new version number, and the Tahoe BTLEAdvFixup behaves as before.
Who should update
- Sequoia: replace both
ForbiddenItlwm.kextandBTLEAdvFixup.kextwith the Sequoia builds. - Tahoe on 0.4.0-beta1: optional; nothing changes for you.
- Anyone on 0.3.x or older: update, for 0.4.0-beta1's security fixes.
Check that BTLEAdvFixup is running
ioreg -l -w0 -d1 | grep '"BTLEAdv'
BTLEAdvHookRouted should be 1. If it's missing, Lilu didn't start the plugin: check that -btleadv is set and the build matches your macOS.
Files
ForbiddenItlwm-0.4.1-beta1-Tahoe.zipandForbiddenItlwm-0.4.1-beta1-Sequoia.zip: the Wi-Fi driver for macOS 26.7.x and 15.8.x. Both replaceAirportItlwm.kext.BTLEAdvFixup-0.8.3-Tahoe.zipandBTLEAdvFixup-0.8.3-Sequoia.zip: need Lilu, IntelBluetoothFirmware and BlueToolFixup, with IntelBTPatcher disabled.
Before a macOS update, boot once without -btleadv.
Known issues
- Sequoia isn't confirmed working yet. Two AX201 reports (issues #7 and #13) show the Mac hearing the iPhone but not sending. Both used the BTLEAdvFixup that never started, so please retest with this release.
- Sleep wasn't tested. Instant Hotspot and Continuity Camera don't work yet.
Disclaimer
- Beta software: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
Checksums (SHA-256)
41ba56104b31b51de2806f4d5e099576454b987bd608ca6b4e586ce9c5a2acc1 ForbiddenItlwm-0.4.1-beta1-Tahoe.zip
77ca9812ea1bbc1bec3474add69101ae37f7ad3e0db1a5af163e0b96e4f12796 ForbiddenItlwm-0.4.1-beta1-Sequoia.zip
4e5ed5e43bb85b7a365aec512eb04d8ebd7892f30ddfa35a3641ce5565706083 BTLEAdvFixup-0.8.3-Tahoe.zip
15d35ed3a3837368f79bc903eef4d171ad7b090972cc7e84683aba9b9391a89c BTLEAdvFixup-0.8.3-Sequoia.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia and rebuilds byte for byte.
ForbiddenItlwm 0.4.0-beta1
Because AirDrop was never supposed to work on Intel Wi-Fi.
Fourth public beta. Experimental. Security fixes: everyone on an earlier version should update.
What's new
- Security fixes. A review of the driver found these, and they're fixed:
- Wi-Fi password handshake (WPA/WPA2): a length check could be fooled by a malformed message, letting a malicious access point, or anyone who knows the network's password, corrupt kernel memory. This code comes from itlwm and OpenBSD.
- An old join function copied network name and key lengths without checking them. Normal joins don't use it.
- The AirDrop announcement copy (
-itlawdlmitx) now only runs on verified macOS builds, and only keeps data that looks like a real announcement.ItlwmAWDLMiStateshows whether it's on. - Memory, shutdown and startup: memory leaks on rejected Wi-Fi frames, cleanup when the driver stops, a use-after-free after a failed start, and a health check that ran without the driver's lock.
- One card only: a second Intel Wi-Fi card is now left alone instead of corrupting the first one's state.
- WPA2/WPA3 networks rejoin after a reboot (issue #9). Networks offering WPA2 and WPA3 together are shown to macOS as WPA2, which the driver supports.
- BTLEAdvFixup 0.8.2: safer handling of the Bluetooth commands it adds, and it covers macOS 26.7.2 as well as 26.7.1 and 26.7.3.
- AirDrop on setups that pad AWDL frames (issue #6), macOS 26.7.3 Bluetooth patterns and
check_compat.shfixes (issues #5, #8), from the 0.3.1-test1 test build.
Before you install
- Run
bash tools/compat/check_compat.sh. It's read-only. - Use a USB stick with a copy of your EFI, never your only working one.
- On Sequoia, revert OpenCore Legacy Patcher's "Modern Wireless" root patches if you applied them.
- Before a macOS update, boot once without
-btleadv. While BTLEAdvFixup is active, an incremental update can fail (issue #8).
Files
-
ForbiddenItlwm-0.4.0-beta1-Tahoe.zip: the Wi-Fi driver for macOS 26.7.x. -
ForbiddenItlwm-0.4.0-beta1-Sequoia.zip: the Wi-Fi driver for macOS 15.8.x.Both replace
AirportItlwm.kext; don't load both. -
BTLEAdvFixup-0.8.2-Tahoe.zipandBTLEAdvFixup-0.8.2-Sequoia.zip: need Lilu, IntelBluetoothFirmware and BlueToolFixup, with IntelBTPatcher disabled.
Setup is in docs/INSTALL.md. The boot flags are the same as 0.3.0, in docs/BOOT-FLAGS.md.
Upgrading from an earlier version
Replace both ForbiddenItlwm.kext and BTLEAdvFixup.kext with the builds for your macOS. The boot flags stay the same. Then check:
ioreg -l -w0 | grep -E '"ItlwmAWDL(InterfaceBuild|BuildCheck|MiState)"'
It should show forbidden-0.4.0-beta1 (or forbidden-0.4.0-beta1-sequoia), and MiState on.
Tested
- By the project, on an HP Envy x360 13-bf with an AX211, macOS 26.7.1: WPA2, WPA2/WPA3 and open networks, including rejoining after a restart; AirDrop both ways; Bluetooth devices; Wi-Fi off and on; restarts.
- By users, with 0.3.1-test1: an AX210 on 26.7.2 and on 26.7.3, and an AX211 in a ThinkPad E16 Gen 3 on 26.7.1.
Known issues
- Sequoia hasn't been confirmed working on hardware yet. On one AX201 with 15.8.2, the Mac sees the iPhone but can't send (issue #7). Under investigation.
- Sleep wasn't tested.
- Mac → iPhone sometimes takes several seconds to connect, and now and then a first try fails.
- Instant Hotspot and Continuity Camera don't work yet. iPhone Mirroring doesn't work, and probably can't without a T2 chip or Apple silicon.
Thanks
keenerdavid18 (#6), alikaylan (#5), ZEQ-Avidia (#8), lucassaureliano (#9) and mingww64 (PRs #1 and #2).
Disclaimer
- Beta software: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
Checksums (SHA-256)
8dd10a9194b3265bdd5ac73823fe179e68b52045af8c372ef3600232d68fdada ForbiddenItlwm-0.4.0-beta1-Tahoe.zip
0c18c762df9d7ce198bda9c0d42c6bd34b97bb5a26ff26e8e4f95564d81aa93c ForbiddenItlwm-0.4.0-beta1-Sequoia.zip
84e62eae845a01b741703b74c48a3f8ed9b48e8b5f2d69315bbdff61fd66e50f BTLEAdvFixup-0.8.2-Tahoe.zip
e72f5a8f058c582d1d4985a6db745aeaa25ef4e7bdbf0de0f23784582d013b5f BTLEAdvFixup-0.8.2-Sequoia.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia and rebuilds byte for byte.
ForbiddenItlwm 0.3.1-test1 (test build)
ForbiddenItlwm 0.3.1-test1: test build, not a release
This build is for the testers of issues #5 and #6. Please test it from a USB stick with a copy of your EFI, never your only working EFI. The boot flags are the same as 0.3.0-beta1.
What's new
- Issue #6: AirDrop on setups that pad AWDL frames. On some machines, every AirDrop frame from the iPhone arrives with zero bytes after its last field, so the driver rejected all of them and transfers stayed on "Waiting". The driver now cuts that padding, and only that. Seen on an AX211 (8086:51F1) in a ThinkPad E16 Gen 3 with an iPhone 16 Pro. Thanks to keenerdavid18 for the diagnosis.
- Issue #5: BTLEAdvFixup 0.8.1 (Tahoe) supports macOS 26.7.3. Its
bluetoothdpatterns for 26.7.3 (25G342) come from Apple's own installer and were verified offline: the same four patches as on 26.7.1. Not tested on hardware yet. 26.7.2 isn't checked. - Issue #5:
check_compat.shfinds Wi-Fi cards behind a PCI root port, and checks the 26.7.3 Bluetooth patterns. It's in the repository, not in these zips.
Files
ForbiddenItlwm-0.3.1-test1-Tahoe.zip: Wi-Fi driver for macOS 26.7.xForbiddenItlwm-0.3.1-test1-Sequoia.zip: Wi-Fi driver for macOS 15.8.xBTLEAdvFixup-0.8.1-Tahoe.zip: 26.7.1 and 26.7.3 patternsBTLEAdvFixup-0.8.1-Sequoia.zip: 15.8.3 patterns; nothing changed apart from the version
What to check
ioreg -l -w0 | grep -E '"ItlwmAWDL(InterfaceBuild|BuildCheck)"|"ITLAWDLCoex(Added|Channel|CountryLearned|ZeroPadTrimmed|Forwarded|ForwardMalformed|PeerSyncFrames)"'
- Build marker:
ItlwmAWDLInterfaceBuildshould beforbidden-0.3.1-test1, orforbidden-0.3.1-test1-sequoia. - Issue #6:
ITLAWDLCoexZeroPadTrimmedandITLAWDLCoexForwardedshould rise together, and AirDrop should work both ways. - Issue #5 (26.7.3): your iPhone should list the hackintosh, and AirDrop should work both ways.
Please report back in your issue with the output above, and whether AirDrop worked Mac → iPhone and iPhone → Mac.
Checksums (SHA-256)
35f1904b8488cf78f6cb8c78f1fa0bb3319f445bb60c6d32c88dd7bd010f3069 ForbiddenItlwm-0.3.1-test1-Tahoe.zip
9f068f7cece46226e1bb5185f7b6398ef115dc23a400ebb9075b9ba3d33a7998 ForbiddenItlwm-0.3.1-test1-Sequoia.zip
498b96a55424249186b5461b4baa9fbe97cb5a0c0f9d98bd0fd62dc8bf603eb0 BTLEAdvFixup-0.8.1-Tahoe.zip
17a124ae711526962c6b1c96dc2c8cbce30284155e2288847646a12f6484b64b BTLEAdvFixup-0.8.1-Sequoia.zip
Experimental, AI-assisted kernel code: use it at your own risk.
ForbiddenItlwm 0.3.0-beta1
Because AirDrop was never supposed to work on Intel Wi-Fi.
Third public beta. Experimental. Now with a separate build for macOS Sequoia 15.8.x. Sequoia testers wanted.
What's new
- macOS Sequoia 15.8.x, as its own kexts. Each macOS version now has its own ForbiddenItlwm and BTLEAdvFixup. Download the ones for your macOS: the Tahoe zips for 26.7.x, the Sequoia zips for 15.8.x.
- Checked offline only. The Sequoia build was checked against Apple's Kernel Debug Kits for 15.8 (24H23) and 15.8.3 (24H241). Every slot of the AirDrop interface matches Apple's own tables (563 of 563), and every kernel symbol the driver needs exists.
- 15.8.1 and 15.8.2: expected to work. AirDrop starts there only if Apple's Wi-Fi tables still look right at boot; otherwise you get normal Wi-Fi.
- BTLEAdvFixup: the Sequoia build's patterns come from 15.8.3's
bluetoothd. On 15.8 to 15.8.2 they may not match, and then iPhones may not list the Mac. - Nobody has booted the Sequoia build yet. Please test it from a USB stick and report what happens, good or bad.
- Each kext refuses the wrong macOS. A ForbiddenItlwm built for the other macOS version won't start, instead of risking a kernel panic.
- iMessage and push over Wi-Fi on Sequoia: 0.2.0's link-quality fix is in the Sequoia build too.
- Tahoe: nothing changes apart from the version check. BTLEAdvFixup for Tahoe is the same 0.8.0 file as before.
Before you install
-
Run
bash tools/compat/check_compat.sh. It's read-only. It now recognises Sequoia, and checks the right BTLEAdvFixup patterns for your macOS. -
Use a USB stick with a copy of your EFI, never your only working one.
-
On Sequoia, revert OpenCore Legacy Patcher's "Modern Wireless" root patches if you applied them for an older AirportItlwm. ForbiddenItlwm uses the Wi-Fi stack that ships with macOS.
-
Optional but recommended: limit the kexts to their macOS version with
MinKernelandMaxKernelin OpenCore:- Tahoe: 25.0.0 to 25.99.99
- Sequoia: 24.0.0 to 24.99.99
See
docs/INSTALL.md.
What to report (Sequoia testers especially)
- Your macOS build (
sw_vers -buildVersion), your Wi-Fi card, and your hackintosh's laptop or motherboard model. - Whether normal Wi-Fi works.
- The output of:
ioreg -l -w0 | grep -E '"ItlwmAWDL(InterfaceBuild|BuildCheck)"|"ITLAWDLCoex(Added|Channel|CountryLearned)"' - Whether the iPhone lists the Mac, and whether AirDrop works each way.
- The
check_compat.shoutput. - If it panics, the panic log.
Files
-
ForbiddenItlwm-0.3.0-beta1-Tahoe.zip: the Wi-Fi driver for macOS 26.7.x. -
ForbiddenItlwm-0.3.0-beta1-Sequoia.zip: the Wi-Fi driver for macOS 15.8.x.Both replace
AirportItlwm.kext; don't load both. -
BTLEAdvFixup-0.8.0-Tahoe.zip: the same file asBTLEAdvFixup-0.8.0.zipin 0.1.0 and 0.2.0. -
BTLEAdvFixup-0.8.0-Sequoia.zip: the same code with 15.8.3's patterns.Both need Lilu, IntelBluetoothFirmware and BlueToolFixup, with IntelBTPatcher disabled.
Setup is in docs/INSTALL.md, and the boot flags (the same as 0.2.0) are in docs/BOOT-FLAGS.md.
Upgrading from 0.2.0-beta1 on Tahoe
Replace ForbiddenItlwm.kext with the Tahoe build. BTLEAdvFixup and the boot flags stay the same.
Known issues
- Sequoia is untested on hardware.
- Cold iPhone → Mac connects can take 3 to 10 s.
- Instant Hotspot and Continuity Camera don't work yet. iPhone Mirroring doesn't work, and probably can't without a T2 chip or Apple silicon.
- Only one card and one laptop are tested, on Tahoe.
Disclaimer
- Beta software: use it at your own risk. It runs in the kernel and can cause panics or lost Wi-Fi. It comes with no warranty (GPL).
- AI-assisted: this project was developed with an AI assistant (Claude, by Anthropic), including the code and the docs.
- Tested results: every Tahoe result reported was tested on real hardware. The Sequoia build has only been checked offline so far.
Checksums (SHA-256)
9279ca4c9cf83056ea485faf4ffb3c691c35c35ca7f33b2759b0f671c47f8d00 ForbiddenItlwm-0.3.0-beta1-Tahoe.zip
54e474d9db6eaca8869cd5b658f602e5b24ac848363badc966bd2abc335790d3 ForbiddenItlwm-0.3.0-beta1-Sequoia.zip
60d8df0fd2cabc712c49f865a936826d92a7c9332e5754309933d308eb14e18b BTLEAdvFixup-0.8.0-Tahoe.zip
a640201f3212d497f300c74a534a620691b74df3484998d10ffab09f86af0b91 BTLEAdvFixup-0.8.0-Sequoia.zip
ForbiddenItlwm was built from the tagged commit with tools/build.py --target tahoe|sequoia and rebuilds byte for byte.