Skip to content

Repository files navigation

BandSteerer

CI

BandSteerer is a native macOS menu-bar utility that asks macOS to keep the Wi-Fi network you are already using on 5 GHz. It is useful when one network name is broadcast on several frequency bands and macOS has roamed to a slower band.

Features

  • A native Prefer 5 GHz switch controls the current network. Off leaves Wi-Fi roaming entirely to macOS.
  • The setting is remembered separately for each network across disconnects, app launches, and Mac reboots.
  • The menu-bar label shows when the 5 GHz preference is active and makes corrections or unavailable Wi-Fi visible at a glance.
  • BandSteerer corrects a connection only when macOS moves away from 5 GHz. Moving between 5 GHz access points requires no intervention.
  • Sleep pauses connection checks. After wake, the app waits for Wi-Fi to reconnect before restoring the preference for the same network.
  • Open at Login can restore saved preferences automatically after signing in.
  • A silent update check runs when the app starts and then once every 24 hours while it remains open. Available updates use the native Sparkle install and relaunch flow.

BandSteerer is built with public macOS frameworks and Sparkle 2 for updates. It has no analytics, root helper, private framework, or application service. It runs in the App Sandbox.

Requirements

  • macOS 14 or later
  • Location permission, which macOS requires before apps can read Wi-Fi network information

BandSteerer does not request or receive geographic coordinates.

Install

Download the latest DMG from GitHub Releases, open it, and drag BandSteerer to Applications. Official binary releases are signed and notarized for macOS Gatekeeper.

First use

  1. Open BandSteerer and click its Wi-Fi menu-bar icon.
  2. Choose Allow Wi-Fi Access and approve Location permission.
  3. Turn on Prefer 5 GHz while connected to a supported network.

The switch is remembered for that network. Turn it off to remove the preference, or use About BandSteerer > Reset Saved Preferences… to remove every saved network preference at once.

On launch, BandSteerer restores a saved preference only when it can apply it without an authorization prompt. Otherwise the switch stays off until you turn it on, so macOS presents any required prompt in response to your action.

On password-protected personal networks, macOS may show an authorization prompt when BandSteerer reads the password already saved in the Keychain. After a successful connection, the app stores a device-local Keychain copy so future corrections do not prompt repeatedly. BandSteerer never writes Wi-Fi passwords to files or logs.

Limitations

BandSteerer requests a corrective association; it cannot disable macOS roaming at the driver level. macOS or the access point may move the connection temporarily, and reconnecting can briefly interrupt network traffic.

Preferences are identified by network name. Two unrelated networks with exactly the same name therefore share one 5 GHz preference.

Open, OWE, and personal password-protected networks are supported. Enterprise Wi-Fi is not supported by the password-based association API used by the app. BandSteerer identifies 2.4 GHz and 6 GHz connections in its status but steers only toward 5 GHz.

Build from source

Building requires Xcode 16 or later:

  1. Open BandSteerer.xcodeproj.
  2. Select the shared BandSteerer scheme and My Mac destination.
  3. Choose Product > Run to build and launch the app.
  4. Choose Product > Test to run the test suite.

Quit any installed copy before running from Xcode because BandSteerer allows only one instance. See CONTRIBUTING.md before submitting a change.

Privacy and security

5 GHz preferences are stored locally using a SHA-256 identifier instead of the plaintext network name. Wi-Fi credentials remain in process memory or the macOS Keychain. SSIDs, BSSIDs, passwords, scan results, and geographic coordinates are never logged.

See PRIVACY.md for data handling and SECURITY.md for vulnerability reporting.

Project

About

Native macOS menu-bar utility for preferring 2.4 GHz or 5 GHz on dual-band Wi-Fi networks.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages