timvideos / HDMI2USB-mode-switch

Tool for switching boards supported by HDMI2USB firmware between multiple different modes (programming, webcam, etc).
Apache License 2.0
10 stars 13 forks source link

unsupported operand type(s) for +: 'set' and 'set' retry_error_msgs+fatal_error_msgs #103

Closed CarlFK closed 5 years ago

CarlFK commented 5 years ago
(venv) juser@gator:~/HDMI2USB-mode-switch$ cd ../HDMI2USB-mode-switch/^C(venv) juser@gator:~/HDMI2USB-mode-switch$ git remote -v
origin  https://github.com/mithro/HDMI2USB-mode-switch.git (fetch)
origin  https://github.com/mithro/HDMI2USB-mode-switch.git (push)
(venv) juser@gator:~/HDMI2USB-mode-switch$ git branch 
  master
* openocd-retry
(venv) juser@gator:~/temp$ hdmi2usb-mode-switch -v --flash-image image-gateware+bios+firmware.v0.0.4-453-gfd68613.opsis.hdmi2usb.lm32.bin 
WARNING:root:unbind-helper not found, will have to run as root!
Numato Opsis in 'serial' mode at /dev/bus/usb/001/042
 /sys/bus/usb/devices/1-5
 /sys/bus/usb/devices/1-5:1.0
 /sys/bus/usb/devices/1-5:1.1
 Board is currently used by drivers ('cdc_acm',)
 Serial port at /dev/ttyACM0
My root dir: /home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/modeswitch
Going from serial to jtag
Detaching drivers from board.
Using FX2 firmware /home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/firmware/fx2/opsis/ixo-usb-jtag.hex
Running 'fxload -t fx2lp -D /dev/bus/usb/001/042 -I /home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/firmware/fx2/opsis/ixo-usb-jtag.hex -v'
Numato Opsis in 'jtag' mode at /dev/bus/usb/001/043
 /sys/bus/usb/devices/1-5
 /sys/bus/usb/devices/1-5:1.0
Board was Board(dev=LsusbDevice(2a19:5441:0003 'ffffd8803967d4f5'), type='opsis', state='serial')
Board now Board(dev=LsusbDevice(16c0:06ad:ff00 'ffffd8803967d4f5'), type='opsis', state='jtag')
Numato Opsis in 'jtag' mode at /dev/bus/usb/001/043
 /sys/bus/usb/devices/1-5
 /sys/bus/usb/devices/1-5:1.0
Running ['openocd', '-f', 'board/numato_opsis.cfg', '-c', 'init; xc6s_print_dna xc6s.tap; jtagspi_init 0 /home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/firmware/spartan6/opsis/bscan_spi_xc6slx45t.bit; jtagspi_program /home/juser/temp/image-gateware+bios+firmware.v0.0.4-453-gfd68613.opsis.hdmi2usb.lm32.bin 0x0; exit']
Open On-Chip Debugger 0.10.0
Licensed under GNU GPL v2
For bug reports, read
    http://openocd.org/doc/doxygen/bugs.html
Warn : Adapter driver 'usb_blaster' did not declare which transports it allows; assuming legacy JTAG-only
Info : only one transport option; autoselect 'jtag'
Warn : incomplete ublast_vid_pid configuration
jtagspi_program
Info : usb blaster interface using libftdi
Info : This adapter doesn't support configurable speed
Info : JTAG tap: xc6s.tap tap/device found: 0x44028093 (mfg: 0x049 (Xilinx), part: 0x4028, ver: 0x4)
DNA = 100110110110000100011001100011000111100000011111101011000 (0x136c23318f03f58)

loaded file /home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/firmware/spartan6/opsis/bscan_spi_xc6slx45t.bit to pld device 0 in 10s 118660us
Info : JTAG tap: xc6s.tap tap/device found: 0x44028093 (mfg: 0x049 (Xilinx), part: 0x4028, ver: 0x4)
Info : Foretry_error_msgs+fatal_error_msgsund flash device 'micron n25q128' (ID 0x0018ba20)
flash 'jtagspi' found at 0x00000000
auto erase enabled
Info : Found flash device 'micron n25q128' (ID 0x0018ba20)
Info : Found flash device 'micron n25q128' (ID 0x0018ba20)
Info : Found flash device 'micron n25q128' (ID 0x0018ba20)
Info : sector 0 took 262 ms
Info : sector 1 took 260 ms
Info : sector 2 took 264 ms
Info : sector 3 took 271 ms
Info : sector 4 took 265 ms
Info : sector 5 took 271 ms
Info : sector 6 took 267 ms
Info : sector 7 took 267 ms
Info : sector 8 took 273 ms
Info : sector 9 took 267 ms
Info : sector 10 took 269 ms
Info : sector 11 took 263 ms
Info : sector 12 took 272 ms
Info : sector 13 took 268 ms
Info : sector 14 took 261 ms
Info : sector 15 took 263 ms
Info : sector 16 took 247 ms
Info : sector 17 took 254 ms
Info : sector 18 took 241 ms
Info : sector 19 took 244 ms
Info : sector 20 took 252 ms
Info : sector 21 took 239 ms
Info : sector 22 took 245 ms
Info : sector 23 took 237 ms
Info : sector 24 took 240 ms
Info : sector 25 took 235 ms
Info : sector 26 took 243 ms
Info : sector 27 took 239 ms
Info : sector 28 took 237 ms
Info : sector 29 took 241 ms
Info : sector 30 took 240 ms
Info : sector 31 took 236 ms
Info : sector 32 took 269 ms
Info : sector 33 took 280 ms
wrote 2228224 bytes from file /home/juser/temp/image-gateware+bios+firmware.v0.0.4-453-gfd68613.opsis.hdmi2usb.lm32.bin in 88.164253s (24.681 KiB/s)
Info : Found flash device 'micron n25q128' (ID 0x0018ba20)
read 2225228 bytes from file /home/juser/temp/image-gateware+bios+firmware.v0.0.4-453-gfd68613.opsis.hdmi2usb.lm32.bin and flash bank 0 at offset 0x00000000 in 87.488304s (24.838 KiB/s)
contents match
After flashing, the board will need to be power cycled.
Traceback (most recent call last):
  File "/home/juser/HDMI2USB-mode-switch/venv/bin/hdmi2usb-mode-switch", line 11, in <module>
    load_entry_point('hdmi2usb.modeswitch==0.0.0.post249', 'console_scripts', 'hdmi2usb-mode-switch')()
  File "/home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/modeswitch/cli.py", line 366, in main
    board, args.flash_image, verbose=args.verbose)
  File "/home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/modeswitch/boards.py", line 341, in flash_gateware
    verbose=verbose)
  File "/home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/modeswitch/boards.py", line 299, in _openocd_flash
    return _openocd_script(board, script, verbose=verbose)
  File "/home/juser/HDMI2USB-mode-switch/venv/lib/python3.6/site-packages/hdmi2usb.modeswitch-0.0.0.post249-py3.6.egg/hdmi2usb/modeswitch/boards.py", line 256, in _openocd_script
    if p.returncode == 0 and not retry_error_msgs+fatal_error_msgs:
TypeError: unsupported operand type(s) for +: 'set' and 'set'
mithro commented 5 years ago

Fixed in https://github.com/mithro/HDMI2USB-mode-switch/commit/ab8c4ae354f7d554baada275a93cfaf7744aea58