Skip to main content

Topics

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

Topics - frankalicious

1
Open Bench Logic Sniffer / Shifted channel 0
Hi,

I have a little problem with my OLS.
Pin 0 to 5 are connected to 1 toggling signal.
My problem is that the channel 0 is shifted against the other signals and also the width doesn't seem to be right (see screenshot).

I tested several FPGA/PIC combinations:
- logic_sniffer_3.07-Demon-Core.bit and OLSv1.firmware.v3.0.hex
- logic_sniffer_3.07-Demon-Core.bit and OLSv1.firmware.v2.6.hex
- Logic_Sniffer_dynamic_depth_2.12.bit and OLSv1.04-firmware-v2.3.hex

I also tested several clients:
- Jawi's Logic Sniffer client  OLS v0.9.6 BETA 1, OLS v0.9.5 and OLS v0.9.4
- pyLogicSniffer

With a magnifying glass I can't see any hardware problems.
With an oscilloscope the signals seem to be simultaneous.

Has anybody an idea what the cause could be?

Thanks,
frankalicious

Edit:
OS: linux
update package 3.08 from gadgetfactory
2
CPLD programmable logic / blinken leds with a ringoscillator
Hi all,

I want to share my latest project with you.
Some time ago I ordered the coolrunnerII demo board.
Yesterday I thought I should do something "usefull" with it.
The easiest thing I thought would be a blinken LED.
To achieve this you don't need much more than a clock and a counter.
But the board is shipped without a clock source.
I thought about hooking up an external clock source.
This would have been the easiest but also the most ungeeky solution.

I remembered that it's possible to implement a ringoscillator in a PLD.

A ringoscillator can be implemented through a shiftregister with an inverted input.
(Have a look at the attached sources or ask me)
The ringoscillator is feeding a counter and the counter is feeding the two leds.

The most critical part was to prevent xst from optimizing away the ringoscillator.
This is achieved by the "keep" syntheses attributes.
Code: [Select]
attribute KEEP         : string;
attribute KEEP of ring : signal is "true";

To test the design you simply have to upload the ringoscillator.svf to your coolrunnerII board.
After the cpld is configured you have to reset the ringoscillator by pressing the button.
If you have any questions don't hesitate to ask.

The design is highly inspired by:
http://www.lothar-miller.de/s9y/categor ... oszillator
4
Client software / Jawi's Logic Sniffer client: other zoom implementations ?
Hello all together,

one little thing I miss in Jawi's client are other ways to zoom.
I have some suggestions for other ways to zoom in the graphic.

- zoom between cursors
You mark cursor 1 then you mark cursor 2 in the graph.
In the menu you can choose to zoom to this section.

- zoom with mouse button
For example you press the left mouse button, move the mouse a little bit right and then release the mouse button. The the graph zooms to this section.

Am I the only one who thinks that would be usefull?

Frankalicious
5
Bus Pirate Support / Minor bug in python scripting ?
Hello everybody,
I think I found a little bug in the python scripting interface.
When I look at the file BitBang.py from BusPirate svn I see
Code: [Select]
self.port.write(byte_string[i])
but when I compare it with the file from audiohacked (http://github.com/audiohacked/pyBusPira ... BitBang.py)
I see the correct
Code: [Select]
self.port.write([chr(byte_string[i]))

Code: [Select]
svn diff scripts/pyBusPirateLite/pyBusPirateLite/BitBang.py
Index: scripts/pyBusPirateLite/pyBusPirateLite/BitBang.py
===================================================================
--- scripts/pyBusPirateLite/pyBusPirateLite/BitBang.py  (Revision 443)
+++ scripts/pyBusPirateLite/pyBusPirateLite/BitBang.py  (Arbeitskopie)
@@ -164,7 +164,7 @@
                self.port.write(chr(0x10 | (byte_count-1)))
                self.timeout(0.1)
                for i in range(byte_count):
-                       self.port.write(byte_string[i])
+                       self.port.write(chr(byte_string[i]))
                        self.timeout(0.1)
                data = self.response(byte_count+2, True)
                return data[1:]

And in my opinion in the file i2c-test.py the function i2c_read_bytes should return data_out in the end.
Code: [Select]
	if ret:
return data_out

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