Open Workbench Logic Sniffer

model: Seeed Studio Open Workbench Logic Sniffer, OBC101E1P

hw version: 1.04

usb microcontroller: PIC18F24J50

FPGA: Xilinx Spartan-3E 250 (XC3S250E)

inputs 5 V: 16 (main header)

inputs 3.3 V: 16 (wing header)

back to microcontrollers page.

Links

Open Bench Logic Sniffer, hardware design overview, ols-fwloader,

Software

GadgetFactory: OpenBench Logic Sniffer Downloads, OLS client,

Forums

Dangerous Prototypes Open Bench Logic Sniffer,

History

2021-09-17: I re-created this page on my self-hosted web server.

2015-11-26: f22 - does ols-fwloader run?

[tingo@kg-u35jc ols-fwloader]$ src/ols_fwloader
No device specified
ols-fwloader 0.2 Copyright (C) 2011 Michal Demin
This program comes with ABSOLUTELY NO WARRANTY;
This is free software, and you are welcome to redistribute it
under certain conditions. See COPYING

ols-fwloader [-d] [-V] [-W] [-R] [-E] [-r rfile] [-w wfile] [-t type] [-v vid] [-p pid]

  -f dev  - select which device to work with (BOOT or APP)
  -V      - verify flash against wfile
  -E      - erase flash
  -W      - erase and write flash from wfile
  -R      - read flash to rfile
  -T      - reset device at the end

  -t type - File type (BIN/HEX) (default: HEX)
  -w file - file to be read and written to flash
  -r file - file where the flash content should be written to
  -d      - be verbose
BOOT only options: 
  -p pid  - Set usb PID (default: 0xfc90)
  -v vid  - Set usb VID (default: 0x04d8)
  -n      - enter bootloader first
APP only options: 
  -P port - Serial port device
  -l num  - Limit number of read/written pages to num
  -S      - run selftest

it does. Now, read current PIC firmware to a file, just so we can see which version are there

[tingo@kg-u35jc ols-fwloader]$ src/ols_fwloader -f BOOT -R -r current-pic-firmware.hex
USB Device (04d8:fc90) not found, is OLS in bootloader mode ?

ok, put it into bootloader mode first (hold UPDATE, press RESET, the ACT and PWR leds light solid).

[tingo@kg-u35jc ols-fwloader]$ sudo src/ols_fwloader -f BOOT -R -r current-pic-firmware.hex
USB Device (04d8:fc90) not found, is OLS in bootloader mode ?

didn't help, the device is still wrong:

[tingo@kg-u35jc work]$ lsusb
Bus 002 Device 004: ID 0781:5571 SanDisk Corp. Cruzer Fit
Bus 002 Device 009: ID 04d8:fc92 Microchip Technology, Inc. Open Bench Logic Sniffer
Bus 002 Device 003: ID 04fc:05da Sunplus Technology Co., Ltd 
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 0b05:1788 ASUSTek Computer, Inc. BT-270 Bluetooth Adapter
Bus 001 Device 003: ID 064e:a136 Suyin Corp. Asus Integrated Webcam [CN031B]
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

still 04d8:fc92 damn! this is hard... try the other approach

[tingo@kg-u35jc OLS_Upgrader]$ sudo ./ols-upgrader.sh
[...gui...]
./ols-upgrader.sh: linbin/ols-loader: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
./ols-upgrader.sh: ./linbin/ols-loader: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
Press any key to continue...
[...gui...]
./ols-upgrader.sh: linbin/ols-fw-update: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
Press any key to continue...

crap. Well, after fixing a few errors in the script, we go again:

