Skip to content

Releases: apiwishboon-spec/Nexo

Nexo v2.2.4

Choose a tag to compare

@github-actions github-actions released this 15 Oct 13:26

Nexo v2.2.4

Animation fix.

What's fixed

  • The Home character (cat/owl) no longer makes the whole screen flash. The panel
    only repaints when the animation pose actually changes (~2x/second max) instead
    of redrawing everything every 400 ms.

Tested on real hardware

  • Built and flashed to a M5Stack Cardputer-Adv; verified the character
    animates smoothly without screen flash.
  • Native unit tests: 24/24 PASSED.

Downloads

  • Nexo-m5stack-cardputer.bin
  • Nexo-android-release.apk
  • Nexo-macos-release.zip
  • SHA256SUMS

Nexo v2.2.3

Choose a tag to compare

@github-actions github-actions released this 15 Oct 13:01

Nexo v2.2.3

Fixes the macOS self-update flow.

What's fixed

  • macOS updates no longer fail silently. If Nexo is running from a Gatekeeper
    translocated path or a read-only location (e.g. launched straight from the
    download), the app now shows a clear message telling you to move Nexo to
    /Applications and relaunch before updating.
  • The update button properly surfaces download/install errors instead of
    failing silently.
  • When an automatic update can't run, the download is revealed in Finder with
    instructions to finish manually.

Tested on real hardware

  • Native unit tests: 24/24 PASSED.

Downloads

  • Nexo-m5stack-cardputer.bin
  • Nexo-android-release.apk
  • Nexo-macos-release.zip
  • SHA256SUMS

Nexo v2.2.2

Choose a tag to compare

@github-actions github-actions released this 15 Oct 12:37

Nexo v2.2.2

Fixes for v2.2.1.

What's fixed

  • Memo list rows are shorter (18px) so all 4 visible rows fit above the footer
    without being cut off at the bottom of the screen.
  • Audio task keeps feeding the decoder even when nothing is actively playing,
    preventing I2S DMA underruns after a memo recording handback.
  • Memo footer shows current index (n/total) so you can see when more memos
    are above/below the visible window.

Tested on real hardware

  • Built and flashed to a M5Stack Cardputer-Adv; voice memos and MP3 playback
    verified.
  • Native unit tests: 24/24 PASSED.

Downloads

  • Nexo-m5stack-cardputer.bin
  • Nexo-android-release.apk
  • Nexo-macos-release.zip
  • SHA256SUMS

Nexo v2.2.1

Choose a tag to compare

@github-actions github-actions released this 15 Oct 12:09

Nexo v2.2.1

Small follow-up to v2.2.0.

What's new

  • Home character option #2 is now an 8-bit owl (it replaced the glasses
    kid; classier on a 240x135 panel) alongside the orange cat.
  • Orange tabby palette applied to the cat.
  • Memo list now shows its current index (n / total) so you can see when more
    memos are above/below the visible window.
  • BLE multi-central fix: a second companion app can now connect to the same
    device (advertising restarts on connect).

Tested on real hardware

  • Built and flashed to a M5Stack Cardputer-Adv; voice memos and character
    selection verified.
  • Native unit tests: 24/24 PASSED.

Downloads

  • Nexo-m5stack-cardputer.bin
  • Nexo-android-release.apk
  • Nexo-macos-release.zip
  • SHA256SUMS

Nexo v2.2.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 11:31

Nexo v2.2.0

A firmware release: voice memos and a selectable 8-bit character for the
Home pane.

What's new

Voice memos

  • New Memos screen on the device. Press R to record (the header shows a
    blinking indicator and a mm:ss timer), ENTER to stop & save, ENTER to
    play/pause, DEL to erase.
  • Recordings are written as 16 kHz mono WAV files to /memos on the microSD card,
    so you can pull them off on a computer too.
  • Recording parks the music decoder and hands the I2S bus to the microphone, then
    restores the speaker path and clears memo state when playback ends — a memo
    never auto-advances your music queue.

Home character

  • The Home left pane can now show a little 8-bit character: an orange cat
    or a glasses kid, both animated (bobbing every few seconds with a blink).
  • Pick it in Settings → Home character; the choice is saved to preferences.

Under the hood

  • Firmware bumped to 2.2.0.
  • New audio API in hw/audio (memoBegin/Scan/RecordStart/RecordStop/Play/Delete/…).
  • Preview/emulator stubs implement the memo API so the whole flow is testable
    without hardware.

