Skip to content

Releases: mandarwagh9/embedist

v0.18.0 - Integrated Terminal & Toast Notifications

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 28 Mar 14:50

New Features

  • Integrated Terminal: Full xterm.js terminal in BottomPanel with PowerShell
  • Toast Notifications: Visual feedback for AI agent file operations (save, create, build)
  • File Auto-Refresh: Files automatically update when modified externally
  • Monaco Cursor Fix: Preserves cursor position when content changes

Changes

  • Serial Monitor moved to separate tab
  • BottomPanel now has 4 tabs: Terminal | Serial Monitor | AI Assistant | Build Output

Technical

  • Added tauri-plugin-pty for terminal support
  • Added xterm.js packages (@xterm/xterm, @xterm/addon-fit)
  • New useFileWatcher hook for polling file changes

v0.17.0

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 27 Mar 17:34

Edit custom endpoints, Show/Hide API key toggle, NVIDIA NIM thinking mode support

v0.16.2

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 27 Mar 16:29

Fix: Robust PlatformIO Detection

Problem

PlatformIO installation succeeded but status still showed 'Not Installed' because the detection logic only looked in bundled paths.

Solution

Implemented multi-method PlatformIO detection:

  1. Primary: PlatformIO Core, version 6.1.19 - Most reliable, works if Python can import platformio
  2. Bundled Path: Check
  3. Common User Paths: Check user Python installations (Python310-313, Miniconda, Anaconda)
  4. PATH Lookup: Fall back to system PATH

Changes

  • Added function that uses Usage: python -m platformio [OPTIONS] COMMAND [ARGS]...

Options:
--version Show the version and exit.
-c, --caller TEXT Caller ID (service)
--no-ansi Do not print ANSI control characters
-h, --help Show this message and exit.

Commands:
access Manage resource access
account Manage PlatformIO account
boards Board Explorer
check Static Code Analysis
ci Continuous Integration
debug Unified Debugger
device Device manager & Serial/Socket monitor
home GUI to manage PlatformIO
org Manage organizations
pkg Unified Package Manager
project Project Manager
remote Remote Development
run Run project targets (build, upload, clean, etc.)
settings Manage system settings
system Miscellaneous system commands
team Manage organization teams
test Unit Testing
upgrade Upgrade PlatformIO Core to the latest version

  • Added with comprehensive path checking
  • Updated to try Python module first
  • Updated to verify installation after pip install

This fix ensures PlatformIO is properly detected regardless of where it's installed.

v0.16.1

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 27 Mar 16:14

Bug Fix: Install PlatformIO Commands

Fix

  • Register and commands in Tauri handler

This fixes the error that occurred when clicking 'Install PlatformIO' in the Setup Wizard.

v0.16.0

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 27 Mar 16:02

Major Update: First-Run Setup Wizard + AI Fixes

New Features

  • Setup Wizard: First-time users now see a setup wizard that helps install PlatformIO and configure AI providers
  • Built-in PlatformIO Installation: The app can now install PlatformIO directly from the setup wizard
  • Platform Selection: Users can select which microcontroller platforms to install (Arduino, ESP32, ESP8266)

Bug Fixes

  • AI Provider Sync: Fixed critical bug where AI providers weren't synced to Rust backend after app restart
  • Race Condition: Fixed issue where settings weren't loaded before syncing
  • API Key Validation: Added better error messages when API key is missing
  • Endpoint Detection: Fixed getActiveEndpoint to find the active provider correctly

Technical Changes

  • Rust backend now checks for bundled PlatformIO in app directory before falling back to system PATH
  • Added and Rust commands for in-app installation
  • Added flag to track first-run state

How It Works

  1. On first launch, users see the Setup Wizard
  2. Step 1: Install PlatformIO (or skip if already installed)
  3. Step 2: Select and install microcontroller platforms
  4. Step 3: Configure AI provider (or skip to Settings)
  5. App is ready to use!

This release fixes the critical 'works on my machine' bug where custom endpoints would fail after restart.

v0.15.1

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 27 Mar 13:37

Bug Fix: Restore AI Provider State on App Startup

Root Cause

The Rust backend's AIState was in-memory only - it was lost on every app restart. Custom endpoints were saved to localStorage but never restored to the Rust backend on startup, causing API calls to fail with 'Provider not found' error.

Fixes

  • Add useAIProviderSync hook to restore providers from localStorage to Rust on startup
  • Fix getActiveEndpoint to find the active provider (not just any endpoint)
  • Fix handleProviderUpdate stale closure by using getState()

This fixes the critical 'works on my machine' bug where the app worked on the developer's machine but failed on other devices after restart.

v0.15.0

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 26 Mar 12:16

Fix Debug mode tool execution:

  • Add parseJsonToolCalls() to extract tool calls from text output
  • Now supports both API tool_calls and JSON text in response
  • AI can output JSON like {"name": "list_directory", "arguments": {"path": "src"}}
  • Tool execution now works properly

v0.14.0

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 26 Mar 05:58

v0.14.0 - ESP8266/ESP32 Support Improvements

Serial Monitor

  • Add DTR/RTS support wired to serial connection (configure in Settings)
  • Add 74480 baud rate (ESP8266 bootloader default)
  • Add 250000 baud rate (common for ESP devices)
  • Reorder baud rates with common ones first (74480, 115200 at top)
  • Add line ending dropdown selector in toolbar (CRLF, LF, CR)

Build Panel

  • Add ESP8266 board variants to default boards:
    • ESP8266 (1MB)
    • ESP8266 (512KB)
    • ESP8266 (256KB)

Note

  • DTR/RTS can be enabled in Serial Settings
  • For ESP8266 flashing, enable DTR in settings before connecting

v0.13.0

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 25 Mar 15:20

v0.13.0 - Code Quality Improvements

TypeScript Consolidation

  • Added shared types to src/types/index.ts (OpenTab, SerialPort, SerialConfig, SerialMessage, AIProvider, AIMessage, CustomModel, PlanPhase, AgentStatus, ActivityLogEntry, PlatformInfo, BuildResult, Board)
  • Updated fileStore.ts and uiStore.ts to import from centralized types

Bug Fixes

  • Removed debug console.log statements from rag.ts
  • Fixed Rust error handling in lib.rs - replaced unwrap/expect with graceful error handling

Note

  • Serial code consolidation was researched but skipped to avoid breaking working code

v0.12.3

Choose a tag to compare

@mandarwagh9 mandarwagh9 released this 24 Mar 18:16

RAG Engine Project Indexing

  • Index project source files (.c, .cpp, .h, .ino, .py, .rs, etc.)
  • Search includes both static hardware knowledge and project files
  • Project files weighted 1.5x higher in search results
  • Indexes on project open and refresh, content added on file open
  • Excludes node_modules, .pio, build, and files over 512KB