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 - zelea2

1
Project logs / Re: DIY plated through holes
Can you please tell me what kind of software are you using for the isolation routing? I also have an A4 CNC machine which is not specialized for PCB making and the problem I have is that the PCB is not planar enough. My machine can also probe height by electrical contact but I don't have any routing software to make use of a height map.
2
Open Bench Logic Sniffer / Re: Brand new OLS bootloader tool - Windows and Linux
My mistake, I completely forgot about that button trick since the last time I did it.

$ ./ols-fwloader -f APP -P /dev/ttyACM0 -R -r dump.hex
Found OLS HW: 1, FW: 2.1, Boot: 1
Found flash: ATMEL AT45DB041D
Reading flash

Now it works; You should maybe mention it as an error message.
Also please update the example for the APP mode because it's easier to paste the command with the mouse.
3
Open Bench Logic Sniffer / Re: Brand new OLS bootloader tool - Windows and Linux
What update mode ?

In PIC update firmware mode with the jumper on all is fine

$ sudo ./ols-fwloader -f BOOT -V -w OLSv1-firmware-v2.1.hex
Bootloader version 0.2.2
Bootloader version 0.2.2
Checking flash ... (0x0800 - 0x3c00)
Verified OK! :)

In this mode the update happens directly over the USB VID/PID device

Run it a second time gives
$ sudo ./ols-fwloader -f BOOT -V -w OLSv1-firmware-v2.1.hex
Com timeout

A third time works again

Now if I remove the jumper to enumerate the ACM0 port I get the errors from the previous post.

The example you give in the help screen doesn't work at all; it just prints the help again
Write FPGA bitstream:
 ols-fwloader -f APP -W -w bitstream.hex

How am I supposed to use the upgrader in APP mode?
4
Open Bench Logic Sniffer / Re: Brand new OLS bootloader tool - Windows and Linux
The combined tool ols-fwloader (2nd post above) works fine for me in BIOS mode but not in APP mode:
I'm using a working board which I can use in the OLS client

$ dmesg
cdc_acm 6-2:1.0: ttyACM0: USB ACM device
$ ll /dev/ttyACM0
crw-rw-rw- 1 root dialout 166, 0 Jan 19 17:00 /dev/ttyACM0

% TRIG led is on

$ ./ols-fwloader -f APP -P /dev/ttyACM0 -R -r dump.hex
Found OLS HW: 0, FW: 0.0, Boot: 0
Error - unknown flash type (00 00 00 00)
Unable to read Flash ID
Unable to open OLS

% now the ARM led is ON and if I'm running it again it waits 5 seconds and then displays:

$ ./ols-fwloader -f APP -P /dev/ttyACM0 -R -r dump.hex
Error reading OLS id
Unable to read ID
Unable to open OLS
5
Open Bench Logic Sniffer / Re: fw_update is not working in linux
Quote
Are you sure you have the permission to access the usb device ?

It doesn't make any difference if I am running as root.
As stated before I'm using the latest SVN version from here:
svn checkout http://gadgetforge.gadgetfactory.net/sv ... bootloader

It segfaults in PicBootloader::close
[00/00/0000 00:00:00] !!! Err: Assertion: m_hDevice != INVALID_HANDLE_VALUE  File: pic_bootloader.cpp, Line: 556

The following strace might help; I think the culprit is the failed IOCTL. What is that IOCTL supposed to do?
I'm running an up-to-date version of Debian unstable so I think Ubuntu should behave the same.
Is it an option in the kernel that I am missing like raw hid support ?

