Files
JiboViteDocs/docs/jtools-minst/05 - Windows Support.md

2.5 KiB
Raw Permalink Blame History

Windows Support

This repo supports Windows, but there are two separate “Windows” stories:

  1. Running the Python scripts on Windows (launchers: .bat)
  2. 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.
  • Updater: ../jibo_updater.bat

    • Prefers ../.venv/ Python if present.
    • Else prefers py -3.
  • GUI: ../jibo_gui.bat

    • Same Python resolution approach.

Environment setup helper

  • ../windows_setup.bat helps 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 wont 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 cant mount the ext image easily, so ../jibo_automod.py tries alternative methods:

  1. debugfs (recommended)

    • If debugfs.exe is available on PATH, the tool can edit the file inside the ext filesystem image safely.
    • Install via MSYS2:
      • pacman -S --needed e2fsprogs
  2. 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 theres no safe padding space.

If youre on Windows and youre seeing warnings about raw edits or the tool cant 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 / cant open USB:

    • Wrong driver (use Zadig -> WinUSB)
    • Not Administrator
    • Cable is charge-only
  • Build failures:

    • Missing MSYS2 packages
    • ARM toolchain missing (payload .bin files wont build)
  • mode.json edit failures:

    • Install e2fsprogs and ensure debugfs is on PATH