[tingo@kg-u35jc OLS_Upgrader]$ sudo ./ols-upgrader.sh
ostype: linux-gnu arch: x86_64 bindir: linbin64
[...gui...]
Logic Sniffer ROM loader v0.3 (November 9, 2010)
Opening serial port '/dev/ttyACM0' @ 921600 ... OK
Found OLS HW: 1, FW: 2.3, Boot: 2
Found flash: WINBOND W25X40 
Chip erase ... done :)
Reading BIN file 'FPGAROM/logic_sniffer_3.07-Demon-Core.bit' ... OK! (binary size = 169314)
Will write 662 pages 
Page 0x0000 write ... (0x0000 0x0000)OK
Page 0x0001 write ... (0x0000 0x0001)OK
Page 0x0002 write ... (0x0000 0x0002)OK
Page 0x0003 write ... (0x0000 0x0003)OK
Page 0x0004 write ... (0x0000 0x0004)OK
Page 0x0005 write ... (0x0000 0x0005)OK
Page 0x0006 write ... (0x0000 0x0006)OK
Page 0x0007 write ... (0x0000 0x0007)OK
Page 0x0008 write ... (0x0000 0x0008)OK
Page 0x0009 write ... (0x0000 0x0009)OK
Page 0x000a write ... (0x0000 0x000a)OK
Page 0x000b write ... (0x0000 0x000b)OK
Page 0x000c write ... (0x0000 0x000c)OK
Page 0x000d write ... (0x0000 0x000d)OK
Page 0x000e write ... (0x0000 0x000e)OK
Page 0x000f write ... (0x0000 0x000f)OK
Page 0x0010 write ... (0x0000 0x0010)OK
Page 0x0011 write ... (0x0000 0x0011)OK
Page 0x0012 write ... (0x0000 0x0012)OK
Page 0x0013 write ... (0x0000 0x0013)OK
Page 0x0014 write ... (0x0000 0x0014)OK
Page 0x0015 write ... (0x0000 0x0015)OK
Page 0x0016 write ... (0x0000 0x0016)OK
Page 0x0017 write ... (0x0000 0x0017)OK
Page 0x0018 write ... (0x0000 0x0018)OK
Page 0x0019 write ... (0x0000 0x0019)OK
Page 0x001a write ... (0x0000 0x001a)OK
Page 0x001b write ... (0x0000 0x001b)OK
Page 0x001c write ... (0x0000 0x001c)OK
Page 0x001d write ... (0x0000 0x001d)OK
Page 0x001e write ... (0x0000 0x001e)OK
Page 0x001f write ... (0x0000 0x001f)OK
Page 0x0020 write ... (0x0000 0x0020)OK
Page 0x0021 write ... (0x0000 0x0021)OK
Page 0x0022 write ... (0x0000 0x0022)OK
Page 0x0023 write ... (0x0000 0x0023)OK
Page 0x0024 write ... (0x0000 0x0024)OK
Page 0x0025 write ... (0x0000 0x0025)OK
Page 0x0026 write ... (0x0000 0x0026)OK
Page 0x0027 write ... (0x0000 0x0027)OK
Page 0x0028 write ... (0x0000 0x0028)OK
Page 0x0029 write ... (0x0000 0x0029)OK
Page 0x002a write ... (0x0000 0x002a)OK
Page 0x002b write ... (0x0000 0x002b)OK
Page 0x002c write ... (0x0000 0x002c)OK
Page 0x002d write ... (0x0000 0x002d)OK
Page 0x002e write ... (0x0000 0x002e)OK
Page 0x002f write ... (0x0000 0x002f)OK
Page 0x0030 write ... (0x0000 0x0030)OK
Page 0x0031 write ... (0x0000 0x0031)OK
Page 0x0032 write ... (0x0000 0x0032)OK
Page 0x0033 write ... (0x0000 0x0033)OK
Page 0x0034 write ... (0x0000 0x0034)OK
Page 0x0035 write ... (0x0000 0x0035)OK
Page 0x0036 write ... (0x0000 0x0036)OK
Page 0x0037 write ... (0x0000 0x0037)OK
Page 0x0038 write ... (0x0000 0x0038)OK
Page 0x0039 write ... (0x0000 0x0039)OK
Page 0x003a write ... (0x0000 0x003a)OK
Page 0x003b write ... (0x0000 0x003b)OK
Page 0x003c write ... (0x0000 0x003c)OK
Page 0x003d write ... (0x0000 0x003d)OK
Page 0x003e write ... (0x0000 0x003e)OK
Page 0x003f write ... (0x0000 0x003f)OK
Page 0x0040 write ... (0x0000 0x0040)OK
Page 0x0041 write ... (0x0000 0x0041)OK
Page 0x0042 write ... (0x0000 0x0042)OK
Page 0x0043 write ... (0x0000 0x0043)OK
Page 0x0044 write ... (0x0000 0x0044)OK
Page 0x0045 write ... (0x0000 0x0045)OK
Page 0x0046 write ... (0x0000 0x0046)OK
Page 0x0047 write ... (0x0000 0x0047)OK
Page 0x0048 write ... (0x0000 0x0048)OK
Page 0x0049 write ... (0x0000 0x0049)OK
Page 0x004a write ... (0x0000 0x004a)OK
Page 0x004b write ... (0x0000 0x004b)OK
Page 0x004c write ... (0x0000 0x004c)OK
Page 0x004d write ... (0x0000 0x004d)OK
Page 0x004e write ... (0x0000 0x004e)OK
Page 0x004f write ... (0x0000 0x004f)OK
Page 0x0050 write ... (0x0000 0x0050)OK
Page 0x0051 write ... (0x0000 0x0051)OK
Page 0x0052 write ... (0x0000 0x0052)OK
Page 0x0053 write ... (0x0000 0x0053)OK
Page 0x0054 write ... (0x0000 0x0054)OK
Page 0x0055 write ... (0x0000 0x0055)OK
Page 0x0056 write ... (0x0000 0x0056)OK
Page 0x0057 write ... (0x0000 0x0057)OK
Page 0x0058 write ... (0x0000 0x0058)OK
Page 0x0059 write ... (0x0000 0x0059)OK
Page 0x005a write ... (0x0000 0x005a)OK
Page 0x005b write ... (0x0000 0x005b)OK
Page 0x005c write ... (0x0000 0x005c)OK
Page 0x005d write ... (0x0000 0x005d)OK
Page 0x005e write ... (0x0000 0x005e)OK
Page 0x005f write ... (0x0000 0x005f)OK
Page 0x0060 write ... (0x0000 0x0060)OK
Page 0x0061 write ... (0x0000 0x0061)OK
Page 0x0062 write ... (0x0000 0x0062)OK
Page 0x0063 write ... (0x0000 0x0063)OK
Page 0x0064 write ... (0x0000 0x0064)OK
Page 0x0065 write ... (0x0000 0x0065)OK
Page 0x0066 write ... (0x0000 0x0066)OK
Page 0x0067 write ... (0x0000 0x0067)OK
Page 0x0068 write ... (0x0000 0x0068)OK
Page 0x0069 write ... (0x0000 0x0069)OK
Page 0x006a write ... (0x0000 0x006a)OK
Page 0x006b write ... (0x0000 0x006b)OK
Page 0x006c write ... (0x0000 0x006c)OK
Page 0x006d write ... (0x0000 0x006d)OK
Page 0x006e write ... (0x0000 0x006e)OK
Page 0x006f write ... (0x0000 0x006f)OK
Page 0x0070 write ... (0x0000 0x0070)OK
Page 0x0071 write ... (0x0000 0x0071)OK
Page 0x0072 write ... (0x0000 0x0072)OK
Page 0x0073 write ... (0x0000 0x0073)OK
Page 0x0074 write ... (0x0000 0x0074)OK
Page 0x0075 write ... (0x0000 0x0075)OK
Page 0x0076 write ... (0x0000 0x0076)OK
Page 0x0077 write ... (0x0000 0x0077)OK
Page 0x0078 write ... (0x0000 0x0078)OK
Page 0x0079 write ... (0x0000 0x0079)OK
Page 0x007a write ... (0x0000 0x007a)OK
Page 0x007b write ... (0x0000 0x007b)OK
Page 0x007c write ... (0x0000 0x007c)OK
Page 0x007d write ... (0x0000 0x007d)OK
Page 0x007e write ... (0x0000 0x007e)OK
Page 0x007f write ... (0x0000 0x007f)OK
Page 0x0080 write ... (0x0000 0x0080)OK
Page 0x0081 write ... (0x0000 0x0081)OK
Page 0x0082 write ... (0x0000 0x0082)OK
Page 0x0083 write ... (0x0000 0x0083)OK
Page 0x0084 write ... (0x0000 0x0084)OK
Page 0x0085 write ... (0x0000 0x0085)OK
Page 0x0086 write ... (0x0000 0x0086)OK
Page 0x0087 write ... (0x0000 0x0087)OK
Page 0x0088 write ... (0x0000 0x0088)OK
Page 0x0089 write ... (0x0000 0x0089)OK
Page 0x008a write ... (0x0000 0x008a)OK
Page 0x008b write ... (0x0000 0x008b)OK
Page 0x008c write ... (0x0000 0x008c)OK
Page 0x008d write ... (0x0000 0x008d)OK
Page 0x008e write ... (0x0000 0x008e)OK
Page 0x008f write ... (0x0000 0x008f)OK
Page 0x0090 write ... (0x0000 0x0090)OK
Page 0x0091 write ... (0x0000 0x0091)OK
Page 0x0092 write ... (0x0000 0x0092)OK
Page 0x0093 write ... (0x0000 0x0093)OK
Page 0x0094 write ... (0x0000 0x0094)OK
Page 0x0095 write ... (0x0000 0x0095)OK
Page 0x0096 write ... (0x0000 0x0096)OK
Page 0x0097 write ... (0x0000 0x0097)OK
Page 0x0098 write ... (0x0000 0x0098)OK
Page 0x0099 write ... (0x0000 0x0099)OK
Page 0x009a write ... (0x0000 0x009a)OK
Page 0x009b write ... (0x0000 0x009b)OK
Page 0x009c write ... (0x0000 0x009c)OK
Page 0x009d write ... (0x0000 0x009d)OK
Page 0x009e write ... (0x0000 0x009e)OK
Page 0x009f write ... (0x0000 0x009f)OK
Page 0x00a0 write ... (0x0000 0x00a0)OK
Page 0x00a1 write ... (0x0000 0x00a1)OK
Page 0x00a2 write ... (0x0000 0x00a2)OK
Page 0x00a3 write ... (0x0000 0x00a3)OK
Page 0x00a4 write ... (0x0000 0x00a4)OK
Page 0x00a5 write ... (0x0000 0x00a5)OK
Page 0x00a6 write ... (0x0000 0x00a6)OK
Page 0x00a7 write ... (0x0000 0x00a7)OK
Page 0x00a8 write ... (0x0000 0x00a8)OK
Page 0x00a9 write ... (0x0000 0x00a9)OK
Page 0x00aa write ... (0x0000 0x00aa)OK
Page 0x00ab write ... (0x0000 0x00ab)OK
Page 0x00ac write ... (0x0000 0x00ac)OK
Page 0x00ad write ... (0x0000 0x00ad)OK
Page 0x00ae write ... (0x0000 0x00ae)OK
Page 0x00af write ... (0x0000 0x00af)OK
Page 0x00b0 write ... (0x0000 0x00b0)OK
Page 0x00b1 write ... (0x0000 0x00b1)OK
Page 0x00b2 write ... (0x0000 0x00b2)OK
Page 0x00b3 write ... (0x0000 0x00b3)OK
Page 0x00b4 write ... (0x0000 0x00b4)OK
Page 0x00b5 write ... (0x0000 0x00b5)OK
Page 0x00b6 write ... (0x0000 0x00b6)OK
Page 0x00b7 write ... (0x0000 0x00b7)OK
Page 0x00b8 write ... (0x0000 0x00b8)OK
Page 0x00b9 write ... (0x0000 0x00b9)OK
Page 0x00ba write ... (0x0000 0x00ba)OK
Page 0x00bb write ... (0x0000 0x00bb)OK
Page 0x00bc write ... (0x0000 0x00bc)OK
Page 0x00bd write ... (0x0000 0x00bd)OK
Page 0x00be write ... (0x0000 0x00be)OK
Page 0x00bf write ... (0x0000 0x00bf)OK
Page 0x00c0 write ... (0x0000 0x00c0)OK
Page 0x00c1 write ... (0x0000 0x00c1)OK
Page 0x00c2 write ... (0x0000 0x00c2)OK
Page 0x00c3 write ... (0x0000 0x00c3)OK
Page 0x00c4 write ... (0x0000 0x00c4)OK
Page 0x00c5 write ... (0x0000 0x00c5)OK
Page 0x00c6 write ... (0x0000 0x00c6)OK
Page 0x00c7 write ... (0x0000 0x00c7)OK
Page 0x00c8 write ... (0x0000 0x00c8)OK
Page 0x00c9 write ... (0x0000 0x00c9)OK
Page 0x00ca write ... (0x0000 0x00ca)OK
Page 0x00cb write ... (0x0000 0x00cb)OK
Page 0x00cc write ... (0x0000 0x00cc)OK
Page 0x00cd write ... (0x0000 0x00cd)OK
Page 0x00ce write ... (0x0000 0x00ce)OK
Page 0x00cf write ... (0x0000 0x00cf)OK
Page 0x00d0 write ... (0x0000 0x00d0)OK
Page 0x00d1 write ... (0x0000 0x00d1)OK
Page 0x00d2 write ... (0x0000 0x00d2)OK
Page 0x00d3 write ... (0x0000 0x00d3)OK
Page 0x00d4 write ... (0x0000 0x00d4)OK
Page 0x00d5 write ... (0x0000 0x00d5)OK
Page 0x00d6 write ... (0x0000 0x00d6)OK
Page 0x00d7 write ... (0x0000 0x00d7)OK
Page 0x00d8 write ... (0x0000 0x00d8)OK
Page 0x00d9 write ... (0x0000 0x00d9)OK
Page 0x00da write ... (0x0000 0x00da)OK
Page 0x00db write ... (0x0000 0x00db)OK
Page 0x00dc write ... (0x0000 0x00dc)OK
Page 0x00dd write ... (0x0000 0x00dd)OK
Page 0x00de write ... (0x0000 0x00de)OK
Page 0x00df write ... (0x0000 0x00df)OK
Page 0x00e0 write ... (0x0000 0x00e0)OK
Page 0x00e1 write ... (0x0000 0x00e1)OK
Page 0x00e2 write ... (0x0000 0x00e2)OK
Page 0x00e3 write ... (0x0000 0x00e3)OK
Page 0x00e4 write ... (0x0000 0x00e4)OK
Page 0x00e5 write ... (0x0000 0x00e5)OK
Page 0x00e6 write ... (0x0000 0x00e6)OK
Page 0x00e7 write ... (0x0000 0x00e7)OK
Page 0x00e8 write ... (0x0000 0x00e8)OK
Page 0x00e9 write ... (0x0000 0x00e9)OK
Page 0x00ea write ... (0x0000 0x00ea)OK
Page 0x00eb write ... (0x0000 0x00eb)OK
Page 0x00ec write ... (0x0000 0x00ec)OK
Page 0x00ed write ... (0x0000 0x00ed)OK
Page 0x00ee write ... (0x0000 0x00ee)OK
Page 0x00ef write ... (0x0000 0x00ef)OK
Page 0x00f0 write ... (0x0000 0x00f0)OK
Page 0x00f1 write ... (0x0000 0x00f1)OK
Page 0x00f2 write ... (0x0000 0x00f2)OK
Page 0x00f3 write ... (0x0000 0x00f3)OK
Page 0x00f4 write ... (0x0000 0x00f4)OK
Page 0x00f5 write ... (0x0000 0x00f5)OK
Page 0x00f6 write ... (0x0000 0x00f6)OK
Page 0x00f7 write ... (0x0000 0x00f7)OK
Page 0x00f8 write ... (0x0000 0x00f8)OK
Page 0x00f9 write ... (0x0000 0x00f9)OK
Page 0x00fa write ... (0x0000 0x00fa)OK
Page 0x00fb write ... (0x0000 0x00fb)OK
Page 0x00fc write ... (0x0000 0x00fc)OK
Page 0x00fd write ... (0x0000 0x00fd)OK
Page 0x00fe write ... (0x0000 0x00fe)OK
Page 0x00ff write ... (0x0000 0x00ff)OK
Page 0x0100 write ... (0x0001 0x0000)OK
Page 0x0101 write ... (0x0001 0x0001)OK
Page 0x0102 write ... (0x0001 0x0002)OK
Page 0x0103 write ... (0x0001 0x0003)OK
Page 0x0104 write ... (0x0001 0x0004)OK
Page 0x0105 write ... (0x0001 0x0005)OK
Page 0x0106 write ... (0x0001 0x0006)OK
Page 0x0107 write ... (0x0001 0x0007)OK
Page 0x0108 write ... (0x0001 0x0008)OK
Page 0x0109 write ... (0x0001 0x0009)OK
Page 0x010a write ... (0x0001 0x000a)OK
Page 0x010b write ... (0x0001 0x000b)OK
Page 0x010c write ... (0x0001 0x000c)OK
Page 0x010d write ... (0x0001 0x000d)OK
Page 0x010e write ... (0x0001 0x000e)OK
Page 0x010f write ... (0x0001 0x000f)OK
Page 0x0110 write ... (0x0001 0x0010)OK
Page 0x0111 write ... (0x0001 0x0011)OK
Page 0x0112 write ... (0x0001 0x0012)OK
Page 0x0113 write ... (0x0001 0x0013)OK
Page 0x0114 write ... (0x0001 0x0014)OK
Page 0x0115 write ... (0x0001 0x0015)OK
Page 0x0116 write ... (0x0001 0x0016)OK
Page 0x0117 write ... (0x0001 0x0017)OK
Page 0x0118 write ... (0x0001 0x0018)OK
Page 0x0119 write ... (0x0001 0x0019)OK
Page 0x011a write ... (0x0001 0x001a)OK
Page 0x011b write ... (0x0001 0x001b)OK
Page 0x011c write ... (0x0001 0x001c)OK
Page 0x011d write ... (0x0001 0x001d)OK
Page 0x011e write ... (0x0001 0x001e)OK
Page 0x011f write ... (0x0001 0x001f)OK
Page 0x0120 write ... (0x0001 0x0020)OK
Page 0x0121 write ... (0x0001 0x0021)OK
Page 0x0122 write ... (0x0001 0x0022)OK
Page 0x0123 write ... (0x0001 0x0023)OK
Page 0x0124 write ... (0x0001 0x0024)OK
Page 0x0125 write ... (0x0001 0x0025)OK
Page 0x0126 write ... (0x0001 0x0026)OK
Page 0x0127 write ... (0x0001 0x0027)OK
Page 0x0128 write ... (0x0001 0x0028)OK
Page 0x0129 write ... (0x0001 0x0029)OK
Page 0x012a write ... (0x0001 0x002a)OK
Page 0x012b write ... (0x0001 0x002b)OK
Page 0x012c write ... (0x0001 0x002c)OK
Page 0x012d write ... (0x0001 0x002d)OK
Page 0x012e write ... (0x0001 0x002e)OK
Page 0x012f write ... (0x0001 0x002f)OK
Page 0x0130 write ... (0x0001 0x0030)OK
Page 0x0131 write ... (0x0001 0x0031)OK
Page 0x0132 write ... (0x0001 0x0032)OK
Page 0x0133 write ... (0x0001 0x0033)OK
Page 0x0134 write ... (0x0001 0x0034)OK
Page 0x0135 write ... (0x0001 0x0035)OK
Page 0x0136 write ... (0x0001 0x0036)OK
Page 0x0137 write ... (0x0001 0x0037)OK
Page 0x0138 write ... (0x0001 0x0038)OK
Page 0x0139 write ... (0x0001 0x0039)OK
Page 0x013a write ... (0x0001 0x003a)OK
Page 0x013b write ... (0x0001 0x003b)OK
Page 0x013c write ... (0x0001 0x003c)OK
Page 0x013d write ... (0x0001 0x003d)OK
Page 0x013e write ... (0x0001 0x003e)OK
Page 0x013f write ... (0x0001 0x003f)OK
Page 0x0140 write ... (0x0001 0x0040)OK
Page 0x0141 write ... (0x0001 0x0041)OK
Page 0x0142 write ... (0x0001 0x0042)OK
Page 0x0143 write ... (0x0001 0x0043)OK
Page 0x0144 write ... (0x0001 0x0044)OK
Page 0x0145 write ... (0x0001 0x0045)OK
Page 0x0146 write ... (0x0001 0x0046)OK
Page 0x0147 write ... (0x0001 0x0047)OK
Page 0x0148 write ... (0x0001 0x0048)OK
Page 0x0149 write ... (0x0001 0x0049)OK
Page 0x014a write ... (0x0001 0x004a)OK
Page 0x014b write ... (0x0001 0x004b)OK
Page 0x014c write ... (0x0001 0x004c)OK
Page 0x014d write ... (0x0001 0x004d)OK
Page 0x014e write ... (0x0001 0x004e)OK
Page 0x014f write ... (0x0001 0x004f)OK
Page 0x0150 write ... (0x0001 0x0050)OK
Page 0x0151 write ... (0x0001 0x0051)OK
Page 0x0152 write ... (0x0001 0x0052)OK
Page 0x0153 write ... (0x0001 0x0053)OK
Page 0x0154 write ... (0x0001 0x0054)OK
Page 0x0155 write ... (0x0001 0x0055)OK
Page 0x0156 write ... (0x0001 0x0056)OK
Page 0x0157 write ... (0x0001 0x0057)OK
Page 0x0158 write ... (0x0001 0x0058)OK
Page 0x0159 write ... (0x0001 0x0059)OK
Page 0x015a write ... (0x0001 0x005a)OK
Page 0x015b write ... (0x0001 0x005b)OK
Page 0x015c write ... (0x0001 0x005c)OK
Page 0x015d write ... (0x0001 0x005d)OK
Page 0x015e write ... (0x0001 0x005e)OK
Page 0x015f write ... (0x0001 0x005f)OK
Page 0x0160 write ... (0x0001 0x0060)OK
Page 0x0161 write ... (0x0001 0x0061)OK
Page 0x0162 write ... (0x0001 0x0062)OK
Page 0x0163 write ... (0x0001 0x0063)OK
Page 0x0164 write ... (0x0001 0x0064)OK
Page 0x0165 write ... (0x0001 0x0065)OK
Page 0x0166 write ... (0x0001 0x0066)OK
Page 0x0167 write ... (0x0001 0x0067)OK
Page 0x0168 write ... (0x0001 0x0068)OK
Page 0x0169 write ... (0x0001 0x0069)OK
Page 0x016a write ... (0x0001 0x006a)OK
Page 0x016b write ... (0x0001 0x006b)OK
Page 0x016c write ... (0x0001 0x006c)OK
Page 0x016d write ... (0x0001 0x006d)OK
Page 0x016e write ... (0x0001 0x006e)OK
Page 0x016f write ... (0x0001 0x006f)OK
Page 0x0170 write ... (0x0001 0x0070)OK
Page 0x0171 write ... (0x0001 0x0071)OK
Page 0x0172 write ... (0x0001 0x0072)OK
Page 0x0173 write ... (0x0001 0x0073)OK
Page 0x0174 write ... (0x0001 0x0074)OK
Page 0x0175 write ... (0x0001 0x0075)OK
Page 0x0176 write ... (0x0001 0x0076)OK
Page 0x0177 write ... (0x0001 0x0077)OK
Page 0x0178 write ... (0x0001 0x0078)OK
Page 0x0179 write ... (0x0001 0x0079)OK
Page 0x017a write ... (0x0001 0x007a)OK
Page 0x017b write ... (0x0001 0x007b)OK
Page 0x017c write ... (0x0001 0x007c)OK
Page 0x017d write ... (0x0001 0x007d)OK
Page 0x017e write ... (0x0001 0x007e)OK
Page 0x017f write ... (0x0001 0x007f)OK
Page 0x0180 write ... (0x0001 0x0080)OK
Page 0x0181 write ... (0x0001 0x0081)OK
Page 0x0182 write ... (0x0001 0x0082)OK
Page 0x0183 write ... (0x0001 0x0083)OK
Page 0x0184 write ... (0x0001 0x0084)OK
Page 0x0185 write ... (0x0001 0x0085)OK
Page 0x0186 write ... (0x0001 0x0086)OK
Page 0x0187 write ... (0x0001 0x0087)OK
Page 0x0188 write ... (0x0001 0x0088)OK
Page 0x0189 write ... (0x0001 0x0089)OK
Page 0x018a write ... (0x0001 0x008a)OK
Page 0x018b write ... (0x0001 0x008b)OK
Page 0x018c write ... (0x0001 0x008c)OK
Page 0x018d write ... (0x0001 0x008d)OK
Page 0x018e write ... (0x0001 0x008e)OK
Page 0x018f write ... (0x0001 0x008f)OK
Page 0x0190 write ... (0x0001 0x0090)OK
Page 0x0191 write ... (0x0001 0x0091)OK
Page 0x0192 write ... (0x0001 0x0092)OK
Page 0x0193 write ... (0x0001 0x0093)OK
Page 0x0194 write ... (0x0001 0x0094)OK
Page 0x0195 write ... (0x0001 0x0095)OK
Page 0x0196 write ... (0x0001 0x0096)OK
Page 0x0197 write ... (0x0001 0x0097)OK
Page 0x0198 write ... (0x0001 0x0098)OK
Page 0x0199 write ... (0x0001 0x0099)OK
Page 0x019a write ... (0x0001 0x009a)OK
Page 0x019b write ... (0x0001 0x009b)OK
Page 0x019c write ... (0x0001 0x009c)OK
Page 0x019d write ... (0x0001 0x009d)OK
Page 0x019e write ... (0x0001 0x009e)OK
Page 0x019f write ... (0x0001 0x009f)OK
Page 0x01a0 write ... (0x0001 0x00a0)OK
Page 0x01a1 write ... (0x0001 0x00a1)OK
Page 0x01a2 write ... (0x0001 0x00a2)OK
Page 0x01a3 write ... (0x0001 0x00a3)OK
Page 0x01a4 write ... (0x0001 0x00a4)OK
Page 0x01a5 write ... (0x0001 0x00a5)OK
Page 0x01a6 write ... (0x0001 0x00a6)OK
Page 0x01a7 write ... (0x0001 0x00a7)OK
Page 0x01a8 write ... (0x0001 0x00a8)OK
Page 0x01a9 write ... (0x0001 0x00a9)OK
Page 0x01aa write ... (0x0001 0x00aa)OK
Page 0x01ab write ... (0x0001 0x00ab)OK
Page 0x01ac write ... (0x0001 0x00ac)OK
Page 0x01ad write ... (0x0001 0x00ad)OK
Page 0x01ae write ... (0x0001 0x00ae)OK
Page 0x01af write ... (0x0001 0x00af)OK
Page 0x01b0 write ... (0x0001 0x00b0)OK
Page 0x01b1 write ... (0x0001 0x00b1)OK
Page 0x01b2 write ... (0x0001 0x00b2)OK
Page 0x01b3 write ... (0x0001 0x00b3)OK
Page 0x01b4 write ... (0x0001 0x00b4)OK
Page 0x01b5 write ... (0x0001 0x00b5)OK
Page 0x01b6 write ... (0x0001 0x00b6)OK
Page 0x01b7 write ... (0x0001 0x00b7)OK
Page 0x01b8 write ... (0x0001 0x00b8)OK
Page 0x01b9 write ... (0x0001 0x00b9)OK
Page 0x01ba write ... (0x0001 0x00ba)OK
Page 0x01bb write ... (0x0001 0x00bb)OK
Page 0x01bc write ... (0x0001 0x00bc)OK
Page 0x01bd write ... (0x0001 0x00bd)OK
Page 0x01be write ... (0x0001 0x00be)OK
Page 0x01bf write ... (0x0001 0x00bf)OK
Page 0x01c0 write ... (0x0001 0x00c0)OK
Page 0x01c1 write ... (0x0001 0x00c1)OK
Page 0x01c2 write ... (0x0001 0x00c2)OK
Page 0x01c3 write ... (0x0001 0x00c3)OK
Page 0x01c4 write ... (0x0001 0x00c4)OK
Page 0x01c5 write ... (0x0001 0x00c5)OK
Page 0x01c6 write ... (0x0001 0x00c6)OK
Page 0x01c7 write ... (0x0001 0x00c7)OK
Page 0x01c8 write ... (0x0001 0x00c8)OK
Page 0x01c9 write ... (0x0001 0x00c9)OK
Page 0x01ca write ... (0x0001 0x00ca)OK
Page 0x01cb write ... (0x0001 0x00cb)OK
Page 0x01cc write ... (0x0001 0x00cc)OK
Page 0x01cd write ... (0x0001 0x00cd)OK
Page 0x01ce write ... (0x0001 0x00ce)OK
Page 0x01cf write ... (0x0001 0x00cf)OK
Page 0x01d0 write ... (0x0001 0x00d0)OK
Page 0x01d1 write ... (0x0001 0x00d1)OK
Page 0x01d2 write ... (0x0001 0x00d2)OK
Page 0x01d3 write ... (0x0001 0x00d3)OK
Page 0x01d4 write ... (0x0001 0x00d4)OK
Page 0x01d5 write ... (0x0001 0x00d5)OK
Page 0x01d6 write ... (0x0001 0x00d6)OK
Page 0x01d7 write ... (0x0001 0x00d7)OK
Page 0x01d8 write ... (0x0001 0x00d8)OK
Page 0x01d9 write ... (0x0001 0x00d9)OK
Page 0x01da write ... (0x0001 0x00da)OK
Page 0x01db write ... (0x0001 0x00db)OK
Page 0x01dc write ... (0x0001 0x00dc)OK
Page 0x01dd write ... (0x0001 0x00dd)OK
Page 0x01de write ... (0x0001 0x00de)OK
Page 0x01df write ... (0x0001 0x00df)OK
Page 0x01e0 write ... (0x0001 0x00e0)OK
Page 0x01e1 write ... (0x0001 0x00e1)OK
Page 0x01e2 write ... (0x0001 0x00e2)OK
Page 0x01e3 write ... (0x0001 0x00e3)OK
Page 0x01e4 write ... (0x0001 0x00e4)OK
Page 0x01e5 write ... (0x0001 0x00e5)OK
Page 0x01e6 write ... (0x0001 0x00e6)OK
Page 0x01e7 write ... (0x0001 0x00e7)OK
Page 0x01e8 write ... (0x0001 0x00e8)OK
Page 0x01e9 write ... (0x0001 0x00e9)OK
Page 0x01ea write ... (0x0001 0x00ea)OK
Page 0x01eb write ... (0x0001 0x00eb)OK
Page 0x01ec write ... (0x0001 0x00ec)OK
Page 0x01ed write ... (0x0001 0x00ed)OK
Page 0x01ee write ... (0x0001 0x00ee)OK
Page 0x01ef write ... (0x0001 0x00ef)OK
Page 0x01f0 write ... (0x0001 0x00f0)OK
Page 0x01f1 write ... (0x0001 0x00f1)OK
Page 0x01f2 write ... (0x0001 0x00f2)OK
Page 0x01f3 write ... (0x0001 0x00f3)OK
Page 0x01f4 write ... (0x0001 0x00f4)OK
Page 0x01f5 write ... (0x0001 0x00f5)OK
Page 0x01f6 write ... (0x0001 0x00f6)OK
Page 0x01f7 write ... (0x0001 0x00f7)OK
Page 0x01f8 write ... (0x0001 0x00f8)OK
Page 0x01f9 write ... (0x0001 0x00f9)OK
Page 0x01fa write ... (0x0001 0x00fa)OK
Page 0x01fb write ... (0x0001 0x00fb)OK
Page 0x01fc write ... (0x0001 0x00fc)OK
Page 0x01fd write ... (0x0001 0x00fd)OK
Page 0x01fe write ... (0x0001 0x00fe)OK
Page 0x01ff write ... (0x0001 0x00ff)OK
Page 0x0200 write ... (0x0002 0x0000)OK
Page 0x0201 write ... (0x0002 0x0001)OK
Page 0x0202 write ... (0x0002 0x0002)OK
Page 0x0203 write ... (0x0002 0x0003)OK
Page 0x0204 write ... (0x0002 0x0004)OK
Page 0x0205 write ... (0x0002 0x0005)OK
Page 0x0206 write ... (0x0002 0x0006)OK
Page 0x0207 write ... (0x0002 0x0007)OK
Page 0x0208 write ... (0x0002 0x0008)OK
Page 0x0209 write ... (0x0002 0x0009)OK
Page 0x020a write ... (0x0002 0x000a)OK
Page 0x020b write ... (0x0002 0x000b)OK
Page 0x020c write ... (0x0002 0x000c)OK
Page 0x020d write ... (0x0002 0x000d)OK
Page 0x020e write ... (0x0002 0x000e)OK
Page 0x020f write ... (0x0002 0x000f)OK
Page 0x0210 write ... (0x0002 0x0010)OK
Page 0x0211 write ... (0x0002 0x0011)OK
Page 0x0212 write ... (0x0002 0x0012)OK
Page 0x0213 write ... (0x0002 0x0013)OK
Page 0x0214 write ... (0x0002 0x0014)OK
Page 0x0215 write ... (0x0002 0x0015)OK
Page 0x0216 write ... (0x0002 0x0016)OK
Page 0x0217 write ... (0x0002 0x0017)OK
Page 0x0218 write ... (0x0002 0x0018)OK
Page 0x0219 write ... (0x0002 0x0019)OK
Page 0x021a write ... (0x0002 0x001a)OK
Page 0x021b write ... (0x0002 0x001b)OK
Page 0x021c write ... (0x0002 0x001c)OK
Page 0x021d write ... (0x0002 0x001d)OK
Page 0x021e write ... (0x0002 0x001e)OK
Page 0x021f write ... (0x0002 0x001f)OK
Page 0x0220 write ... (0x0002 0x0020)OK
Page 0x0221 write ... (0x0002 0x0021)OK
Page 0x0222 write ... (0x0002 0x0022)OK
Page 0x0223 write ... (0x0002 0x0023)OK
Page 0x0224 write ... (0x0002 0x0024)OK
Page 0x0225 write ... (0x0002 0x0025)OK
Page 0x0226 write ... (0x0002 0x0026)OK
Page 0x0227 write ... (0x0002 0x0027)OK
Page 0x0228 write ... (0x0002 0x0028)OK
Page 0x0229 write ... (0x0002 0x0029)OK
Page 0x022a write ... (0x0002 0x002a)OK
Page 0x022b write ... (0x0002 0x002b)OK
Page 0x022c write ... (0x0002 0x002c)OK
Page 0x022d write ... (0x0002 0x002d)OK
Page 0x022e write ... (0x0002 0x002e)OK
Page 0x022f write ... (0x0002 0x002f)OK
Page 0x0230 write ... (0x0002 0x0030)OK
Page 0x0231 write ... (0x0002 0x0031)OK
Page 0x0232 write ... (0x0002 0x0032)OK
Page 0x0233 write ... (0x0002 0x0033)OK
Page 0x0234 write ... (0x0002 0x0034)OK
Page 0x0235 write ... (0x0002 0x0035)OK
Page 0x0236 write ... (0x0002 0x0036)OK
Page 0x0237 write ... (0x0002 0x0037)OK
Page 0x0238 write ... (0x0002 0x0038)OK
Page 0x0239 write ... (0x0002 0x0039)OK
Page 0x023a write ... (0x0002 0x003a)OK
Page 0x023b write ... (0x0002 0x003b)OK
Page 0x023c write ... (0x0002 0x003c)OK
Page 0x023d write ... (0x0002 0x003d)OK
Page 0x023e write ... (0x0002 0x003e)OK
Page 0x023f write ... (0x0002 0x003f)OK
Page 0x0240 write ... (0x0002 0x0040)OK
Page 0x0241 write ... (0x0002 0x0041)OK
Page 0x0242 write ... (0x0002 0x0042)OK
Page 0x0243 write ... (0x0002 0x0043)OK
Page 0x0244 write ... (0x0002 0x0044)OK
Page 0x0245 write ... (0x0002 0x0045)OK
Page 0x0246 write ... (0x0002 0x0046)OK
Page 0x0247 write ... (0x0002 0x0047)OK
Page 0x0248 write ... (0x0002 0x0048)OK
Page 0x0249 write ... (0x0002 0x0049)OK
Page 0x024a write ... (0x0002 0x004a)OK
Page 0x024b write ... (0x0002 0x004b)OK
Page 0x024c write ... (0x0002 0x004c)OK
Page 0x024d write ... (0x0002 0x004d)OK
Page 0x024e write ... (0x0002 0x004e)OK
Page 0x024f write ... (0x0002 0x004f)OK
Page 0x0250 write ... (0x0002 0x0050)OK
Page 0x0251 write ... (0x0002 0x0051)OK
Page 0x0252 write ... (0x0002 0x0052)OK
Page 0x0253 write ... (0x0002 0x0053)OK
Page 0x0254 write ... (0x0002 0x0054)OK
Page 0x0255 write ... (0x0002 0x0055)OK
Page 0x0256 write ... (0x0002 0x0056)OK
Page 0x0257 write ... (0x0002 0x0057)OK
Page 0x0258 write ... (0x0002 0x0058)OK
Page 0x0259 write ... (0x0002 0x0059)OK
Page 0x025a write ... (0x0002 0x005a)OK
Page 0x025b write ... (0x0002 0x005b)OK
Page 0x025c write ... (0x0002 0x005c)OK
Page 0x025d write ... (0x0002 0x005d)OK
Page 0x025e write ... (0x0002 0x005e)OK
Page 0x025f write ... (0x0002 0x005f)OK
Page 0x0260 write ... (0x0002 0x0060)OK
Page 0x0261 write ... (0x0002 0x0061)OK
Page 0x0262 write ... (0x0002 0x0062)OK
Page 0x0263 write ... (0x0002 0x0063)OK
Page 0x0264 write ... (0x0002 0x0064)OK
Page 0x0265 write ... (0x0002 0x0065)OK
Page 0x0266 write ... (0x0002 0x0066)OK
Page 0x0267 write ... (0x0002 0x0067)OK
Page 0x0268 write ... (0x0002 0x0068)OK
Page 0x0269 write ... (0x0002 0x0069)OK
Page 0x026a write ... (0x0002 0x006a)OK
Page 0x026b write ... (0x0002 0x006b)OK
Page 0x026c write ... (0x0002 0x006c)OK
Page 0x026d write ... (0x0002 0x006d)OK
Page 0x026e write ... (0x0002 0x006e)OK
Page 0x026f write ... (0x0002 0x006f)OK
Page 0x0270 write ... (0x0002 0x0070)OK
Page 0x0271 write ... (0x0002 0x0071)OK
Page 0x0272 write ... (0x0002 0x0072)OK
Page 0x0273 write ... (0x0002 0x0073)OK
Page 0x0274 write ... (0x0002 0x0074)OK
Page 0x0275 write ... (0x0002 0x0075)OK
Page 0x0276 write ... (0x0002 0x0076)OK
Page 0x0277 write ... (0x0002 0x0077)OK
Page 0x0278 write ... (0x0002 0x0078)OK
Page 0x0279 write ... (0x0002 0x0079)OK
Page 0x027a write ... (0x0002 0x007a)OK
Page 0x027b write ... (0x0002 0x007b)OK
Page 0x027c write ... (0x0002 0x007c)OK
Page 0x027d write ... (0x0002 0x007d)OK
Page 0x027e write ... (0x0002 0x007e)OK
Page 0x027f write ... (0x0002 0x007f)OK
Page 0x0280 write ... (0x0002 0x0080)OK
Page 0x0281 write ... (0x0002 0x0081)OK
Page 0x0282 write ... (0x0002 0x0082)OK
Page 0x0283 write ... (0x0002 0x0083)OK
Page 0x0284 write ... (0x0002 0x0084)OK
Page 0x0285 write ... (0x0002 0x0085)OK
Page 0x0286 write ... (0x0002 0x0086)OK
Page 0x0287 write ... (0x0002 0x0087)OK
Page 0x0288 write ... (0x0002 0x0088)OK
Page 0x0289 write ... (0x0002 0x0089)OK
Page 0x028a write ... (0x0002 0x008a)OK
Page 0x028b write ... (0x0002 0x008b)OK
Page 0x028c write ... (0x0002 0x008c)OK
Page 0x028d write ... (0x0002 0x008d)OK
Page 0x028e write ... (0x0002 0x008e)OK
Page 0x028f write ... (0x0002 0x008f)OK
Page 0x0290 write ... (0x0002 0x0090)OK
Page 0x0291 write ... (0x0002 0x0091)OK
Page 0x0292 write ... (0x0002 0x0092)OK
Page 0x0293 write ... (0x0002 0x0093)OK
Page 0x0294 write ... (0x0002 0x0094)OK
Page 0x0295 write ... (0x0002 0x0095)OK
Logic Sniffer ROM loader v0.3 (November 9, 2010)
Opening serial port '/dev/ttyACM0' @ 921600 ... OK
Found OLS HW: 1, FW: 2.3, Boot: 2
Found flash: WINBOND W25X40 
OLS switched to bootloader mode
Press any key to continue...
[...gui...]
U2IO flash erasing: DONE.
U2IO flash programming: DONE.
RESET Device
./ols-upgrader.sh: line 78:  5806 Segmentation fault      (core dumped) ols-fw-update -e -w -m flash -vid 0x04D8 -pid 0xFC90 -ix $firmwaredir`cat $outfile`
Press any key to continue...

