MICROFORGE
MICROFORGE 3.3 organizes the complete embedded-Python lifecycle around six engineering phases. The detailed 2.x benches remain intact, but Lifecycle now tells you what is current, what is blocked, what evidence exists, and what action should come next.
Device
Runtime
Project
Status
Browser Capability
Quick Start
2. Connect a board when needed
3. Edit + Run / REPL
4. Diagnose and Verify
5. Select deployment configuration
6. Deploy and Provision
Privacy
Last Event
Detailed Engineering Flow
LOCAL READYHardware Characterization Bench
v3.3Current Measurement Window
| Metric | Unit | Count | Mean | P95 | Min | Max | Rate |
|---|
Run Context
Characterization Runs
Before / After Comparison
Hardware Identity & Fingerprint
v3.2Expected ↔ Observed
| Attribute | Expected | Observed | Result |
|---|
Observed Hardware Fingerprint
Expected Hardware Contract
Fingerprint History
Engineering Dashboard
v3.1Attention Required
CLEAREngineering Health
Recent Engineering Activity
Trend Snapshot
Project Manager
ACTIVE PROJECTProject
ACTIVECheckpoints
0Full local project snapshots · bounded to 20| Name | Created | Files | Hash | Actions |
|---|---|---|---|---|
| No checkpoints. | ||||
Project Vault
0 inactiveLocal browser storage · maximum 12 inactive projects| Project | Runtime | Status | Updated | Actions |
|---|---|---|---|---|
| No inactive projects. | ||||
Project Settings
- Interpreter
- —
- Target board
- —
- Entry file
- —
- Run behavior
- —
- Preferred serial
- —
- Sync ignores
- —
Templates
Package Integrity
Device Configuration Profiles
NO PROFILEProfiles
Configuration changes alter the verification baseline.| Profile | Environment | Validation | Updated | Actions |
|---|---|---|---|---|
| No configuration profiles. | ||||
Profile Values
0 fields| Field | Type | Value | Required | Actions |
|---|---|---|---|---|
| Define schema fields and select a profile. | ||||
Artifact & Deployment
Selected Profile Preview
Compare Profiles
Test & Verification Bench
UNVERIFIEDFIXTURE OFFReusable Test Cases
| Req. | Test | Type | Expectation | Latest | Actions |
|---|---|---|---|---|---|
| No verification cases. | |||||
Verification Runs
0Idle| When | Baseline | Result | Tests | Actions |
|---|---|---|---|---|
| No verification runs. | ||||
Deployment Readiness
Evidence Rules
Fixture Controller
- Status
- DISCONNECTED
- Profile
- None
- USB
- Unknown
- Protocol
- MF_FIXTURE/1 · line-delimited JSON
- Last response
- None
Supported Test Types
- Device connected
- Real DUT via Web Serial
- Runtime match
- Detected DUT runtime matches project expectation
- Sync clean
- Latest Project ↔ Device state is SYNCED
- Static errors
- No local ERROR diagnostics
- Recent exception
- No DUT exception inside the configured window
- Serial contains
- Wait for literal DUT RX text after test start
- Serial regex
- Wait for a JavaScript regular expression after test start
- Fixture observation
- Send a structured command to a second serial fixture and assert its response
- Manual
- Operator records PASS / FAIL / BLOCKED with notes
Advanced Evidence & Qualification
NO CAMPAIGNRequirement / Test Matrix
| Requirement | Criticality | Mapped Tests | Trial Evidence | Disposition | Actions |
|---|---|---|---|---|---|
| No qualification requirements. | |||||
Qualification Trials
0| When | Revision / Conditions | Verification | Pass Rate | Disposition | Actions |
|---|---|---|---|---|---|
| No trials captured. | |||||
Deviations & Waivers
| ID | Type | Requirement | Rationale | Status | Actions |
|---|---|---|---|---|---|
| No deviations or waivers. | |||||
Campaign Definition
- Name
- —
- Hardware revision
- —
- Firmware / project
- —
- Target trials
- —
- Created
- —
Pass-rate Trends
Qualification Dossier Preview
Deployment Bench
NOT READYPreflight Gates
Current local evidenceDevice Write Plan
NOT COMPARED| Path | Current Device State | Deployment Action |
|---|---|---|
| Refresh device evidence to build a current comparison. | ||
Deployment Runs
0| When | Kind | Checkpoint | Write | Smoke | Result | Actions |
|---|---|---|---|---|---|---|
| No deployment runs. | ||||||
Release Controls
Post-Deployment Smoke Tests
Evidence Model
- Authority
- Current matching project checkpoint
- Write direction
- Verified local project → device only
- Deletion
- Never performed by Deployment Bench
- Post-write check
- Fresh content comparison + selected smoke tests
- Seal
- SHA-256 when Web Crypto is available; fallback explicitly labeled
- Signature
- No cryptographic signing key is managed by MICROFORGE v1.9
Build & Artifact Provenance
NO PASSPORTCurrent Ancestry Chain
Current local evidenceCaptured Build Passports
0| When | Label | Status | Checkpoint | Deployment | Units | Integrity | Actions |
|---|---|---|---|---|---|---|---|
| No build passports. | |||||||
Artifact Identity
- Project
- —
- Verification baseline
- —
- Environment lock
- —
- Firmware
- —
- Configuration
- —
- Deployment evidence
- —
Physical Unit Linkage
Evidence Boundary
Automation & Lab Mode
IDLEWorkflow Definitions
| Name | Steps | Risk Boundary | Last Run | Actions |
|---|---|---|---|---|
| No workflows. | ||||
Selected Workflow
Starter Workflows
Latest / Active Run
- Run
- —
- Started
- —
- Finished
- —
- Result
- —
- Baseline
- —
Control Boundary
A workflow never grants blanket authorization. HARDWARE and DESTRUCTIVE steps pause before execution. Authorization applies to that one step only and is consumed immediately. Device connect/port selection remains browser-controlled and cannot be silently granted by a workflow.
Supported Step Types
Release & Provisioning Bench
NO UNITUnit Registry
0| Serial | Asset / HW Rev | Device Identity | Latest Release | Status | Actions |
|---|---|---|---|---|---|
| No registered units. | |||||
Provisioning Fields
Unit Release History
0Selected Unit
- Serial
- —
- Asset tag
- —
- Hardware revision
- —
- Lot / batch
- —
- Device UID
- Not captured
- Observed board
- —
- Observed runtime
- —
Provisioning Artifact
Commissioning Checklist
Maintenance, Rework & Field Return
NO CASEService Cases
| Case | Unit | Type | Reported / Symptom | Status | Disposition | Actions |
|---|---|---|---|---|---|---|
| No service cases. | ||||||
Service Timeline
0Selected Case
- Case
- —
- Unit
- —
- Opened
- —
- Type
- —
- Status
- —
- Original release
- —
- Device UID
- —
Evidence Boundary
A service event can reference current Deployment, Verification, Configuration, firmware, Build Passport, and connected-device observations. MICROFORGE records what was observed or linked; it does not infer a root cause from a repair action or treat a parts replacement as proof that a failure was corrected until retest evidence supports that claim.
Fleet & Batch Operations
NO BATCHProduction Runs
| Batch | Release | Units | Progress | Status | Actions |
|---|---|---|---|---|---|
| No production runs. | |||||
serial (required), assetTag, hardwareRev, lot, and notes. Columns matching non-secret provisioning keys are imported as unit values. Columns matching secret fields are deliberately ignored.Exception / Rework Queue
0Sequential Unit Queue
0| # | Serial | Unit status | Queue | Release | Last evidence | Actions |
|---|---|---|---|---|---|---|
| Select a production run. | ||||||
Release Matrix
| Serial | Asset | Batch state | Deployment | Provision | Commission | Release version | Device UID |
|---|---|---|---|---|---|---|---|
| Select a production run. | |||||||
Project ↔ Device Synchronization
UNKNOWNNot comparedIdentical
Local
Device
Conflicts
Ignored
Ignore Rules
*, ?, and **. Leading / is optional.Synchronization Policy
boot.py remains protected by an explicit confirmation..mpy are stored locally as base64 project assets and can participate in synchronization. The editor opens text files only.| Path | Local | Device | State | Hash | Action |
|---|---|---|---|---|---|
| Connect a device and press Compare. | |||||
Device
DISCONNECTEDHardware
- Board
- Unknown
- MCU
- Unknown
- Architecture
- Unknown
- USB VID:PID
- Unknown
Firmware
- Interpreter
- Unknown
- Version
- Unknown
- Port
- Web Serial
- Board target
- Unknown
Runtime
- State
- UNKNOWN
- Free memory
- Unknown
- Frequency
- Unknown
- Filesystem
- Unknown
- Writable
- Unknown
Serial Transport
- Connection
- DISCONNECTED
- Baud rate
- REPL mode
- UNKNOWN
- Interpreter override
- Queue
- Idle
- Last transport error
- None
- Authorized reconnect
- Idle
Device Filesystem
0 entries| Path | Type | Size | Action |
|---|---|---|---|
| Connect a device and press Refresh. | |||
Library Manager
RUNTIME UNKNOWNlib/ assets, and the connected device's /lib inventory. MICROFORGE does not guess that a package is installed when the filesystem evidence is absent.Required external
Installed
Missing
Device /lib
Compatibility
Project Dependencies
| Import | Required by | Classification | Present | Compatibility | Action |
|---|
Environment Lock
UNLOCKEDlib/ assets. Device comparison hashes the connected board's matching files. A raw .mpy header is evidence only; compatibility is reported as UNVERIFIED unless authoritative bundle/runtime metadata supports a stronger conclusion.| Module / path | Kind | Size | Digest | Compatibility evidence | Project / Device |
|---|
Board Intelligence
PROFILEBoard Profile
Identification
Bootloader
Source Insertion
board.X diagnostics use the same profile data shown here.Pin Explorer
0 pins| Alias | Physical | MCU / Signal | Capabilities | Alternate Signals | Source |
|---|
Extensions & Board Packs
LOCAL DATA ONLYInstalled Packs
Maximum 24 packs| Pack | Version | Trust | Contents | State | Actions |
|---|---|---|---|---|---|
| No extension packs installed. | |||||
Declarative Validation Findings
Selected Pack
Installed Knowledge
Trust Boundary
A matching digest proves only that the imported JSON matches its declared content digest. It does not authenticate the author or publisher. Firmware source metadata remains informational; MICROFORGE does not automatically download third-party firmware from a pack.
Runtime Diagnostics
NO DEVICEObserved Health
Last Exception
Crash Loop
Reset Reason
Memory Low-water
Runtime Snapshot
- Connection
- DISCONNECTED
- Runtime
- Unknown
- Free memory
- Unknown
- CPU frequency
- Unknown
- Filesystem
- Unknown
- Last snapshot
- Never
Classification Rules
- BOOT FAILURE
- Traceback references
boot.py. - STARTUP FAILURE
code.py/main.pytraceback occurs shortly after an observed reset/reload.- MEMORY
- Device reports
MemoryError. - WATCHDOG
- Console contains a watchdog/WDT reset signature.
- HARD FAULT
- Console contains HardFault, panic, or Guru Meditation signatures.
- CRASH LOOP
- Same failure is observed at least three times within 30 seconds.
Device Exceptions
0Click a source location to open the local project file when present.| Observed | Class | Exception | Location | Repeats | Evidence |
|---|---|---|---|---|---|
| No device exceptions captured. | |||||
Runtime Event Timeline
Selected Evidence
Debug & Measurement Bench
NO DEVICEMFDBG/1 serial prefix. Performance baselines are engineering comparisons, not claims about signals the browser cannot observe.Watches & Runtime Assertions
0 WATCHES| Watch | Metric | Statistic | Current | Acceptance | Status | Actions |
|---|---|---|---|---|---|---|
| No watches defined. | ||||||
Current Metric Statistics
| Metric | Unit | Last | Min | Mean | P95 | Rate | Samples |
|---|---|---|---|---|---|---|---|
| No numeric measurements captured. | |||||||
Baseline Comparison
Saved Performance Baselines
Runtime Assertions
Event Timeline
MFDBG/1 Protocol
Only lines beginning exactly with MFDBG/1 are parsed as structured debug evidence. Ordinary application JSON is ignored.
Serial Instrumentation
NO DEVICEname=value pairs such as temperature=23.5,humidity=41.2. Console and REPL traffic continue normally.Channels
Samples
Last Sample
Window
Live Serial Plotter
Channels
Lines containing extra non-separator text are ignored so echoed REPL commands are not casually mistaken for measurements.
Firmware Catalog
SNAPSHOTTarget
Installed
Latest Stable
Catalog
| Runtime | Channel | Version | Date | Format | Flash | Comparison | Checksum evidence | Actions |
|---|---|---|---|---|---|---|---|---|
| Catalog not loaded. | ||||||||
Firmware Bench — UF2 / ESP
IDLEFirmware Package
- Hash
- —
- Runtime hint
- Unknown
- Version hint
- Unknown
- UF2 blocks
- —
- UF2 family
- —
- Address span
- —
Bootloader Volume
- Volume
- —
- UF2 identity
- Unknown
- Model
- Unknown
- Board-ID
- Unknown
- Bootloader
- Unknown
Advanced Overrides
Recovery & Reconnect
- Enter the board's UF2 bootloader using the board-specific procedure.
- Select and inspect the boot volume.
- Choose a known-good firmware image and validate it.
- Flash only after the target evidence is acceptable.
- Reconnect the runtime and verify the interpreter after re-enumeration.
Firmware History
ESP Firmware Bench
ESP Binary Segments
IDLE| File | Address | Size | SHA-256 | |
|---|---|---|---|---|
| No ESP binary segments selected. | ||||
ESP Transport & Evidence
bundle.js.Advanced Flash Parameters
Transport Log
Recovery Bench
NOT ASSESSEDObserved Condition
Recommended Level
Evidence
Safety
Capture current diagnostics and filesystem inventory before changing the board.
Interrupt execution, regain a friendly REPL, and attempt a soft reload before changing persistent files.
Temporarily move an auto-start file out of the interpreter's normal startup path. The original bytes are preserved under a timestamped .recovery-disabled-* name.
boot.py can change USB/filesystem behavior. MICROFORGE requires a second confirmation for boot.py and records the exact rename.Inspect free space and largest files. Deletion remains in the Device workspace so the exact selected path and confirmation are visible.
Use a known-good firmware image only after target evidence has been checked. RP2 boards route to the UF2 bench; ESP boards route to the ESP ROM-loader bench.
Whole-chip erase is exposed only for ESP devices through the existing ESP Firmware Bench. MICROFORGE does not implement automatic filesystem format, mass delete, or blind erase from this panel.