Releases: mandarwagh9/embedist
Release list
v0.18.0 - Integrated Terminal & Toast Notifications
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
Edit custom endpoints, Show/Hide API key toggle, NVIDIA NIM thinking mode support
v0.16.2
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:
- Primary: PlatformIO Core, version 6.1.19 - Most reliable, works if Python can import platformio
- Bundled Path: Check
- Common User Paths: Check user Python installations (Python310-313, Miniconda, Anaconda)
- 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
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
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
- On first launch, users see the Setup Wizard
- Step 1: Install PlatformIO (or skip if already installed)
- Step 2: Select and install microcontroller platforms
- Step 3: Configure AI provider (or skip to Settings)
- 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
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
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
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
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
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