Changelog (26)
Cronus Zen™ firmware
v2.3.2 — August 18, 2026
Added
Trigonometry math functions:
sin,cos,tan,asin,acos, andatan2Support for the unified Zen Link™ v1/v2 firmware
Fixed
Clearing Bluetooth® did not fully clear or unpair a connected device
DualShock®4 and DualSense™ light bar and rumble behaviour is now consistent between USB and Bluetooth®
General bug fixes and improvements
v2.3.0 — July 2, 2026
Added
GameSir G7 Pro controller support
BVARS, giving each slot 1024 extra 16-bit persistent values for scripts
High-resolution Mouse Ballistics Curve
Improved
Audio handling
Elite Series 2 controller detection
General optimizations and minor bug fixes
Zen Link™
v2.1.4 — August 20, 2026
Added
A quick tap of the config button cycles the LED brightness: dim → four steps → max → off → dim. Dim is the default — see Brightness
Holding the config button for more than five seconds enters BLE mode for changing the Wi-Fi settings. If the phone app is already running, restart it so it can detect the Zen Link™
BLE mode can be left at any time by tapping the config button again. Nothing is changed unless new Wi-Fi settings are submitted
Changed
The idle state is now a dim white LED, replacing the previous two white blinks
v2.1.3 — August 18, 2026
Changed
Unified firmware for Zen Link™ v1 and v2
Improved
LED status signals — see Status Light
General stability
Zen Studio Live
v1.0.8 — August 22, 2026
Added
Upload is blocked when the active script is blank or compiles to nothing, and the reason is named on the button and in the dialog
Open device confirmations — erase memory, clear Bluetooth®, factory reset, restart — close themselves when the Cronus Zen™ disconnects
GPC3020warning for:used as a statement terminatorGPC5143error when combo state slots exceed the available capacityGPC6038warning for an empty combo
Fixed
Undo in the OLED editor no longer leaves the selection pointing at an object that is gone
OLED image import and nudge refuse an unresolved selection instead of quietly editing the Background layer
Reads from the Cronus Zen™ retry on a transient integrity fault instead of failing outright
A connection that fails partway through startup no longer leaves the app showing a ready device
Folding of division, modulo, shift and clamp matches how the Cronus Zen™ evaluates them at runtime
Float literals round the way Zen Studio rounds them
The optimizer no longer drops side effects from the initializer of a removed
forloopCombo steps stay correct after the optimizer rewrites a combo body
Long flat operator chains count toward the expression nesting limit instead of slipping past it
sizeof()array sizes resolve correctly, and an unusable array size is reported once instead of twiceDevice read timeouts no longer drift
Formatting a script is now stable — running it again on formatted code leaves it unchanged
Improved
Programming waits for the Cronus Zen™ to report erase completion before the first write
Disconnects are detected right away and carry a reason, so nothing is sent to a device that is already gone
General diagnostics, error handling, stability, and reliability
v1.0.7 — August 18, 2026
Added
QR code objects in the OLED Message Screen editor, re-editable after creation, with error correction and size options and a warning when a code will not fit the screen
Position anchor grid to snap any OLED object to one of nine spots on the canvas
Open tabs now talk to each other: when another tab is holding the Cronus Zen™, the in-use indicator can alert that tab with a title flash, a toast and an optional browser notification
Device Settings entry in the Device Management sidebar menu
Single-tab device lock setting for advanced users
Publish date shown on script cards in the Script Library
Combined GamePack sort choices in the slot list
Right-click a Device Monitor cell to copy its raw value
Automatic retry when slot programming is interrupted mid-write, with a cancellable wait
Zen Link™ status indicator in the status bar, with a popover showing the link's state, its own firmware version and serial, and a refresh button
Version history for Script Library scripts: Details and History tabs, switching to any earlier release, and a banner with Go to latest when viewing an older one
Stack budget meter in the Output panel, showing how much of the Cronus Zen™'s stack a script's variables and runtime cost use
Evaluate an expression or convert a number's radix straight from the editor's right-click menu
Editor settings to turn quick suggestions and parameter hints off
Live "too narrow" warning when the picture-in-picture Device Monitor is sized below what it can render
Trigonometry built-ins on the Zen32:
sin,cos,tan,asin,acos, andatan2— they take and return degrees, with values scaled by 10000
Fixed
GamePack options with more than one choice are now treated as multiple choice
Script Library upload rejects blank content instead of failing later
Attached Devices popover opened on the wrong surface in some places
Editor Settings dialog now keeps full height
SPVAR editor button labels and wording
Nintendo Switch® was not always detected as the connected console
MAX Combo defaulted its controller to PS3® instead of PS5®
Push and Pull labels in the editor's git bar were unreadable
Very large scripts could break the editor instead of loading with reduced features
Scripts saved as UTF-16 are now opened and decoded correctly, and files that are not source are rejected on every open path
Restore File Access kept asking after being declined
Merge conflicts are entered reliably, and conflict markers glued to code are put back on their own lines
A stalled git remote request now fails visibly instead of hanging
set_ps4_lbartook its colour parameters in the wrong orderwait()in an expression now reports an error instead of crashing the compilerCalls with the wrong number of arguments to a built-in are reported instead of silently dropped
Variable slot usage reported the number of declarations instead of the slots actually used
Go to definition and Rename now anchor on the declaration's name
Formatter output stays plain ASCII and no longer leaves minified scripts on one line
Changed
Closing or reloading the page is now blocked while programming or updating the device
The Update Available banner can no longer be dismissed, and update notices are much harder to miss
Improved
Attached Devices popover reworked into a tree grid that shows how devices are connected
Editor dialogs now use Zen Studio Live's own window chrome, grow to fit their content, and wrap long text
Slots are verified against the Cronus Zen™ after programming, and slot backups check the size read back against the slot's own metadata
Connecting now gives up cleanly instead of hanging when the Cronus Zen™ stops responding
Clearing Bluetooth® no longer asks you to type a confirmation, and the remaining confirmations are quicker to get through
Device Monitor opens at the width needed for the PS5® adaptive trigger columns
Output panel filter badges now match what is actually filtered
Data section summary counts strings, images, and adaptive trigger tables as items
GamePack sort labels reworded to plain language
General diagnostics, error handling, stability, and reliability
Removed
Legacy
PVAR_1toPVAR_16from the Zen and Zen32 built-ins
v1.0.6 — July 17, 2026
Added
Ternary conditional operator (
condition ? a : b) in scriptsGPC2117 error for a ternary missing its
:GPC4032 error when a ternary is used as a standalone statement
Fix and Fix All buttons in the compiler output panel apply available quick fixes directly
Hovering an enum member or define now shows its resolved value
Fixed
Saved M&K profiles now store and restore ballistic curves correctly
Device Settings no longer shifts layout while values load from the Cronus Zen™
Restarting the Cronus Zen™ no longer loses settings applied just before the restart
Incorrect parameter-limit errors on some built-in functions
Fallthrough warning no longer appears on empty switch cases
Find References and symbol highlighting now respect scope and symbol type
Stray text cursor no longer appears over icons and read-only text
Improved
Firmware update wizard retries a failed update automatically, with the option to cancel while it waits to retry
Device settings changes apply without restarting the Cronus Zen™
Cronus Zen™ commands now retry automatically on recoverable communication errors
Sending a Library script directly to a slot no longer leaves its tab behind after a reload (editing the script keeps it)
Device Management moved into the sidebar Tools group
General diagnostics, error handling, stability, and reliability
v1.0.5 — July 12, 2026
Added
Every successful compile now shows slot, stack, and bytecode usage against your Cronus Zen™'s maximum limits
Lightbulb fixes are now driven by the real parser, allowing edits to land precisely without overlaps or duplicate suggestions
New fixes cover unused declarations, switch fallthrough, assignments inside conditions, unconsumed return values, and single or multi-variable
fordeclarationsHover, rename, references, cursor targeting, quickfixes, and the Problems panel now align correctly in scripts containing accents, symbols, or other non-ASCII text
The bug report dialog can now capture detailed Cronus Zen™ traffic for the current session
Fixed
Momentary device-state races no longer cause false "connection lost" disconnects
The Build button can no longer remain stuck after a failed compile
Tab menus now target the correct tab, Git files restore using the correct language, close buttons remain visible, and dialogs correctly handle Escape and Enter
Keyboard shortcuts no longer trigger while typing outside the editor
Invalid switch-case values no longer disrupt the remaining case labels
Multiline strings no longer shift diagnostic line numbers
Outline and analytics panels clear correctly when switching to an empty tab
Long usernames no longer break profile layouts on the Library page
Improved
Script flashing and device reads are now much more reliable when the Cronus Zen™ streams live data during an operation, preventing silent timeouts and corrupted reads
Ctrl + S now detects files changed outside the editor and handles them safely
Unsaved work is preserved when moving tabs between editor panes
Workspace saving now recovers gracefully when browser storage fails and flushes when switching away from the tab
Changes to the auto-save setting now apply immediately without requiring a reload
Messages for
REMAP_NULL, switch-case traps, memory limits, and other diagnostics are now clearer and more actionableFailed compiles now show an accurate summary that resets correctly before the next build
When a new update becomes available, Zen Studio Live now prompts you to reload instead of failing on stale application files
Broad reliability improvements across diagnostics, error handling, saving, tabs, and Cronus Zen™ communication
v1.0.3 — July 9, 2026
Added
GPC3012–GPC3017: const-array narrowing warnings
New warnings for zero-folding division/modulo and "glued" negative numbers such as
x -1Restart your Zen directly from the app. Zen Studio Live also restarts the device automatically after writing output, PS4®, or Remote Play settings
Capture bindings by pressing a key, mouse button, or controller button on your connected device
Name mapped buttons inline. Labels save with your profile and
.zmkexportsExclude specific devices from capture, with quick-add options from the device tiles
Save, export, download, and profile actions now show confirmation toasts
Top Scripts on the Home page are now votable, with confirmation before each vote is submitted
Fixed
Duplicate tabs, cancelled-save tab closing, clipped hover tooltips and suggestions in split view, and a startup crash caused by duplicated tabs
Compile results now stay with the tab that compiled them, and stale compiles can no longer overwrite another tab's results
Diagnostic positions are now correct in scripts containing non-ASCII characters, including accents and emoji
The upload dialog now shows the correct active file name
Incorrect slot names in empty-readback errors, Flash All confirmation with no pending changes, and header wrapping
Live BALC dots, button-label length caps, device-tile layout issues, and label caption clipping
The PS5® ADT column font size now matches the rest of the monitor
The downvote tally is now hidden while vote buttons remain available
A Script Library upload issue that could occur in Brave
Failed
addr()and 2D const-array lookups now report diagnostics instead of returning wrong valuessizeof(image)now returns the element size,1
Improved
2D const-array index, address bounds, and single-bracket access are now validated
Data-section address arguments are now checked against section size
Built-in argument limits now error instead of slipping through
Stray
;expressions now error with Expected expression instead of compiling as0Zero-size array aliasing now warns with GPC6031; zero-size arrays without an alias target now error
Deeply nested scripts are now caught instead of silently overflowing
On 16-bit devices, constant math now truncates correctly to match device behavior
Uppercase
0Xhexadecimal notation is now acceptedFlashing and firmware update communication has been reworked to reduce write failures and stalls
Program is now always available when a connected, supported device is ready
Free-draw strokes are faster and no longer drop pixels during quick movements
The server status indicator now reflects real request outcomes, reducing false offline or online states
Startup behavior and library loading
v1.0.2 — July 4, 2026
Added
Work with two side-by-side editor panes for easier comparison, editing, and script navigation
Move tabs freely between editor panes, or use the drag-to-dock overlay to split or move a tab
Tab context menus and editor strip buttons now include split options
Dropping a file that is already open in the other pane now jumps to that tab instead of opening a duplicate
Pane layout and split ratio now persist across reloads
If the built-in firmware updater gives you trouble, a clearly labeled link now takes you to the official online updater after handing your Zen over cleanly
The connected-device area now shows when newer firmware is available, plus a once-per-session heads-up
Your M&K profile and ballistic curves now survive device disconnects. Unsaved changes now trigger a Save / Discard prompt
If your Zen is already being used by another tab or app, Zen Studio Live now shows a clear in use elsewhere state
Fixed
Constants now resolve correctly inside
data()section valuesConst-array usage is no longer incorrectly reported as unused
addr()on jagged const arrays now resolves element addresses correctlyHex escapes from
\x80to\xFFnow emit as single bytesEnum members and variables now use the correct symbol icons
Improved
General editor stability
Workspace-restore reliability
Cursor detection inside comments and strings is now more accurate
The updater now handles busy devices, device handoff, disconnects during update, and Try Again recovery more reliably
The success screen now shows the installed version, outdated firmware states show the available update, and rejected updates show the correct reconnect fix
GitHub sign-in now completes inside its popup instead of reloading the whole app
Flashing a new script to a slot no longer inherits leftover values from the previous script
Broad reliability and error-handling improvements across device connections, the Script and GamePack Library, and uploads
Removed
get_mkandset_mkare no longer supported
v1.0.0 — July 2, 2026
Added
Truly cross-platform: works anywhere a Chromium-based browser runs, including Windows®, macOS®, Linux®, and ChromeOS™
Full Zen device support in the browser: connect your Zen directly from the page, program slots, use live Device Monitor, configure GamePacks, adjust M&K settings, run guided firmware updates, and reconnect automatically
Fast, modern editor: snappy code editing and compiling directly in the browser, with built-in Git version control for your scripts
Built-in OLED Studio: design 128×64 OLED screens with layers, shapes, text from any font, image import with dithering, and one-click GPC export. This is not available in the desktop app
Zen Studio Legacy
Last updated