Hmm, did that work? Run a status

[tingo@kg-u35jc OLS_Upgrader]$ sudo linbin64/ols-loader -status -p:/dev/ttyACM0
Logic Sniffer ROM loader v0.3 (November 9, 2010)
Opening serial port '/dev/ttyACM0' @ 921600 ... OK
Found OLS HW: 1, FW: 3.0, Boot: 2
Found flash: WINBOND W25X40 
OLS status: 00

what is status 00? selftest

[tingo@kg-u35jc OLS_Upgrader]$ sudo linbin64/ols-loader -selftest -p:/dev/ttyACM0
[sudo] password for tingo: 
Logic Sniffer ROM loader v0.3 (November 9, 2010)
Opening serial port '/dev/ttyACM0' @ 921600 ... OK
Found OLS HW: 1, FW: 3.0, Boot: 2
Found flash: WINBOND W25X40 
done...
Passed self-test :) 

ok.

2015-11-25: f22 - let me try ols-fwloader under Fedora 22:

[tingo@kg-u35jc work]$ mkdir owls
[tingo@kg-u35jc work]$ cd owls
[tingo@kg-u35jc owls]$ git clone https://github.com/robots/ols-fwloader.git
Cloning into 'ols-fwloader'...
remote: Counting objects: 219, done.
remote: Total 219 (delta 0), reused 0 (delta 0), pack-reused 219
Receiving objects: 100% (219/219), 70.30 KiB | 0 bytes/s, done.
Resolving deltas: 100% (128/128), done.
Checking connectivity... done.

