Windows Support
This repo supports Windows, but there are two separate “Windows” stories:
- Running the Python scripts on Windows (launchers:
.bat) - Actually talking to the Jibo over USB in RCM mode (drivers + build tools)
The USB/RCM part is the trickiest.
Launchers
-
Installer:
../jibo_automod.bat- Runs
python ../jibo_automod.py %* - Warns if not Administrator.
- Runs
-
Updater:
../jibo_updater.bat- Prefers
../.venv/Python if present. - Else prefers
py -3.
- Prefers
-
GUI:
../jibo_gui.bat- Same Python resolution approach.
Environment setup helper
../windows_setup.bathelps install dependencies via MSYS2 and explains Zadig.
It installs (via MSYS2):
- MinGW gcc/make
- libusb
- ARM toolchain (
arm-none-eabi-gcc) for payload builds
USB driver requirement (RCM mode)
When Jibo is in RCM mode it enumerates as NVIDIA APX (0955:7740).
On Windows you typically need to replace its driver with WinUSB:
- Use Zadig and install WinUSB for the “APX” device.
Without this, ShofEL won’t be able to talk to the device.
Editing mode.json on Windows
Linux can mount the ext filesystem image and edit /var/jibo/mode.json normally.
Windows usually can’t mount the ext image easily, so ../jibo_automod.py tries alternative methods:
-
debugfs (recommended)
- If
debugfs.exeis available on PATH, the tool can edit the file inside the ext filesystem image safely. - Install via MSYS2:
pacman -S --needed e2fsprogs
- If
-
Raw in-place patch (last resort)
- The tool searches the partition image bytes for JSON patterns and overwrites them without changing length.
- This can fail if the on-disk JSON format differs or if there’s no safe padding space.
If you’re on Windows and you’re seeing warnings about raw edits or the tool can’t find patterns, installing debugfs is the best fix.
WSL option
Another workable approach is to use WSL2 and follow the Linux path.
Caveat: you still need USB passthrough into WSL (which can be non-trivial depending on your setup).
Common Windows failure modes
-
Device not detected / can’t open USB:
- Wrong driver (use Zadig → WinUSB)
- Not Administrator
- Cable is charge-only
-
Build failures:
- Missing MSYS2 packages
- ARM toolchain missing (payload
.binfiles won’t build)
-
mode.json edit failures:
- Install
e2fsprogsand ensuredebugfsis on PATH
- Install
Related docs
- Installer workflow: 01 - Installer (How It Works)
- CLI flags: 03 - CLI Arguments