SFP Tool is a portable service device for reading, checking, and reprogramming SFP and QSFP transceivers. It can be operated directly on the hardware or remotely from the desktop and Android app over USB or Bluetooth Low Energy.
The system has four major parts:
You should have:
SSD1306 or SH1106.After power-up, the firmware initializes the display, transceiver interfaces, BLE services, battery monitoring, and optional USB HID transport. The on-device display is intended for direct field use without a permanently attached phone or PC.
Use the front buttons to navigate menus locally. The exact menu contents depend on firmware version, but the app exposes the full operational feature set and is the preferred interface for advanced work.
The BLE device name can be changed in the app settings page. The
default advertised prefix is SFP-TOOL-.
USB is useful for faster transfers, especially for firmware updates and EEPROM operations.
After connecting, the app exposes these pages from the main menu:
StatusTransceiverEEPROMPasswordsScriptsAboutSettingsDisconnectHolding the Settings menu entry opens
Special Settings.
The status page shows whether an SFP or QSFP module is currently detected.
Use this page to verify basic physical insertion before attempting reads or writes.
The transceiver page displays module information and digital diagnostic monitoring data when available. Typical values include vendor-identifying data and measured optics or power telemetry exposed by the module.
Use this page for quick health checks before making EEPROM changes.
The EEPROM section has two tabs:
Editor for direct EEPROM access.ESP Files for files stored on the tool itself.Use the editor when you need to inspect or modify EEPROM bytes. Confirm the target address range and module type before writing changes.
The passwords area has three tabs:
StoredChange PasswordCrackingUse this tab to manage passwords stored on the device for later reuse.
To change a transceiver password:
Change Password.The app rejects invalid lengths and prevents reusing the same value as the old password.
Use the cracking page only when you are permitted to recover a password. This operation can take time depending on the target module and transport.
Scripts provide repeatable EEPROM programming workflows. They are stored on the tool and can also be imported from or exported to files in desktop builds.
The built-in editor supports commands such as:
password 00112233name "VENDOR"model "MODEL-123"serial "SN000001"mfg_date "240101"bytes 0xA0 0x01 0x02checksumwriteEvery programming script should end with write,
otherwise validation will report an error.
The settings page exposes normal operator settings.
Changing the device name updates both:
The maximum name length is 24 characters. The device reboots to apply the new name.
You can configure:
0 to 255.0 to 65535 seconds.After the idle timeout expires, the display dims to 25 percent
brightness. If brightness is set to 0, the display can turn
fully off until a button is pressed.
Special settings are intended for service or build-time correction.
1.0: no battery gauge support.1.1: current default hardware with battery
support.SSD1306SH1106Set these values correctly if the display behaves incorrectly or the battery indicator is missing on supported hardware.
When battery telemetry is available, the app bar shows:
USB or BLE).If battery information is unavailable, verify the configured hardware revision.
The about page supports firmware upload to the device.
About.USB uses larger transfer chunks than BLE and is usually faster.
Use the browser-based updater when:
Use a Chromium-based browser such as Chrome or Edge for this workflow.
On the about page, tapping the build number repeatedly opens the logs viewer. This is intended for diagnostics and service use.
Special Settings and confirm the OLED type is
correct.SSD1306 or
SH1106.1.0 does not provide battery gauge
support.