that was the source, now the rest.

[tingo@kg-u35jc owls]$ cd ols-fwloader/
[tingo@kg-u35jc ols-fwloader]$ autoreconf --install
configure.ac:12: installing './compile'
configure.ac:2: installing './install-sh'
configure.ac:2: installing './missing'
src/Makefile.am: installing './depcomp'

ok, now configure

[tingo@kg-u35jc ols-fwloader]$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking dependency style of gcc... (cached) gcc3
./configure: line 4016: LT_INIT: command not found
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for libusb... no
checking for libusb-config... no
checking libusb.h usability... no
checking libusb.h presence... no
checking for libusb.h... no
configure: error: The libusb headers are missing

what, no libusb either? install libusb

[tingo@kg-u35jc work]$ sudo dnf install libusb libusb-devel
Last metadata expiration check performed 0:32:53 ago on Wed Nov 25 23:53:50 2015.
Package libusb-1:0.1.5-5.fc22.x86_64 is already installed, skipping.
Dependencies resolved.
===============================================================================================================
 Package                      Arch                  Version                        Repository             Size
===============================================================================================================
Installing:
 libusb-devel                 x86_64                1:0.1.5-5.fc22                 fedora                 19 k
 libusbx-devel                x86_64                1.0.19-2.fc22                  fedora                 26 k