$ grep USB .config | grep -v "^#"
CONFIG_USB_IRDA=m
CONFIG_BT_HCIBTUSB=m
CONFIG_I2C_TINY_USB=m
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=m
CONFIG_USB_HID=m
CONFIG_USB_HIDDEV=y
CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_USB=y
CONFIG_USB_DEVICEFS=y
CONFIG_USB_DEVICE_CLASS=y
CONFIG_USB_MON=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_UHCI_HCD=y
CONFIG_USB_ACM=m
CONFIG_USB_PRINTER=m
CONFIG_USB_STORAGE=m
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_BELKIN=m
CONFIG_USB_SERIAL_FTDI_SIO=m
CONFIG_USB_SERIAL_IR=m
CONFIG_USB_SERIAL_GARMIN=m
CONFIG_USB_SERIAL_MCT_U232=m
CONFIG_USB_SERIAL_PL2303=m
CONFIG_USB_SERIAL_OPTION=m
CONFIG_USB_CYPRESS_CY7C63=m

# id
uid=0(root) gid=0(root) groups=0(root)
# lsusb
Bus 006 Device 048: ID 04d8:fc90 Microchip Technology, Inc.

# strace ./fw_update -pid 0x4d8 -vid 0xfc90 -ver
[...]
open("/dev/bus/usb/006/048", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL or USBDEVFS_IOCTL32, 0xbfa7c494) = -1 ENOTTY (Inappropriate ioctl for device)
close(3)                                = 0
open("/dev/bus/usb/006/001", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL or USBDEVFS_IOCTL32, 0xbfa7c494) = 3
close(3)                                = 0
U2IO BootLoader Version reading: FAILED.i"..., 82
) = 82
time(NULL)                              = 1294672659
open("/etc/localtime", O_RDONLY)        = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=3661, ...}) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=3661, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb780f000
read(3, "TZif277"..., 4096) = 3661
_llseek(3, -26, [3635], SEEK_CUR)       = 0
read(3, "nGMT0BST,M3.5.0/1,M10.5.0n", 4096) = 26
close(3)                                = 0
munmap(0xb780f000, 4096)                = 0
open("log.txt", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb780f000
fstat64(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
_llseek(3, 0, 0, SEEK_SET)            = 0
write(3, "[00/00/0000 00:00:00] !!! Err: A"..., 113) = 113
close(3)                                = 0
munmap(0xb780f000, 4096)                = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Segmentation fault
6
Open Bench Logic Sniffer / Export VCD in JAWI client 0.9.2
VCD dump is ignoring the selected number of channels and always dumps all 32 channels. Also the VCD format allows to list
for each sample only the channels that have change value; instead they are all listed.

The above issues need to be addressed so that the VCD file size remains small.
7
Open Bench Logic Sniffer / fw_update is not working in linux
I have tried both the already available binary and the one I've built from the repository and they are not
working in Linux. The Linux ols-loader works just fine. Bellow is the output of fw_update first the Linux version and
then the Windows one:

=== Linux ===

$ lsusb
Bus 006 Device 046: ID 04d8:fc90 Microchip Technology, Inc.

$ ./fw_update -pid 0x4d8 -vid 0xfc90 -ver
fw_update Version: 0.2.0
U2IO BootLoader Version reading: FAILED.
Segmentation fault

$ ./fw_update -pid 0x4d8 -vid 0xfc90 -e
U2IO flash erasing: FAILED.
Device is not found.
Operation aborted.

=== Windows ===

C:>fw_update -vid 0x04d8 -pid 0xfc90 -ver
fw_update Version: 0.2.0
U2IO BootLoader Version reading: DONE.
BootLoader Version: 0.2.2

C:>fw_update -e -w -m flash -vid 0x04D8 -pid 0xFC90 -ix OLSv1-firmware-v2.1.hex

U2IO flash erasing: DONE.
U2IO flash programming: DONE.
RESET Device
Operation successfully completed.

C:>pause

( ! ) 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.01402340584session_write_close ( )...(null):0
20.01432472184ElkArte\sources\subs\SessionHandler\DatabaseHandler->write( )...(null):0
30.01432472960Database_MySQL->query( ).../DatabaseHandler.php:119
40.06072611696Database_MySQL->error( ).../Db-mysql.class.php:273