Skip to content

Releases: OpenIntelWireless/itlwm

v2.3.0 stable

09 Jun 07:01
Compare
Choose a tag to compare
  • Support macOS Sonoma
    • Users from macOS 14.0 to macOS 14.3 should use a separate kext due to an API change in 14.4+
    • iMessage and related services will not work OOB with AirportItlwm.kext, use itlwm.kext or a builtin NIC as the primary device instead
  • Switch to the RS rate control algorithm from iwlwifi
  • iwx: support AX101, AX411 Killer variants, and other devices (0x7F70, 0x51F1)
  • iwn: Sync changes from OpenBSD
  • Many small bug fixes and optimizations

Full Changelog: v2.2.0...v2.3.0

v2.2.0 stable

31 May 16:55
Compare
Choose a tag to compare
  • Support macOS Ventura, Location Services and Wi-Fi list should all work properly.
  • Support connecting to hidden SSIDs from iwx devices(with itlwm.kext only).
  • Synced updates from OpenBSD (partially).
  • Use System default MTU.
  • Support Killer 1650s (0x43F0), 1690i, and 1690s.
  • Support more Killer devices from the AX211 family.
  • Add support for newer device variants (0xA0F0:0x6074, 0x43F0:0x1652)
  • iwx: Improve Tx performance by resolving a Tx queue threshold related issue, upload speeds should no longer be capped to 350 Mbps(Gen3 devices).
  • Send DEAUTH frame before switching and disassociating from Access Points, this notifies routers that the current device has disconnected and may result in faster reassociate speeds.
  • Add support for VHT20 and VHT40.
  • iwx: Support and upgrade firmware to version 68.
  • iwm: Support and upgrade firmware to newest version.
  • 11n and 11ac networks are more likely to be selected.
  • Migrate fw_gen tool to Python3
  • Fix incorrect abs macro and use __builtin_abs if available (#739). Thanks @pigworlds.
  • Fix airport_up_time (#833), noise sign and return codes (#834). Thanks @usr-sse2.
  • Fix VHT mcs set for single antenna Gen 1 devices
  • Many small bug fixes and optimizations

Note: Handoff is disabled on Ventura in favour of faster Wi-Fi connection speed upon waking from sleep. Further fixes (no ETA) may be included in future releases.

Full Changelog: v2.1.0...v2.2.0

v2.1.0 stable

01 Jan 00:50
Compare
Choose a tag to compare
  • Added 2 boot-args
    • -novht: Disables 802.11AC support
    • -noht40: Disables 40MHz when using 2.4GHz (Use this option if the network with this config causes instabilities. BRCM cards disable 2.4GHz HT40 by default)
  • iwx: Added support for new device families (AX210, AX211, AX411, and variants)
  • Added support for more Killer Wi-Fi cards
  • iwx: Expanded compatibility for new APIs used in newer versions of firmware
  • Implemented BT/Wi-Fi COEX. 316x & 726x cards should have a much better Bluetooth experience when Wi-Fi is used at the same time
  • Implemented MAC Address Changing. It is now possible to change the MAC Address using ifconfig
  • iwm/iwx: Polished support for LDPC
  • iwn: Added support for Centrino Wireless-N 6150
  • iwm: Fixed performance issues on 316x & 726x cards caused by misconfigured LDPC
  • Channel 80+80MHz is not supported, fallback to 20MHz like what iwlwifi does
  • Synced updates from OpenBSD (partially, only critical ones)
  • Fix firmware crash when receive deauth/disassoc frames, eg: connected AP disappear suddenly.
  • Fix WPA2/WPA3 mixed mode connection performance.
  • Many small bug fixes and optimizations

Full Changelog: v2.0.0...v2.1.0

v2.0.0 stable

07 Aug 14:55
Compare
Choose a tag to compare

This version brings performance to the next level:

  • iwm/iwx: Add support for 802.11AC
  • iwm/iwx: Add support for VHT160 (160MHz)
  • Add support for LDPC and STBC
  • Improve RA rate scaling algorithm to support HT, VHT, and HE throughput
  • AirportItlwm: Add support for macOS Monterey
  • AirportItlwm: Add support for overriding Country Code by Airport (starting from macOS Mojave)

    Priority: User Override > Firmware LOC > Airport Override
    Adapters that don't provide Country Codes will now accept them from airportd

  • AirportItlwm: Fix DHCP auto-renewal and key update issues causing periodic disconnections
  • Update PHY context when MIMO is disabled/unsupported to fix issues on single antenna cards
  • iwn: Do not add rxon ht flags on initialization (#606 Credit @pigworlds)

Full changelog: v1.3.0...v2.0.0

v1.3.0 stable

20 Apr 09:28
Compare
Choose a tag to compare

This version brings significant speed and stability improvements

  • Implement Tx Aggregation with A-MPDU and A-MSDU
  • Add HT40 (40MHz) support to iwn (#516), iwm, and iwx devices
  • Switch to the RA algorithm for rate selection (Credit Christian Ehrhardt and Stefan Sperling)
  • Implement channel width changing between 20MHz and 40MHz
  • Force disable ASPM to prevent devices being in unsupported states
  • Correctly configure Tx QoS for iwx devices to eliminate stuttering when uploading
  • Partially implement Airport SSID nodes cache age to optimize user experience
  • Add retries if BSS association fails
  • Decrypting multicast frames will no longer generate failures on iwx devices

v1.2.0 stable

15 Jan 03:22
Compare
Choose a tag to compare
  • Use Apple RSN Supplicant for authentication. AirportItlwm now supports connecting to WPA/2 Enterprise networks. Credit @usr-sse2 (#311) (#349)
  • Partially support Apple Watch Unlock (Not tested)
  • Switch to MacKernelSDK
  • Bug fixes for iwm and iwx
  • IO80211Family headers update and bug fixes
  • Support AWDL service initialization (no further services available)
  • Add support for country code
    • Adapters that don't report country codes (iwn, 7000 & 8000 series) can use itlwm_cc=COUNTRY_CODE to select them
  • Support monitoring download speed
  • Add support for iwn devices. Credit @pigworlds (#399) (#411) (#404) (#424)
  • Change itlwm dependencies version to fit 10.9 and above
  • Change AirportItlwm match strategy to fix random kernel panic when system boots
  • Sync openbsd net80211 (#453)
  • Bug fixes for the MIRA algorithm. Credit @pigworlds (#465) (#466)
  • Correct iwx sending traffic ids, improved performance
  • Fix SSID disappering in Heliport when itlwm is associating
  • Use kprintf instead of IOLog to avoid missing interruptions while associating

v1.1.0 stable

16 Sep 16:02
Compare
Choose a tag to compare

itlwm

  1. Merged itlwmx to itlwm, itlwmx is now deprecated.
  2. Compressed firmware files, reduced itlwm size to 9.9 MB.
  3. Resolved an issue that causes the system to become unresponsive when uploading with P2P software.

A single itlwm.kext supports all the previously supported devices.

itlwm still needs to be used with Heliport and provides support for 10.12 and above systems.


AirportItlwm Beta

  1. Supports all itlwm-supported devices.
  2. Supports native Wi-Fi selection and switching with WPA/WPA2/Unencrypted Wi-Fi Networks.
  3. Supports Location Services.
  4. Handoff and Universal Clipboard perfectly supported. (#292 (comment))

Known Issues and limitations

  • Handoff and Universal Clipboard are the only supported Continuity features.
  • Instant HotSpot from iPhone can be recognized but may likely fail to connect. Workaround: use itlwm.kext with HeliPort.
  • Apple Bluetooth peripherals may fail to connect. Workaround: use itlwm.kext with HeliPort or disable iCloud.

Bootloader Compatibility

Note:
OpenCore requires 0.6.1 or higher. Please read OpenCore's Official Document for more details.

Set SecureBootModel to Default to make sure IO80211Family loads properly.

Workaround for Users with Prelinked Kernel without ImmutableKernel

  • Force IO80211Family to load. γ€ŒSupports OpenCore and Clover(not tested)」 (Read the Kernel - Force section in OpenCore's manual for more info)
  • Load AirportItlwm from Terminal (Continuity features may not work)
  • Extract IO80211Family from the system, insert AirportItlwm as a Plugin, and load the bundle with a bootloader.
  • Or disable SIP and install AirportItlwm into /Library/Extensions (Take your own risk)

The latter two methods are not recommended, hence details are not provided.

v1.0.0 stable

23 Aug 13:14
Compare
Choose a tag to compare

itlwm is for gen1 device, and itlwmx is for gen2 device. If you want to know how to use and how to know your device, please go to the DOC.