Transaction Summary
===============================================================================================================
Install  2 Packages

Total download size: 45 k
Installed size: 79 k
Is this ok [y/N]: y
Downloading Packages:
(1/2): libusb-devel-0.1.5-5.fc22.x86_64.rpm                                     95 kB/s |  19 kB     00:00    
(2/2): libusbx-devel-1.0.19-2.fc22.x86_64.rpm                                  121 kB/s |  26 kB     00:00    
---------------------------------------------------------------------------------------------------------------
Total                                                                           26 kB/s |  45 kB     00:01     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Installing  : libusbx-devel-1.0.19-2.fc22.x86_64                                                         1/2 
  Installing  : libusb-devel-1:0.1.5-5.fc22.x86_64                                                         2/2 
  Verifying   : libusb-devel-1:0.1.5-5.fc22.x86_64                                                         1/2 
  Verifying   : libusbx-devel-1.0.19-2.fc22.x86_64                                                         2/2 

Installed:
  libusb-devel.x86_64 1:0.1.5-5.fc22                     libusbx-devel.x86_64 1.0.19-2.fc22                    

Complete!

re-run configure

[tingo@kg-u35jc ols-fwloader]$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking dependency style of gcc... (cached) gcc3
./configure: line 4016: LT_INIT: command not found
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for libusb... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating config.h
config.status: executing depfiles commands

