OKAI ES600 Stem and Status Light Configuration
OKAI ES600 stem/status lights are configured with the AT+GTLED TCP command. The command is available from the vehicle detail page for OKAI vehicles as both a full LED configuration command and targeted commands for each GTLED field.
Steyn City Locked-Light Fix
For ES600 scooters where the green stem/status light turns off while locked, the display must first be updated to display firmware E8,24. After the display update succeeds, send the ES600 preset command:
AT+GTUPD=<password>,0,3,10,0,,,<display-firmware-url>,0,1,,,<serial>$
In Levy Fleets, use the fixed vehicle command ES600 Display Firmware Update E8,24, or use Update Display Firmware URL when OKAI provides a replacement display firmware URL.
The dashboard send only confirms the command was accepted/queued. Confirm the firmware result in recent telemetry: successful display updates report OKAI_FIRMWARE_UPDATE progress 100 -> 200 -> 201 -> 300 -> 301.
AT+GTLED=<password>,,0,,00FF00,1,0,0,,,<serial>$
Then send the vehicle command:
ES600 Locked Stem Light On
This canary was verified on vehicle 2407030254 / IMEI 864499063999790 on June 17, 2026. The display firmware update completed 100 -> 200 -> 201 -> 300 -> 301, the GTLED command returned +ACK:GTLED, and GTALC readback showed:
LED,,0,,00FF00,1,0,0,0,4
What Automatic Colors Support
When Status Light Mode = 3 (battery/fault effect), the stem light color is driven by battery level and fault state on a fixed schedule baked into OKAI's firmware. Louis (OKAI service center) confirmed the thresholds on June 20, 2026 and was explicit that they are not tunable:
The display rules for Status Indicator Mode 3 are as follows: Green light: Battery level ≥ 50%. Yellow light: Battery level between 19% and 49%. Please note that the battery display rules are fixed in the protocol and cannot be modified via AT commands.
| Battery / state | Stem light |
|---|---|
| At or above 50% | Green |
| 19% to 49% | Yellow |
| Below 19% | Louis defined only the 19–49% yellow range; he did not specify a separate sub-19% color, and it is not configurable either way |
| Fault / malfunction | Red (independent of battery level) |
These bands cannot be changed. There is no AT+GTLED field for battery-percentage thresholds (see the GTLED Field Reference below) — AT+GTLED only controls whether and how the light is on (work mode, color, status-light mode, and lock/turn/ambient behavior), never the battery level at which Mode 3 switches green ↔ yellow. If you need a fixed, predictable color regardless of charge, set a direct RGB color instead of relying on Mode 3.
There is no confirmed automatic color mapping for locked, unlocked, riding, charging, unavailable, or out-of-service states. Use direct color or mode commands for fixed behavior.
GTLED Field Reference
Command shape:
AT+GTLED=<password>,,<LED_WORK_MODE>,,<RGB_SETTING>,<STATUS_LIGHT_MODE>,<DISABLE_INDICATOR_LED>,<TURN_LIGHT_MODE>,<LOCK_STATUS_LIGHT_EFFECT>,<BOTTOM_AMBIENT_LIGHT>,<serial>$
| Field | Values | Meaning |
|---|---|---|
| LED Work Mode | 0, 1, 2, 3 | 0 constant, 1 flash, 2 off, 3 breathing |
| RGB Setting | 000000 to FFFFFF | RGB hex color. Examples: 00FF00 green, FF00FF magenta, FF0000 red |
| Status Light Mode | 0, 1, 3 | 0 off, 1 on, 3 battery/fault effect |
| Disable Indicator LED | 0, 1 | 0 keep indicator enabled, 1 disable indicator |
| Turn Light Mode | 0, 1, 2, 3, 4 | 0 front/rear on, 1 front/rear off, 2 front on/rear off, 3 rear on/front off, 4 color turn signals |
| Lock Status Light Effect | 0, 1 | 0 lights off when locked, 1 lights on when locked |
| Bottom Ambient Light | 0, 1, 2, 3, 4 | 0 unlocked only, 1 locked only, 2 locked/unlocked, 3 off, 4 use tail turn signals |
Blank GTLED fields are used by Levy targeted commands to leave existing device values unchanged. The ES600 canary preserved the existing lock/bottom-light values when those fields were blank.
Vehicle Commands Available
Use these from the vehicle detail page:
| Command | Use |
|---|---|
| ES600 Display Firmware Update E8,24 | Start the verified ES600/ES610 display firmware update |
| Update Display Firmware URL | Start the same display GTUPD shape with a replacement OKAI-provided URL |
| Configure LED Lights | Set every GTLED field at once |
| ES600 Locked Stem Light On | Apply the verified ES600 E8,24 locked-light preset |
| Set Stem LED Work Mode | Change only constant/flash/off/breathing mode |
| Set Stem RGB Color | Change the stem color with custom RGB hex and force constant LED mode |
| Set Status Light Mode | Change only status light behavior |
| Set Indicator LED State | Enable or disable indicator LEDs |
| Set Turn Light Mode | Change front/rear turn-light behavior |
| Set Locked Light Effect | Change locked-state light effect |
| Set Bottom Ambient Light Mode | Change bottom ambient/tail-turn-signal mode |
| Enable Turn Signals | Set bottom ambient mode 4 without touching stem/status fields |
| Deck/Tail Side Lights Off | Set bottom ambient mode 3 without touching stem/status fields |
| Deck/Tail Side Lights Default | Set bottom ambient mode 2 without touching stem/status fields |
Recommended ES600 Settings
For the Steyn City requirement, use:
LED Work Mode: 0
RGB Setting: 00FF00
Status Light Mode: 1
Disable Indicator LED: 0
Turn Light Mode: 0
Lock Status Light Effect: unchanged
Bottom Ambient Light: unchanged
If you need magenta branding, use Set Stem RGB Color with:
FF00FF
If you need red as a fixed color, use:
FF0000
Do not use fixed red as a substitute for fault indication unless operations explicitly wants that behavior; automatic red is only part of Status Light Mode=3 fault behavior.