Tested on real hardware

  • Built and flashed to a real M5Stack Cardputer-Adv (pio run -e m5stack-cardputer, SUCCESS).
  • Verified on-device: boot, Home, character selection, voice-memo record → save →
    play → erase, and music playback after memos.
  • Native unit tests: 24/24 PASSED.
  • WASM emulator + preview renders: OK.

Downloads

  • Nexo-m5stack-cardputer.bin — firmware image (Cardputer-Adv).
  • Nexo-android-release.apk — Android app (arm64).
  • Nexo-macos-release.zip — macOS app.
  • SHA256SUMS — checksums for the above.

License

Copyright (C) 2026 Apiwish Anutravanichkul. Licensed under AGPL-3.0-or-later.

Nexo v2.1.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 04:48

Nexo v2.1.0

An app-focused release: Nexo now updates itself.

The firmware is unchanged from v2.0.0 (no reflash needed). Only the companion
app was updated.

What's new

In-app updates

  • The app checks GitHub Releases on launch (and on demand via About → App
    updates
    ) and tells you when a newer version is available.
  • Android: one-tap download of Nexo-android-release.apk and hand-off to the
    system package installer. The first time, allow Install unknown apps for Nexo.
  • macOS: the App Sandbox is now disabled so Nexo can download
    Nexo-macos-release.zip, swap /Applications/Nexo.app and relaunch itself in
    one click. If the app is running from a read-only or translocated location, the
    download is revealed in Finder instead.
  • Release notes are shown inline, with a link to the release page. Auto-check can
    be turned off.

Under the hood

  • New dependencies: package_info_plus, path_provider, url_launcher,
    pub_semver.
  • Added unit tests for release parsing and version comparison.

Downloads

  • Nexo-android-release.apk — Android app (arm64).
  • Nexo-macos-release.zip — macOS app.
  • Nexo-m5stack-cardputer.bin — firmware image (same as v2.0.0).
  • SHA256SUMS — checksums for the above.

License

Copyright (C) 2026 Apiwish Anutravanichkul. Licensed under AGPL-3.0-or-later.

Nexo v2.0.0

Choose a tag to compare

@apiwishboon-spec apiwishboon-spec released this 15 Oct 03:16

Nexo v2.0.0

First tagged release. Nexo is an offline-first study toolkit for the M5Stack
Cardputer
(Stamp-S3A) with a Flutter companion app for Android and
macOS.

Note: developed without a physical Cardputer attached, so the binaries are
built and passed their automated test suites, but have not been flashed or
hardware-verified. Please report anything that misbehaves.

Highlights

Firmware (ESP32-S3)

  • Portable, host-tested BLE protocol core (nexo_core) plus the device layer.
  • Notes & homework with LittleFS persistence (atomic writes).
  • Calculator, timer, and an MP3/WAV player (ESP32-audioI2S + ES8311), with
    timer-alarm and UI sound effects.
  • NimBLE GATT server with PIN auth and multi-central support.
  • Optional Wi-Fi access point with a built-in web UI (no CDN/cloud):
    music upload/download, playback control, and over-the-air firmware updates.

Companion app (Flutter)

  • BLE scan / connect / authenticate.
  • Offline-first sync engine with revisions, tombstones and conflict resolution.
  • Notes & homework browsing, search, create, edit, delete.
  • Device dashboard (battery, storage, Wi-Fi, uptime).
  • Extended settings with live time sync from the phone.
  • Find / reboot / factory-reset actions.
  • Music library management: browse, play/pause/seek, volume, import tracks over
    the device Wi-Fi AP, and one-tap firmware updates.
  • Material 3 theming, phone and desktop layouts.

Protocol

  • BLE protocol v2 — clean break; the app and firmware must match. See
    docs/PROTOCOL.md for the wire format. New: device info, time sync,
    find/reboot/factory-reset, music list/control/now-playing/delete, and extended
    settings (volume, brightness, screen timeout, auto-advance, timezone, AP
    password).

Downloads

  • Nexo-m5stack-cardputer.bin — firmware image (flash to the Cardputer, or
    chain-load with bmorcelli/Launcher).
  • Nexo-android-release.apk — Android app (arm64).
  • Nexo-macos-release.zip — macOS app.
  • SHA256SUMS — checksums for the above.

License

Copyright (C) 2026 Apiwish Anutravanichkul. Licensed under AGPL-3.0-or-later.

Nexo (continuous build)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 15 Oct 08:13

Nexo continuous build

Commit 1c264b4 on main.

Rebuilt this run

  • App (Android APK + macOS app)
  • Firmware (Cardputer image)

Commits

  • fix(ui): throttle character animation redraws to stop screen flashing; bump v2.2.4 (`1c264b4`)

Rolling development build. Stable releases: see the versioned tags.