Skip to main content

Messages

This section allows you to view all Messages made by this member. Note that you can only see Messages made in areas you currently have access to.

Messages - nickandrew

1
Open Bench Logic Sniffer / Re: O(B)LS is abandoned?
The github repository GadgetFactory/OpenBench-Logic-Sniffer hasn't been updated in 4+ years and is broken in respect of upgrading the firmware on Linux platforms.

However, the FPGA firmware in that repository is the latest and so is the PIC firmware, and both of those work well.

The ols-fwloader tool can be used to upgrade firmware under linux, given the files from the former repository.

The java OLS client application is still being updated (now 0.9.7.2)

So yes, the device is mature and everything works, although not out of the box. Some fiddling is required and a lot of the instructions floating around the Internet are now obsolete.
2
Open Bench Logic Sniffer / Re: problems with upgrade
Hi hyOzd,

The error
Code: [Select]
unknown flash type (02 ef 30 13)
is caused by a synchronisation error reading the response from the OLS. The "ef 30 13" are the correct first 3 bytes of the flash id.

I have submitted a patch to ols-fwloader which solves this synchronisation error as it initialises the device.

You should also make sure ModemManager isn't trying to access your device each time you reset it, with this udev rules file:

Code: [Select]
# Rules for Openbench Logic Sniffers. Creates a nice link to the ols
ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="fc92", MODE="0666", SYMLINK+="OpenBenchLogicSniffer", ENV{ID_MM_DEVICE_IGNORE}="1"

Shorting the PGC-PGD pins then pressing RESET puts the OLS into bootloader mode. Bootloader mode is required to read or write the PIC firmware.

Holding down UPDATE while pressing RESET puts the OLS into FPGA update mode; ols-fwloader can move the device from update mode to bootloader mode with the "-n" option.
3
Open Bench Logic Sniffer / Re: Trouble upgrading flash rom
It took some time, but I now have a definitive answer to when the "Error - unknown flash type (48 01 46 03)" occurs, and why.

The error comes from the various firmware update tools which try to read the flash type, and instead of sending the flash type, the device sends its device ID again (these are the first 4 bytes from the 7-byte Get ID response). This happens because the OLS when in update mode, accepts 4-byte long requests and it has got out of sync.

The reason it got out of sync is that a process on your computer (probably ModemManager) has opened the /dev/ttyACM* device and sent one or more characters to it.

So one thing you should do is update your udev rules file to contain this:

Code: [Select]
# Rules for Openbench Logic Sniffers. Creates a nice link to the ols
ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="fc92", MODE="0666", SYMLINK+="OpenBenchLogicSniffer", ENV{ID_MM_DEVICE_IGNORE}="1"

The other thing you should do is upgrade to the latest firmware utility, the ols-fwloader ...

http://https://github.com/robots/ols-fwloader

I have recently modified this tool to fix some bugs and automatically resync the OLS during its device initialisation.

At this time, the GadgetFactory download "Latest Stable Release is Version 3.08" does not work for firmware upgrade under 64 bit Linux. The latest commits on github:

http://https://github.com/GadgetFactory/OpenBench-Logic-Sniffer/commits/master are more recent than 0308 but still do not work out of the box.
6
Bus Pirate Development / Re: issues using 1-wire mode (newterm)
Here's the answer.

0550H is the power-on default, when you see it, that means the device didn't start converting temperature since it was reset.

I think 07FFH means the device started to convert temperature, but couldn't complete.

Assuming you are using parasitic power, it means your device(s) have insufficient power during the conversion phase. The solution is to either change to active power, or use a P-channel MOSFET to pull the bus voltage up during conversion.

To use a MOSFET, connect its SOURCE to VCC, DRAIN to your bus power/data wire, and GATE to the output pin which will be active LOW during the conversion interval.
7
Open Bench Logic Sniffer / Re: Problems updating under Linux
The upgrade process will be a bit easier I think if all the obsolete information online is removed. Can't do much about the forums but I've made a start on improving the wiki:

http://dangerousprototypes.com/docs/Log ... s_on_Linux