looks better. now make

[tingo@kg-u35jc ols-fwloader]$ make
make  all-recursive
make[1]: Entering directory '/home/tingo/work/owls/ols-fwloader'
Making all in src
make[2]: Entering directory '/home/tingo/work/owls/ols-fwloader/src'
gcc -DHAVE_CONFIG_H -I. -I..    -I/usr/include/libusb-1.0  -g -O2 -MT ols_fwloader-data_file.o -MD -MP -MF .deps/ols_fwloader-data_file.Tpo -c -o ols_fwloader-data_file.o `test -f 'data_file.c' || echo './'`data_file.c
mv -f .deps/ols_fwloader-data_file.Tpo .deps/ols_fwloader-data_file.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I/usr/include/libusb-1.0  -g -O2 -MT ols_fwloader-main.o -MD -MP -MF .deps/ols_fwloader-main.Tpo -c -o ols_fwloader-main.o `test -f 'main.c' || echo './'`main.c
mv -f .deps/ols_fwloader-main.Tpo .deps/ols_fwloader-main.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I/usr/include/libusb-1.0  -g -O2 -MT ols_fwloader-ols-boot.o -MD -MP -MF .deps/ols_fwloader-ols-boot.Tpo -c -o ols_fwloader-ols-boot.o `test -f 'ols-boot.c' || echo './'`ols-boot.c
mv -f .deps/ols_fwloader-ols-boot.Tpo .deps/ols_fwloader-ols-boot.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I/usr/include/libusb-1.0  -g -O2 -MT ols_fwloader-ols.o -MD -MP -MF .deps/ols_fwloader-ols.Tpo -c -o ols_fwloader-ols.o `test -f 'ols.c' || echo './'`ols.c
mv -f .deps/ols_fwloader-ols.Tpo .deps/ols_fwloader-ols.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I/usr/include/libusb-1.0  -g -O2 -MT ols_fwloader-serial.o -MD -MP -MF .deps/ols_fwloader-serial.Tpo -c -o ols_fwloader-serial.o `test -f 'serial.c' || echo './'`serial.c
mv -f .deps/ols_fwloader-serial.Tpo .deps/ols_fwloader-serial.Po
gcc -I/usr/include/libusb-1.0  -g -O2   -o ols_fwloader ols_fwloader-data_file.o ols_fwloader-main.o ols_fwloader-ols-boot.o ols_fwloader-ols.o ols_fwloader-serial.o -lusb-1.0   
make[2]: Leaving directory '/home/tingo/work/owls/ols-fwloader/src'
make[2]: Entering directory '/home/tingo/work/owls/ols-fwloader'
make[2]: Leaving directory '/home/tingo/work/owls/ols-fwloader'
make[1]: Leaving directory '/home/tingo/work/owls/ols-fwloader'

