Transform workspace into OpenKE Stock USB Installer generator (v1.0.0)

This commit is contained in:
Dark98
2026-09-24 00:16:18 +00:00
parent c0dd058ae7
commit 6a43841867
17 changed files with 1218 additions and 1132 deletions
+71
View File
@@ -0,0 +1,71 @@
# Troubleshooting & USB Flashing Diagnostics
This document covers common issues when flashing OpenKE via USB OTA, root causes, and diagnostic steps.
---
## 1. "No firmware found" / "No local update available"
When you insert the USB drive and navigate to **Settings** $\rightarrow$ **Firmware Update** $\rightarrow$ **Local Update**, the screen reports no file found.
### Root Causes & Fixes:
1. **USB Drive File System**:
* The Creality Linux kernel does not reliably mount exFAT or NTFS drives on early boot.
* **Fix**: Format the USB flash drive as **FAT32** with an **MBR** (Master Boot Record) partition table. Avoid GPT partition tables on the flash drive.
2. **File Location**:
* The `.img` file must be placed in the **root directory** of the USB drive (e.g. `E:\NEBULA_ota_img_V1.1.0.34.img`), not inside a folder.
3. **Filename Format**:
* Creality's `master-server` scans for files matching `ota_img_V`.
* Files must be named:
- For Nebula Pad: `NEBULA_ota_img_V<version>.img`
- For Ender-3 V3 KE: `Ender-3_V3_KE_F005_ota_img_V<version>.img`
---
## 2. "Update failed" Immediately After Confirming
The screen detects the update, you click "Update Now", the progress bar appears for a split second, and it immediately reports "Update Failed".
### Root Cause:
* Creality's updater extracts the 7z archive to a temporary directory and looks for `ota_config.in` in `<TEMP_DIR>/<UNZIP_FOLDER>/ota_config.in`.
* If the root directory inside the 7z archive does not match the `.img` filename (without `.img`), `cp -f $ota_site_config` fails.
* **Resolution**: The updated `build_openke_image.sh` / `tools/pack_openke.py` guarantees this alignment automatically. Ensure you use images built with the latest packager.
---
## 3. "Current version is newest" / Won't Allow Flashing
The UI says the firmware is already up-to-date or newer.
### Root Cause:
* In `local_ota_update.sh`:
```bash
if [ $current_version -ge $ota_current_version ]; then
echo "ota not update: current version is newest"
exit 2
fi
```
* If your device is running `1.1.0.30` and the package version is `1.1.0.30` or lower, it refuses to flash.
* **Fix**: Pass a higher version number when running the build script:
```bash
./build_openke_image.sh --target nebula --version 1.1.0.35
```
---
## 4. How to Inspect Live Update Logs on the Printer
If you have SSH access to stock firmware and want to see what `local_ota_update.sh` is doing during a flash:
1. Connect to the printer via SSH:
```bash
ssh root@<printer-ip>
```
2. Trigger the local update manually from the command line to see stdout/stderr in real time:
```bash
sh -x /etc/ota_bin/local_ota_update.sh /media/sda1/NEBULA_ota_img_V1.1.0.34.img
```
3. Check temporary updater logs:
```bash
ls -la /usr/data/creality/ota_updater*
```