Please test it out and comment or further improve the page. It provides a link to the latest packaged version and tells how to upgrade from source code, i.e. clone the github repository and compile and run the tools.
9
Open Bench Logic Sniffer / Re: Problems updating under Linux
I solved the problem. I have to run ols-fw-update as root. A note should be added to the documentation or the script should check its uid or device permissions.

After the update:


$ linbin/ols-loader -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

FW: 3.0, yay!
10
Open Bench Logic Sniffer / Re: Re: Scans intermittently show only zero
I jumpered PGC and PGD and the device now comes up with the correct vid/pid.

However update still fails:


$ linbin/ols-fw-update -e -w -m flash -vid 0x04D8 -pid 0xFC90 -ix PIC_firmware/OLSv1.firmware.v3.0.hex
U2IO flash erasing: FAILED.
Device is not found.
Operation aborted.

Also reading fails:


$ linbin/ols-fw-update -ver -vid 0x04d8 -pid 0xfc90
fw_update Version: 0.2.0
U2IO BootLoader Version reading: FAILED.
Segmentation fault
11
Open Bench Logic Sniffer / Re: Re: Scans intermittently show only zero
I can't proceed from here. Although I've supposedly loaded the Demon Core 3.07, the output from ols-loader is the same as initially:


$ linbin/ols-loader -p:/dev/ttyACM0
Logic Sniffer ROM loader v0.3 (November 9, 2010)
Opening serial port '/dev/ttyACM0' @ 921600 ... OK
Found OLS HW: 1, FW: 2.2, Boot: 2
Found flash: WINBOND W25X40

ols-fw-update fails. Also the device USB vid/pid are different to the command line: 04d8:fc92 but changing the command line accordingly doesn't change the output error message.
13
Open Bench Logic Sniffer / Re: Re: Scans intermittently show only zero
Hmm, after upgrade to 2.12, same output from ols-loader as before:

  Found OLS HW: 1, FW: 2.2, Boot: 2

Trying Demon Core now.


Logic Sniffer ROM loader v0.3 (November 9, 2010)
Opening serial port '/dev/ttyACM0' @ 921600 ... OK
Found OLS HW: 1, FW: 2.2, 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
[etc ...]


Logic Sniffer ROM loader v0.3 (November 9, 2010)
Opening serial port '/dev/ttyACM0' @ 921600 ... OK
Found OLS HW: 1, FW: 2.2, Boot: 2
Found flash: WINBOND W25X40
OLS switched to bootloader mode

Press any key to continue...


U2IO flash erasing: FAILED.
Device is not found.
Operation aborted.
14
Open Bench Logic Sniffer / Re: Re: Scans intermittently show only zero
The dialog-using script ols-upgrader.sh didn't work for me.

One error I noted: to use the 2.12 ROM, the filename needs to be "Logic_Sniffer_dynamic_depth_2.12.bit"
not "Logic_Sniffer_dynamic_depth.bit"

I was able to upgrade it with this command, from the command-line:


ols-loader -write -erase -p:/dev/ttyACM0 -wB:FPGAROM_2.12/Logic_Sniffer_dynamic_depth_2.12.bit
Logic Sniffer ROM loader v0.3 (November 9, 2010)
Opening serial port '/dev/ttyACM0' @ 921600 ... OK
Found OLS HW: 1, FW: 2.2, Boot: 2
Found flash: WINBOND W25X40
Chip erase ... done :)
Reading BIN file 'FPGAROM_2.12/Logic_Sniffer_dynamic_depth_2.12.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
[etc ...]

( ! ) Fatal error: Uncaught exception 'Elk_Exception' with message 'Please try again. If you come back to this error screen, report the error to an administrator.' in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
( ! ) Elk_Exception: Please try again. If you come back to this error screen, report the error to an administrator. in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
Call Stack
#TimeMemoryFunctionLocation
10.01532444864session_write_close ( )...(null):0
20.01562576464ElkArte\sources\subs\SessionHandler\DatabaseHandler->write( )...(null):0
30.01562577240Database_MySQL->query( ).../DatabaseHandler.php:119
40.06032715976Database_MySQL->error( ).../Db-mysql.class.php:273