cool.

2015-11-25: I connect the OWLS to my Linux workstation, running Fedora 22 from usb stick:

[tingo@kg-u35jc ~]$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: Fedora
Description: Fedora release 22 (Twenty Two)
Release: 22
Codename: TwentyTwo
[tingo@kg-u35jc ~]$ uname -a
Linux kg-u35jc.kg4.no 4.2.5-201.fc22.x86_64 #1 SMP Wed Oct 28 20:00:23 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

the OWLS shows up in /var/log/messages as

Nov 25 23:50:13 kg-u35jc kernel: usb 2-1.2: New USB device found, idVendor=04d8, idProduct=fc92
Nov 25 23:50:13 kg-u35jc kernel: usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Nov 25 23:50:13 kg-u35jc kernel: usb 2-1.2: Product: Logic Sniffer CDC-232
Nov 25 23:50:13 kg-u35jc kernel: usb 2-1.2: Manufacturer: Microchip Technology Inc.
Nov 25 23:50:13 kg-u35jc kernel: cdc_acm 2-1.2:1.0: ttyACM0: USB ACM device
Nov 25 23:50:13 kg-u35jc kernel: usbcore: registered new interface driver cdc_acm
Nov 25 23:50:13 kg-u35jc kernel: cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

good.

2015-11-25: there is a comprehensive update application available. Get the code from git

