JS110 Firmware update

Hello, I’m trying to update my JS110 firmware.
This is what the Python commands return:

PS C:\Users\romai\Desktop\pyjoulescope> set JOULESCOPE_BACKEND=0
PS C:\Users\romai\Desktop\pyjoulescope> python -m joulescope info
System information
    Python: 3.11.4 (tags/v3.11.4:d2340ef, Jun  7 2023, 05:45:37) [MSC v.1934 64 bit (AMD64)]
    Platform: Windows-10-10.0.22631-SP0 (win32)
    Processor: AMD64 Family 25 Model 33 Stepping 2, AuthenticAMD
    executable: c:\Users\romai\Desktop\pyjoulescope\.venv\Scripts\python.exe
    frozen: False

joulescope version: 1.1.15
Found 1 connected Joulescope:
    JS110-001428   ctl=                 sensor=

And running the update ends with a bootloader error:

PS C:\Users\romai\Desktop\pyjoulescope> python -m joulescope program upgrade "js110_1_3_4.img"
Traceback (most recent call last):-----------------] 5.0%
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "c:\Users\romai\Desktop\pyjoulescope\.venv\Lib\site-packages\joulescope\__main__.py", line 22, in <module>
    sys.exit(run())
             ^^^^^
  File "c:\Users\romai\Desktop\pyjoulescope\.venv\Lib\site-packages\joulescope\entry_points\runner.py", line 105, in run
    return args.func(args)
           ^^^^^^^^^^^^^^^
  File "c:\Users\romai\Desktop\pyjoulescope\.venv\Lib\site-packages\joulescope\entry_points\program.py", line 140, in on_run
    rc = _upgrade(args.filename)
         ^^^^^^^^^^^^^^^^^^^^^^^
  File "c:\Users\romai\Desktop\pyjoulescope\.venv\Lib\site-packages\joulescope\entry_points\program.py", line 120, in _upgrade
    upgrade(d, filename, progress_cbk=_progress)
  File "c:\Users\romai\Desktop\pyjoulescope\.venv\Lib\site-packages\joulescope\v0\firmware_manager.py", line 150, in upgrade
    b, _ = device.bootloader(progress_cbk=cbk)
           ^^^^^^^^^^^^^^^^^
AttributeError: 'DeviceJs110' object has no attribute 'bootloader'

Maybe there is something wrong with my Python installation, or the actual JS110 firmware is too old?

The commands you ran were for the older Windows Command Prompt. However, it looks like you are using PowerShell. Here are the equivalent commands for PowerShell:

PowerShell 7.4.5
PS C:\> $env:JOULESCOPE_BACKEND = "0"
PS C:\> python -m joulescope info
System information
    Python: 3.12.4 (tags/v3.12.4:8e8a4ba, Jun  6 2024, 19:30:16) [MSC v.1940 64 bit (AMD64)]
    Platform: Windows-11-10.0.22631-SP0 (win32)
    Processor: Intel64 Family 6 Model 183 Stepping 1, GenuineIntel
    executable: C:\bin\Python3_12_4\python.exe
    frozen: False

joulescope version: 1.1.15
Found 1 connected Joulescope:
    Joulescope:000494   ctl=1.3.4            sensor=1.3.4
PS C:\> python -m joulescope program upgrade "${env:USERPROFILE}\Downloads\js110_1_3_4.img"
[==================================================] 100.0%
Firmware program took 24.90 seconds
PS C:\>

Does this work for you?

Dumb me :man_facepalming: I was using the Terminal within VS Code.

The command does work and the update was successful!

Thanks for your support @mliberty !

1 Like