You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CLAUDE.md
+25-15Lines changed: 25 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -116,31 +116,41 @@ The `c_mpos/src/webcam.c` module provides webcam support for desktop builds usin
116
116
117
117
### Development Workflow (IMPORTANT)
118
118
119
-
**For most development, you do NOT need to rebuild the firmware!**
119
+
**⚠️ CRITICAL: Desktop vs Hardware Testing**
120
120
121
-
When you run `scripts/install.sh`, it copies files from `internal_filesystem/` to the device storage. These files override the frozen filesystem because the storage paths are first in `sys.path`. This means:
121
+
📖 **See**: [docs/os-development/running-on-desktop.md](../docs/docs/os-development/running-on-desktop.md) for complete guide.
122
122
123
+
**Desktop testing (recommended for ALL Python development):**
# 2. Run on desktop - changes are IMMEDIATELY active!
129
+
./scripts/run_desktop.sh
128
130
129
-
# That's it! Your changes are live on the device.
131
+
# That's it! NO build, NO install needed.
130
132
```
131
133
132
-
**You only need to rebuild firmware (`./scripts/build_mpos.sh esp32`) when:**
133
-
- Testing the frozen `lib/` for production releases
134
-
- Modifying C extension modules (`c_mpos/`, `secp256k1-embedded-ecdh/`)
135
-
- Changing MicroPython core or LVGL bindings
136
-
- Creating a fresh firmware image for distribution
134
+
**❌ DO NOT run `./scripts/install.sh` for desktop testing!** It's only for hardware deployment.
135
+
136
+
The desktop binary runs **directly from `internal_filesystem/`**, so any Python file changes are instantly available. This is the fastest development cycle.
137
137
138
-
**Desktop development** always uses the unfrozen files, so you never need to rebuild for Python changes:
138
+
**Hardware deployment (only after desktop testing):**
139
139
```bash
140
-
#Edit internal_filesystem/ files
141
-
./scripts/run_desktop.sh # Changes are immediately active
0 commit comments