tingo@kg-core1$ mkdir code
tingo@kg-core1$ cd code
tingo@kg-core1$ git clone https://github.com/robots/ols-fwloader.git
Cloning into 'ols-fwloader'...
remote: Counting objects: 219, done.
remote: Total 219 (delta 0), reused 0 (delta 0), pack-reused 219
Receiving objects: 100% (219/219), 70.30 KiB | 0 bytes/s, done.
Resolving deltas: 100% (128/128), done.
Checking connectivity... done.
tingo@kg-core1$ l
./            ../           ols-fwloader/

can I get it to compile?

tingo@kg-core1$ cd ols-fwloader/
tingo@kg-core1$ autoreconf --install
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
configure.ac:12: installing './compile'
configure.ac:15: installing './config.guess'
configure.ac:15: installing './config.sub'
configure.ac:2: installing './install-sh'
configure.ac:2: installing './missing'
src/Makefile.am: installing './depcomp'

run configure

tingo@kg-core1$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking dependency style of gcc... (cached) gcc3
checking build system type... amd64-unknown-freebsd9.3
checking host system type... amd64-unknown-freebsd9.3
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking how to convert amd64-unknown-freebsd9.3 file names to amd64-unknown-freebsd9.3 format... func_convert_file_noop
checking how to convert amd64-unknown-freebsd9.3 file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... freebsd9.3 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for libusb... no
checking for libusb-config... no
checking libusb.h usability... yes
checking libusb.h presence... yes
checking for libusb.h... yes
checking for libusb_init in -lusb-1.0... no
configure: error: The libusb library is missing

ok, we must tell it where to find libusb

tingo@kg-core1$ ./configure libusb_LIBS=" -lusb"
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking dependency style of gcc... (cached) gcc3
checking build system type... amd64-unknown-freebsd9.3
checking host system type... amd64-unknown-freebsd9.3
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking how to convert amd64-unknown-freebsd9.3 file names to amd64-unknown-freebsd9.3 format... func_convert_file_noop
checking how to convert amd64-unknown-freebsd9.3 file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... freebsd9.3 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for libusb... no
checking for libusb-config... no
checking libusb.h usability... yes
checking libusb.h presence... yes
checking for libusb.h... yes
checking for libusb_init in -lusb-1.0... no
configure: error: The libusb library is missing

nope, that didn't help.

2015-11-25: I start with my workstation (c1) for testing.

tingo@kg-core1$ uname -a
FreeBSD kg-core1.kg4.no 9.3-STABLE FreeBSD 9.3-STABLE #1 r287724: Sun Sep 13 00:23:47 CEST 2015     root@kg-core1.kg4.no:/usr/obj/usr/src/sys/GENERIC  amd64

plugging in the OWLS results in the PWR (green) and TRIG (red) LEDs turning on. And in /var/log/messages I get:

Nov 25 20:58:49 kg-core1 root: Unknown USB device: vendor 0x04d8 product 0xfc92 bus uhub8
Nov 25 20:58:49 kg-core1 kernel: ugen3.4: <Microchip Technology Inc.> at usbus3
Nov 25 20:58:49 kg-core1 kernel: umodem0: <Microchip Technology Inc. Logic Sniffer CDC-232, class 2/0, rev 2.00/1.00, addr 4> on usbus3
Nov 25 20:58:49 kg-core1 kernel: umodem0: data interface 1, has no CM over data, has no break

and the device files shows up:

root@kg-core1# ll /dev/ttyU* /dev/cuaU*
crw-rw----  1 uucp  operator  0xbc Nov 25 20:58 /dev/cuaU0
crw-rw----  1 uucp  operator  0xbd Nov 25 20:58 /dev/cuaU0.init
crw-rw----  1 uucp  operator  0xbe Nov 25 20:58 /dev/cuaU0.lock
crw-rw----  1 root  operator  0xb9 Nov 25 20:58 /dev/ttyU0
crw-rw----  1 root  operator  0xba Nov 25 20:58 /dev/ttyU0.init
crw-rw----  1 root  operator  0xbb Nov 25 20:58 /dev/ttyU0.lock

good.

old history: 2011-02-12: received the package, straight into my mailbox.

2011-01-29: the package was shipped.

2011-01-26: I ordered 1 x Open Workbench Logic Sniffer (OBC101E1P) USD 50.- and 2 x Open logic sniffer probe cable (OBC102E2O) USD 12.-. Shipping was free, so the total was USD 62.-