https://sigrok.org/w/api.php?action=feedcontributions&user=Joe+mblessa&feedformat=atomsigrok - User contributions [en]2024-03-28T11:55:40ZUser contributionsMediaWiki 1.37.1https://sigrok.org/w/index.php?title=Circuits_for_barebone_boards&diff=14055Circuits for barebone boards2019-01-26T22:36:45Z<p>Joe mblessa: </p>
<hr />
<div>This page describes which input protection / measuring circuits for barebone or other more minimal boards can be used.<br />
<br />
== Probing a circuit ==<br />
<br />
Usually for a logic analyzer high input impedance (and low capacitance) is wanted, to influence the measured circuit as least as possible (don't put an additional capacitive load on it). On the other hand, one might want to use an R-C low-pass filter for the signal to block possible higher frequency spikes. If that is wanted or required, it is best to introduce an additional buffering IC that will then drive the load of the introduced capacity of the filter. This can not directly be advised for logic analyzers, but rather for analog instruments (oscilloscopes) that will usually be used in a bigger variety of cases with possibly more noise in the signal.<br />
<br />
== Input protection ==<br />
<br />
=== Clamp circuits with resistor / Z-Diodes ===<br />
<br />
A clamp circuit can be used, for example view below at [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's Blog]. When using Zener diodes instead of the normal diodes in Spiralbrain's blog we can get also a protection from negative voltages:<br />
<br />
The circuit is shown here again with Zener diodes and numbering for [[fx2lafw]] pins: [[File:Clamp_circuit1.png|thumb|<small>|3.3V clamping circuit]]. It works in the following way: Case 1: When we get a voltage over 3.3V, the overvoltage will get "absorbed" over the Zener diodes like with normal diodes normal forward-mode. Case 2: At negative voltages, the Zener effect will happen for a reverse flow from the 3.3V supply to pull up the negative input.<br />
<br />
For boards based on the Cypress CY7C68013A and some others it can be discussed if 4.7V or 5V Zener Diodes are also okay, as the CY7C68013A is 5V I/O tolerant -- 5V supply could then be used from USB.<br />
<br />
When doing all this, one should be aware that not all diodes might be sufficient, as they will also introduce a minor capacitance. <br />
<br />
The [http://sigrok.org/wiki/Saleae_Logic Saleae Logic Analyzer] uses a specific "ESD protection IC" ( ST DVIULC6-4SC6 ) which is essentially a pair of diodes for a slightly different type of clamping / input protection, one will then just have to connect each input line after the resistors to one of the input pins of this IC. However this might not be as cheap as simple diodes and not as easily available.<br />
<br />
<gallery><br />
File:Lcsoft_mini_board_in_tin_box.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box</small><br />
File:Lcsoft_mini_board_in_tin_box_with_LA.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box with added clamp circuit and connectors for probes on a breakout board</small><br />
File:Lcsoft_penguin_la.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box as an 8 channel logic analyzer</small><br />
</gallery><br />
<br />
==== Issues measuring higher frequencies ====<br />
<br />
When measuring something e.g. a 12 MHz Frequency (sampling @ 24MHz, so also just barely satisfying [http://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem Nyquist-Shannon]) that can push up to 20 pF load, the resistors in the mentioned circuit (4.7 k Ohm) together with "unknown" 3.6V Zener Diodes¹ might be too much load to overpower, the used test probes can also make an influence. Here is a comparison table which values were tried and how it turned out measuring a 12 MHz square wave:<br />
<br />
¹) A 3.6 V Zener in reverse direction has a not-so-steep slope and is insufficient to protect from voltages < -0.5 V. A 3.3 V Zener diode has typical a capacity of 400 pF. With 4.7k resistor τ=1.88 µs the bandwidth is limited to approx 500 kHz.<br />
<br />
{|<br />
! Resistor<br />
! Zener Diode<br />
! With test probes?<sup>1</sup><sup>2</sup><br />
! Measurement Result<br />
<br />
|-<br />
| 4.7 k Ohm<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Only "high"<br />
<br />
|-<br />
| 890 Ohm<br />
| 3.6V (unknown speed)<br />
| Cheap Test probe, longer wires<br />
| Only "high"<br />
<br />
|-<br />
| 1.4 k Ohm<br />
| None<br />
| Short direct wires<br />
| Sometimes "high", about 75% correct<br />
<br />
|-<br />
| 100 Ohm<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 75% correct<br />
<br />
|-<br />
| 100 Ohm<br />
| None<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| None<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| None<br />
| Short direct wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
|}<br />
<br />
<br />
Cheap Test probe made out of:<br />
<br />
<sup>1</sup> [http://dx.com/p/133097 "Plastic Flat Multimeter Test Hook Clip Probes"]<br />
<br />
<sup>2</sup> [http://www.reichelt.de/PS-25-10G-BR/3/index.html?&ARTICLE=32203&artnr=PS+25%2F10G+BR Flexible PCB Connector]<br />
<br />
=== With buffer IC ===<br />
<br />
Different buffer ICs can be used in combination with resistors (+ Z-Diodes to also protect the buffer IC). Depending on the IC, they can also be used for voltage-level conversion or clamping.<br />
<br />
The 74HC241 can be driven at the measuring voltage up to 6V. Buffering can also be done by latch ICs like 74HC573 (3.3V) or 74HCT573 (5V).<br />
<br />
== Analog frontends ==<br />
<br />
Designing a decent analog frontend to be used for example for [[fx2lafw]] capable devices will be a more complicated task. An appropriate ADC has to be found and an input stage with filter, protection and amplification elements needs to be designed. A possible ADC for up to 40MHz sampling frequency is the TDA 8703. An interesting project using that ADC with a parallel port can be found on [http://www.volny.cz/elecon/pcoscilloscope/pcoscilloscope.html volny.cz]<br />
<br />
You can also look at the analog frontend of the FX2 based [[EE Electronics ESLA201A]] or the better documented but more complex [[Nexus-Computing OsciPrime]] schematic there: [http://www.osciprime.com/repo/osciprime-schematic-dagobert.pdf]<br />
<br />
For probes, an interesting DIY very high frequency probe can be found here at [http://emcesd.com/1ghzprob.htm Douglas C. Smith Web Page]</div>Joe mblessahttps://sigrok.org/w/index.php?title=Circuits_for_barebone_boards&diff=14054Circuits for barebone boards2019-01-26T22:34:25Z<p>Joe mblessa: »3.3 V Zener diode: Limitations« moved down</p>
<hr />
<div>This page describes which input protection / measuring circuits for barebone or other more minimal boards can be used.<br />
<br />
== Probing a circuit ==<br />
<br />
Usually for a logic analyzer high input impedance (and low capacitance) is wanted, to influence the measured circuit as least as possible (don't put an additional capacitive load on it). On the other hand, one might want to use an R-C low-pass filter for the signal to block possible higher frequency spikes. If that is wanted or required, it is best to introduce an additional buffering IC that will then drive the load of the introduced capacity of the filter. This can not directly be advised for logic analyzers, but rather for analog instruments (oscilloscopes) that will usually be used in a bigger variety of cases with possibly more noise in the signal.<br />
<br />
== Input protection ==<br />
<br />
=== Clamp circuits with resistor / Z-Diodes ===<br />
<br />
A clamp circuit can be used, for example view below at [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's Blog]. When using Zener diodes instead of the normal diodes in Spiralbrain's blog we can get also a protection from negative voltages:<br />
<br />
The circuit is shown here again with Zener diodes and numbering for [[fx2lafw]] pins: [[File:Clamp_circuit1.png|thumb|<small>|3.3V clamping circuit]]. It works in the following way: Case 1: When we get a voltage over 3.3V, the overvoltage will get "absorbed" over the Zener diodes like with normal diodes normal forward-mode. Case 2: At negative voltages, the Zener effect will happen for a reverse flow from the 3.3V supply to pull up the negative input.<br />
<br />
For boards based on the Cypress CY7C68013A and some others it can be discussed if 4.7V or 5V Zener Diodes are also okay, as the CY7C68013A is 5V I/O tolerant -- 5V supply could then be used from USB.<br />
<br />
When doing all this, one should be aware that not all diodes might be sufficient, as they will also introduce a minor capacitance. <br />
<br />
The [http://sigrok.org/wiki/Saleae_Logic Saleae Logic Analyzer] uses a specific "ESD protection IC" ( ST DVIULC6-4SC6 ) which is essentially a pair of diodes for a slightly different type of clamping / input protection, one will then just have to connect each input line after the resistors to one of the input pins of this IC. However this might not be as cheap as simple diodes and not as easily available.<br />
<br />
<gallery><br />
File:Lcsoft_mini_board_in_tin_box.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box</small><br />
File:Lcsoft_mini_board_in_tin_box_with_LA.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box with added clamp circuit and connectors for probes on a breakout board</small><br />
File:Lcsoft_penguin_la.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box as an 8 channel logic analyzer</small><br />
</gallery><br />
<br />
==== Issues measuring higher frequencies ====<br />
<br />
When measuring something e.g. a 12 MHz Frequency (sampling @ 24MHz, so also just barely satisfying [http://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem Nyquist-Shannon]) that can push up to 20 pF load, the resistors in the mentioned circuit (4.7 k Ohm) together with "unknown" 3.6V Zener Diodes¹ might be too much load to overpower, the used test probes can also make an influence. Here is a comparison table which values were tried and how it turned out measuring a 12 MHz square wave:<br />
<br />
¹) A 3.3 V Zener diode has typical a capacity of 400 pF. With 4.7k resistor τ=1.88 µs the bandwidth is limited to approx 500 kHz.<br />
<br />
{|<br />
! Resistor<br />
! Zener Diode<br />
! With test probes?<sup>1</sup><sup>2</sup><br />
! Measurement Result<br />
<br />
|-<br />
| 4.7 k Ohm<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Only "high"<br />
<br />
|-<br />
| 890 Ohm<br />
| 3.6V (unknown speed)<br />
| Cheap Test probe, longer wires<br />
| Only "high"<br />
<br />
|-<br />
| 1.4 k Ohm<br />
| None<br />
| Short direct wires<br />
| Sometimes "high", about 75% correct<br />
<br />
|-<br />
| 100 Ohm<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 75% correct<br />
<br />
|-<br />
| 100 Ohm<br />
| None<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| None<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| None<br />
| Short direct wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
|}<br />
<br />
<br />
Cheap Test probe made out of:<br />
<br />
<sup>1</sup> [http://dx.com/p/133097 "Plastic Flat Multimeter Test Hook Clip Probes"]<br />
<br />
<sup>2</sup> [http://www.reichelt.de/PS-25-10G-BR/3/index.html?&ARTICLE=32203&artnr=PS+25%2F10G+BR Flexible PCB Connector]<br />
<br />
=== With buffer IC ===<br />
<br />
Different buffer ICs can be used in combination with resistors (+ Z-Diodes to also protect the buffer IC). Depending on the IC, they can also be used for voltage-level conversion or clamping.<br />
<br />
The 74HC241 can be driven at the measuring voltage up to 6V. Buffering can also be done by latch ICs like 74HC573 (3.3V) or 74HCT573 (5V).<br />
<br />
== Analog frontends ==<br />
<br />
Designing a decent analog frontend to be used for example for [[fx2lafw]] capable devices will be a more complicated task. An appropriate ADC has to be found and an input stage with filter, protection and amplification elements needs to be designed. A possible ADC for up to 40MHz sampling frequency is the TDA 8703. An interesting project using that ADC with a parallel port can be found on [http://www.volny.cz/elecon/pcoscilloscope/pcoscilloscope.html volny.cz]<br />
<br />
You can also look at the analog frontend of the FX2 based [[EE Electronics ESLA201A]] or the better documented but more complex [[Nexus-Computing OsciPrime]] schematic there: [http://www.osciprime.com/repo/osciprime-schematic-dagobert.pdf]<br />
<br />
For probes, an interesting DIY very high frequency probe can be found here at [http://emcesd.com/1ghzprob.htm Douglas C. Smith Web Page]</div>Joe mblessahttps://sigrok.org/w/index.php?title=Circuits_for_barebone_boards&diff=14053Circuits for barebone boards2019-01-26T22:17:33Z<p>Joe mblessa: 3.3 V Zener diode: Limitations</p>
<hr />
<div>This page describes which input protection / measuring circuits for barebone or other more minimal boards can be used.<br />
<br />
== Probing a circuit ==<br />
<br />
Usually for a logic analyzer high input impedance (and low capacitance) is wanted, to influence the measured circuit as least as possible (don't put an additional capacitive load on it). On the other hand, one might want to use an R-C low-pass filter for the signal to block possible higher frequency spikes. If that is wanted or required, it is best to introduce an additional buffering IC that will then drive the load of the introduced capacity of the filter. This can not directly be advised for logic analyzers, but rather for analog instruments (oscilloscopes) that will usually be used in a bigger variety of cases with possibly more noise in the signal.<br />
<br />
== Input protection ==<br />
<br />
=== Clamp circuits with resistor / Z-Diodes ===<br />
<br />
A clamp circuit can be used, for example view below at [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's Blog]. When using Zener diodes instead of the normal diodes in Spiralbrain's blog we can get also a protection from negative voltages:<br />
<br />
The circuit is shown here again with Zener diodes and numbering for [[fx2lafw]] pins: [[File:Clamp_circuit1.png|thumb|<small>|3.3V clamping circuit]]. It works in the following way: Case 1: When we get a voltage over 3.3V, the overvoltage will get "absorbed" over the Zener diodes like with normal diodes normal forward-mode. Case 2: At negative voltages, the Zener effect will happen for a reverse flow from the 3.3V supply to pull up the negative input. Limitations: a 3.3 V Zener diode has typical a capacity of 400 pF. With 4.7k resistor τ=1.88 µs the bandwidth is limited to approx 500 kHz.<br />
<br />
For boards based on the Cypress CY7C68013A and some others it can be discussed if 4.7V or 5V Zener Diodes are also okay, as the CY7C68013A is 5V I/O tolerant -- 5V supply could then be used from USB.<br />
<br />
When doing all this, one should be aware that not all diodes might be sufficient, as they will also introduce a minor capacitance. <br />
<br />
The [http://sigrok.org/wiki/Saleae_Logic Saleae Logic Analyzer] uses a specific "ESD protection IC" ( ST DVIULC6-4SC6 ) which is essentially a pair of diodes for a slightly different type of clamping / input protection, one will then just have to connect each input line after the resistors to one of the input pins of this IC. However this might not be as cheap as simple diodes and not as easily available.<br />
<br />
<gallery><br />
File:Lcsoft_mini_board_in_tin_box.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box</small><br />
File:Lcsoft_mini_board_in_tin_box_with_LA.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box with added clamp circuit and connectors for probes on a breakout board</small><br />
File:Lcsoft_penguin_la.jpg|<small>[[Lcsoft_Mini_Board]] inside a penguin peppermint tin box as an 8 channel logic analyzer</small><br />
</gallery><br />
<br />
==== Issues measuring higher frequencies ====<br />
<br />
When measuring something e.g. a 12 MHz Frequency (sampling @ 24MHz, so also just barely satisfying [http://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem Nyquist-Shannon]) that can push up to 20 pF load, the resistors in the mentioned circuit (4.7 k Ohm) together with "unknown" 3.6V Zener Diodes might be too much load to overpower, the used test probes can also make an influence. Here is a comparison table which values were tried and how it turned out measuring a 12 MHz square wave:<br />
<br />
{|<br />
! Resistor<br />
! Zener Diode<br />
! With test probes?<sup>1</sup><sup>2</sup><br />
! Measurement Result<br />
<br />
|-<br />
| 4.7 k Ohm<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Only "high"<br />
<br />
|-<br />
| 890 Ohm<br />
| 3.6V (unknown speed)<br />
| Cheap Test probe, longer wires<br />
| Only "high"<br />
<br />
|-<br />
| 1.4 k Ohm<br />
| None<br />
| Short direct wires<br />
| Sometimes "high", about 75% correct<br />
<br />
|-<br />
| 100 Ohm<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 75% correct<br />
<br />
|-<br />
| 100 Ohm<br />
| None<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| None<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| None<br />
| Short direct wires<br />
| Sometimes "high", about 90% correct<br />
<br />
|-<br />
| None<br />
| 3.6V<br />
| Cheap Test probe, longer wires<br />
| Sometimes "high", about 90% correct<br />
|}<br />
<br />
<br />
Cheap Test probe made out of:<br />
<br />
<sup>1</sup> [http://dx.com/p/133097 "Plastic Flat Multimeter Test Hook Clip Probes"]<br />
<br />
<sup>2</sup> [http://www.reichelt.de/PS-25-10G-BR/3/index.html?&ARTICLE=32203&artnr=PS+25%2F10G+BR Flexible PCB Connector]<br />
<br />
=== With buffer IC ===<br />
<br />
Different buffer ICs can be used in combination with resistors (+ Z-Diodes to also protect the buffer IC). Depending on the IC, they can also be used for voltage-level conversion or clamping.<br />
<br />
The 74HC241 can be driven at the measuring voltage up to 6V. Buffering can also be done by latch ICs like 74HC573 (3.3V) or 74HCT573 (5V).<br />
<br />
== Analog frontends ==<br />
<br />
Designing a decent analog frontend to be used for example for [[fx2lafw]] capable devices will be a more complicated task. An appropriate ADC has to be found and an input stage with filter, protection and amplification elements needs to be designed. A possible ADC for up to 40MHz sampling frequency is the TDA 8703. An interesting project using that ADC with a parallel port can be found on [http://www.volny.cz/elecon/pcoscilloscope/pcoscilloscope.html volny.cz]<br />
<br />
You can also look at the analog frontend of the FX2 based [[EE Electronics ESLA201A]] or the better documented but more complex [[Nexus-Computing OsciPrime]] schematic there: [http://www.osciprime.com/repo/osciprime-schematic-dagobert.pdf]<br />
<br />
For probes, an interesting DIY very high frequency probe can be found here at [http://emcesd.com/1ghzprob.htm Douglas C. Smith Web Page]</div>Joe mblessahttps://sigrok.org/w/index.php?title=Lcsoft_Mini_Board&diff=14052Lcsoft Mini Board2019-01-26T21:55:27Z<p>Joe mblessa: </p>
<hr />
<div>{{Infobox logic analyzer<br />
| image = [[File:lcsoft-miniboard-front.png|180px]]<br />
| name = Lcsoft Mini Board<br />
| status = supported<br />
| source_code_dir = fx2lafw<br />
| channels = 8/16<br />
| samplerate = 24MHz<br />
| samplerate_state = &mdash;<br />
| triggers = none (SW-only)<br />
| voltages = -0.5V &mdash; 5.25V<br />
| threshold = Fixed: VIH=2.0V&mdash;5.25V, VIL=-0.5V&mdash;0.8V<br />
| memory = none<br />
| compression = none<br />
| website = [http://www.lctech-inc.com/Hardware/Detail.aspx?id=7cadef7b-359a-4e3d-b980-76ffa15171e0 lctech-inc.com], [http://www.geeetech.com/wiki/index.php/CY7C68013 geeetech.com]<br />
}}<br />
<br />
The '''Lcsoft CY7C68013A Mini Board''' is a Cypress FX2(LP) eval board, which can be used as USB-based, 16-channel logic analyzer with up to 24MHz sampling rate.<br />
<br />
It is a clone of the [[Saleae Logic]].<br />
<br />
In sigrok, we use the open-source [[fx2lafw]] firmware for this logic analyzer.<br />
<br />
See [[Lcsoft Mini Board/Info]] for some more details (such as '''lsusb -v''' output) on the device.<br />
<br />
There is a very similar board made by Geeetech, it has near-identical components but a slightly different layout.<br />
<br />
== Hardware ==<br />
<br />
* '''Main chip''': Cypress CY7C68013A-56PVXC (FX2LP)<br />
* '''3.3V voltage regulator''': Advanced Monolithic Systems AMS1117-3.3<br />
* '''16kB I2C EEPROM''': Atmel AT24C128A<br />
* '''24MHz crystal''': JY24.0000601<br />
<br />
All the pins on the FX2(LP) are broken out to 40 header pins. There's an on/off toggle switch, a reset button, and a jumper that lets you select whether the FX2LP gets its configuration from a small EEPROM, or boots into the default mode. The EEPROM is usually provided programmed such that it enumerates with the same VID:PID as a [[Saleae Logic]].<br />
<br />
By default the chip will boot in some internal bootloader which allows loading (and executing) from USB to the internal RAM. Sigrok will typically use the [[fx2lafw]] firmware for this (aka "load-on-probe").<br />
<br />
The EEPROM can be programmed with a firmware. The jumper allows to select whether the chip will boot on the EEPROM or the usual load-on-probe. This can be used for example to switch easily between a 16-channel (PB0-PB7, PD0-PD7) firmware and a 8-channel (PB0-PB7) one.<br />
<br />
The Cypress has no DAC and can't by itself have any analog output. Other Cypress-based board have an external DAC, typically connected to 8 pins of the FX2, but this very one doesn't have any DAC.<br />
<br />
<br />
== Photos ==<br />
<br />
<gallery><br />
File:lcsoft-miniboard-front.png|<small>PCB, front</small><br />
File:lcsoft-fx2-pcb-top.png|<small>PCB, front</small><br />
File:lcsoft-miniboard-back.png|<small>PCB, back</small><br />
File:Lcsoft mini board ams1117.jpg|<small>A.M.S. AMS1117</small><br />
File:Lcsoft mini board at24c128a.jpg|<small>Atmel AT24C128A</small><br />
File:Lcsoft mini board crystal.jpg|<small>24MHz crystal</small><br />
File:Lcsoft mini board fx2.jpg|<small>Cypress FX2LP</small><br />
</gallery><br />
<br />
'''Geeetech version''':<br />
<br />
[http://www.geeetech.com/wiki/index.php/CY7C68013 Geeetech product page]<br />
<br />
<gallery><br />
File:Geeetech_CY7C68013.jpg|<small>Geeetech CY7C68013, front</small><br />
File:Geeetech_CY7C68013_back.jpg|<small>Geeetech CY7C68013, back</small><br />
</gallery><br />
<br />
Differences from the LCSoft board:<br />
* two LEDs, on pins PA0 and PA1<br />
* two jumpers: J1 connects/disconnects the LEDs from Vcc, J2 sets the EEPROM address bit A0<br />
* construction quality is higher<br />
<br />
The Geeetech board's J2 is logically opposite to the LCSoft board's jumper: pin A0 is tied HIGH via a 10kOhm resistor, inserting J2 pulls it LOW. i.e. inserting J2 on the Geeetech is functionally the same as removing the jumper on the LCSoft board.<br />
<br />
== Protocol ==<br />
<br />
Since we use the open-source [[fx2lafw]] firmware for this device, we don't need to know the protocol.<br />
<br />
== Possible issues ==<br />
<br />
* With some kernel versions, and if the onboard EEPROM is disconnected (the jumper not connected) the kernel will automatically claim the device with a '''usbtest''' kernel module, seen in dmesg like '''usbtest 2-2:1.0: FX2 device''' &mdash; if this happens, sigrok will be unable to claim the device. Remove the '''usbtest''' kernel module as root to be able to use it:<br />
<br />
$ '''sudo rmmod usbtest'''<br />
<br />
You can add the '''usbtest''' module to a module blacklist permanently, at least in Debian-based distributions found in '''/etc/modprobe.d/blacklist.conf''':<br />
<br />
$ '''sudo sh -c "echo 'blacklist usbtest' >> /etc/modprobe.d/blacklist.conf"'''<br />
<br />
== Required testing hardware extensions ==<br />
<br />
'''Do not directly hook the board pins to another circuit, if you don't know what you are doing! This could damage the board!'''<br />
<br />
The simplest circuit would be adding at least resistors in between your circuit-in-test and the Lcsoft board, but be aware here that the Cypress FX2(LP) chip can only tolerate a maximum of 5V I/O. Better would be to use a clamp circuit like shown at [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's Blog] (but you do not need to add another EEPROM for sigrok with [[fx2lafw]]!) (and this clamp circuit does not protect the chip from voltages < -0.5 V). A buffer circuit using a 74HC241 IC¹ for protection is also possible. Check the [[fx2lafw]] page to see which protection circuits are used on other logic analyzer boards.<br />
<br />
More information can be found in [[Circuits for barebone boards]].<br />
<br />
== Resources ==<br />
<br />
* [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's blog: So your Saleae clone isn’t working with the new software?]<br />
* [http://hanixdiy.blogspot.de/2011/03/cy7c68013a-usb-logic-analyzer.html hAnix-diy: CY7C68013A USB Logic Analyzer]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/ Instructions for flashing the EEPROM on FX2 devices]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/fxload-full-2008_10_13-ww3.tar.gz Second stage bootloader, Vend_Ax.hex]<br />
<br />
¹) with Vcc=2.8 V you get approx. VIL<=0.77 V and VIH>=2.03 V; with Vcc=5.0 V you get approx. VIL<=1.5 V and VIH>=3.5 V (interpolated from datasheet)<br />
<br />
[[Category:Device]]<br />
[[Category:Logic analyzer]]<br />
[[Category:Supported]]</div>Joe mblessahttps://sigrok.org/w/index.php?title=Lcsoft_Mini_Board&diff=14051Lcsoft Mini Board2019-01-26T21:54:54Z<p>Joe mblessa: Estimated logic level thresholds for 74HC241</p>
<hr />
<div>{{Infobox logic analyzer<br />
| image = [[File:lcsoft-miniboard-front.png|180px]]<br />
| name = Lcsoft Mini Board<br />
| status = supported<br />
| source_code_dir = fx2lafw<br />
| channels = 8/16<br />
| samplerate = 24MHz<br />
| samplerate_state = &mdash;<br />
| triggers = none (SW-only)<br />
| voltages = -0.5V &mdash; 5.25V<br />
| threshold = Fixed: VIH=2.0V&mdash;5.25V, VIL=-0.5V&mdash;0.8V<br />
| memory = none<br />
| compression = none<br />
| website = [http://www.lctech-inc.com/Hardware/Detail.aspx?id=7cadef7b-359a-4e3d-b980-76ffa15171e0 lctech-inc.com], [http://www.geeetech.com/wiki/index.php/CY7C68013 geeetech.com]<br />
}}<br />
<br />
The '''Lcsoft CY7C68013A Mini Board''' is a Cypress FX2(LP) eval board, which can be used as USB-based, 16-channel logic analyzer with up to 24MHz sampling rate.<br />
<br />
It is a clone of the [[Saleae Logic]].<br />
<br />
In sigrok, we use the open-source [[fx2lafw]] firmware for this logic analyzer.<br />
<br />
See [[Lcsoft Mini Board/Info]] for some more details (such as '''lsusb -v''' output) on the device.<br />
<br />
There is a very similar board made by Geeetech, it has near-identical components but a slightly different layout.<br />
<br />
== Hardware ==<br />
<br />
* '''Main chip''': Cypress CY7C68013A-56PVXC (FX2LP)<br />
* '''3.3V voltage regulator''': Advanced Monolithic Systems AMS1117-3.3<br />
* '''16kB I2C EEPROM''': Atmel AT24C128A<br />
* '''24MHz crystal''': JY24.0000601<br />
<br />
All the pins on the FX2(LP) are broken out to 40 header pins. There's an on/off toggle switch, a reset button, and a jumper that lets you select whether the FX2LP gets its configuration from a small EEPROM, or boots into the default mode. The EEPROM is usually provided programmed such that it enumerates with the same VID:PID as a [[Saleae Logic]].<br />
<br />
By default the chip will boot in some internal bootloader which allows loading (and executing) from USB to the internal RAM. Sigrok will typically use the [[fx2lafw]] firmware for this (aka "load-on-probe").<br />
<br />
The EEPROM can be programmed with a firmware. The jumper allows to select whether the chip will boot on the EEPROM or the usual load-on-probe. This can be used for example to switch easily between a 16-channel (PB0-PB7, PD0-PD7) firmware and a 8-channel (PB0-PB7) one.<br />
<br />
The Cypress has no DAC and can't by itself have any analog output. Other Cypress-based board have an external DAC, typically connected to 8 pins of the FX2, but this very one doesn't have any DAC.<br />
<br />
<br />
== Photos ==<br />
<br />
<gallery><br />
File:lcsoft-miniboard-front.png|<small>PCB, front</small><br />
File:lcsoft-fx2-pcb-top.png|<small>PCB, front</small><br />
File:lcsoft-miniboard-back.png|<small>PCB, back</small><br />
File:Lcsoft mini board ams1117.jpg|<small>A.M.S. AMS1117</small><br />
File:Lcsoft mini board at24c128a.jpg|<small>Atmel AT24C128A</small><br />
File:Lcsoft mini board crystal.jpg|<small>24MHz crystal</small><br />
File:Lcsoft mini board fx2.jpg|<small>Cypress FX2LP</small><br />
</gallery><br />
<br />
'''Geeetech version''':<br />
<br />
[http://www.geeetech.com/wiki/index.php/CY7C68013 Geeetech product page]<br />
<br />
<gallery><br />
File:Geeetech_CY7C68013.jpg|<small>Geeetech CY7C68013, front</small><br />
File:Geeetech_CY7C68013_back.jpg|<small>Geeetech CY7C68013, back</small><br />
</gallery><br />
<br />
Differences from the LCSoft board:<br />
* two LEDs, on pins PA0 and PA1<br />
* two jumpers: J1 connects/disconnects the LEDs from Vcc, J2 sets the EEPROM address bit A0<br />
* construction quality is higher<br />
<br />
The Geeetech board's J2 is logically opposite to the LCSoft board's jumper: pin A0 is tied HIGH via a 10kOhm resistor, inserting J2 pulls it LOW. i.e. inserting J2 on the Geeetech is functionally the same as removing the jumper on the LCSoft board.<br />
<br />
== Protocol ==<br />
<br />
Since we use the open-source [[fx2lafw]] firmware for this device, we don't need to know the protocol.<br />
<br />
== Possible issues ==<br />
<br />
* With some kernel versions, and if the onboard EEPROM is disconnected (the jumper not connected) the kernel will automatically claim the device with a '''usbtest''' kernel module, seen in dmesg like '''usbtest 2-2:1.0: FX2 device''' &mdash; if this happens, sigrok will be unable to claim the device. Remove the '''usbtest''' kernel module as root to be able to use it:<br />
<br />
$ '''sudo rmmod usbtest'''<br />
<br />
You can add the '''usbtest''' module to a module blacklist permanently, at least in Debian-based distributions found in '''/etc/modprobe.d/blacklist.conf''':<br />
<br />
$ '''sudo sh -c "echo 'blacklist usbtest' >> /etc/modprobe.d/blacklist.conf"'''<br />
<br />
== Required testing hardware extensions ==<br />
<br />
'''Do not directly hook the board pins to another circuit, if you don't know what you are doing! This could damage the board!'''<br />
<br />
The simplest circuit would be adding at least resistors in between your circuit-in-test and the Lcsoft board, but be aware here that the Cypress FX2(LP) chip can only tolerate a maximum of 5V I/O. Better would be to use a clamp circuit like shown at [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's Blog] (but you do not need to add another EEPROM for sigrok with [[fx2lafw]]!) (and this clamp circuit does not protect the chip from voltages < -0.5 V). A buffer circuit using a 74HC241 IC¹ for protection is also possible. Check the [[fx2lafw]] page to see which protection circuits are used on other logic analyzer boards.<br />
<br />
More information can be found in [[Circuits for barebone boards]].<br />
<br />
== Resources ==<br />
<br />
* [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's blog: So your Saleae clone isn’t working with the new software?]<br />
* [http://hanixdiy.blogspot.de/2011/03/cy7c68013a-usb-logic-analyzer.html hAnix-diy: CY7C68013A USB Logic Analyzer]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/ Instructions for flashing the EEPROM on FX2 devices]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/fxload-full-2008_10_13-ww3.tar.gz Second stage bootloader, Vend_Ax.hex]<br />
<br />
¹) with Vcc=2.8 V you get approx. VIL<=0.77 V and VIH>=2.03 V; with Vcc=5.0 V yu get approx. VIL<=1.5 V and VIH>=3.5 V (interpolated from datasheet)<br />
<br />
[[Category:Device]]<br />
[[Category:Logic analyzer]]<br />
[[Category:Supported]]</div>Joe mblessahttps://sigrok.org/w/index.php?title=Lcsoft_Mini_Board&diff=14050Lcsoft Mini Board2019-01-26T21:31:27Z<p>Joe mblessa: (0.7V)-Diode clamping circuit: does not protect form voltages < -0.5 V</p>
<hr />
<div>{{Infobox logic analyzer<br />
| image = [[File:lcsoft-miniboard-front.png|180px]]<br />
| name = Lcsoft Mini Board<br />
| status = supported<br />
| source_code_dir = fx2lafw<br />
| channels = 8/16<br />
| samplerate = 24MHz<br />
| samplerate_state = &mdash;<br />
| triggers = none (SW-only)<br />
| voltages = -0.5V &mdash; 5.25V<br />
| threshold = Fixed: VIH=2.0V&mdash;5.25V, VIL=-0.5V&mdash;0.8V<br />
| memory = none<br />
| compression = none<br />
| website = [http://www.lctech-inc.com/Hardware/Detail.aspx?id=7cadef7b-359a-4e3d-b980-76ffa15171e0 lctech-inc.com], [http://www.geeetech.com/wiki/index.php/CY7C68013 geeetech.com]<br />
}}<br />
<br />
The '''Lcsoft CY7C68013A Mini Board''' is a Cypress FX2(LP) eval board, which can be used as USB-based, 16-channel logic analyzer with up to 24MHz sampling rate.<br />
<br />
It is a clone of the [[Saleae Logic]].<br />
<br />
In sigrok, we use the open-source [[fx2lafw]] firmware for this logic analyzer.<br />
<br />
See [[Lcsoft Mini Board/Info]] for some more details (such as '''lsusb -v''' output) on the device.<br />
<br />
There is a very similar board made by Geeetech, it has near-identical components but a slightly different layout.<br />
<br />
== Hardware ==<br />
<br />
* '''Main chip''': Cypress CY7C68013A-56PVXC (FX2LP)<br />
* '''3.3V voltage regulator''': Advanced Monolithic Systems AMS1117-3.3<br />
* '''16kB I2C EEPROM''': Atmel AT24C128A<br />
* '''24MHz crystal''': JY24.0000601<br />
<br />
All the pins on the FX2(LP) are broken out to 40 header pins. There's an on/off toggle switch, a reset button, and a jumper that lets you select whether the FX2LP gets its configuration from a small EEPROM, or boots into the default mode. The EEPROM is usually provided programmed such that it enumerates with the same VID:PID as a [[Saleae Logic]].<br />
<br />
By default the chip will boot in some internal bootloader which allows loading (and executing) from USB to the internal RAM. Sigrok will typically use the [[fx2lafw]] firmware for this (aka "load-on-probe").<br />
<br />
The EEPROM can be programmed with a firmware. The jumper allows to select whether the chip will boot on the EEPROM or the usual load-on-probe. This can be used for example to switch easily between a 16-channel (PB0-PB7, PD0-PD7) firmware and a 8-channel (PB0-PB7) one.<br />
<br />
The Cypress has no DAC and can't by itself have any analog output. Other Cypress-based board have an external DAC, typically connected to 8 pins of the FX2, but this very one doesn't have any DAC.<br />
<br />
<br />
== Photos ==<br />
<br />
<gallery><br />
File:lcsoft-miniboard-front.png|<small>PCB, front</small><br />
File:lcsoft-fx2-pcb-top.png|<small>PCB, front</small><br />
File:lcsoft-miniboard-back.png|<small>PCB, back</small><br />
File:Lcsoft mini board ams1117.jpg|<small>A.M.S. AMS1117</small><br />
File:Lcsoft mini board at24c128a.jpg|<small>Atmel AT24C128A</small><br />
File:Lcsoft mini board crystal.jpg|<small>24MHz crystal</small><br />
File:Lcsoft mini board fx2.jpg|<small>Cypress FX2LP</small><br />
</gallery><br />
<br />
'''Geeetech version''':<br />
<br />
[http://www.geeetech.com/wiki/index.php/CY7C68013 Geeetech product page]<br />
<br />
<gallery><br />
File:Geeetech_CY7C68013.jpg|<small>Geeetech CY7C68013, front</small><br />
File:Geeetech_CY7C68013_back.jpg|<small>Geeetech CY7C68013, back</small><br />
</gallery><br />
<br />
Differences from the LCSoft board:<br />
* two LEDs, on pins PA0 and PA1<br />
* two jumpers: J1 connects/disconnects the LEDs from Vcc, J2 sets the EEPROM address bit A0<br />
* construction quality is higher<br />
<br />
The Geeetech board's J2 is logically opposite to the LCSoft board's jumper: pin A0 is tied HIGH via a 10kOhm resistor, inserting J2 pulls it LOW. i.e. inserting J2 on the Geeetech is functionally the same as removing the jumper on the LCSoft board.<br />
<br />
== Protocol ==<br />
<br />
Since we use the open-source [[fx2lafw]] firmware for this device, we don't need to know the protocol.<br />
<br />
== Possible issues ==<br />
<br />
* With some kernel versions, and if the onboard EEPROM is disconnected (the jumper not connected) the kernel will automatically claim the device with a '''usbtest''' kernel module, seen in dmesg like '''usbtest 2-2:1.0: FX2 device''' &mdash; if this happens, sigrok will be unable to claim the device. Remove the '''usbtest''' kernel module as root to be able to use it:<br />
<br />
$ '''sudo rmmod usbtest'''<br />
<br />
You can add the '''usbtest''' module to a module blacklist permanently, at least in Debian-based distributions found in '''/etc/modprobe.d/blacklist.conf''':<br />
<br />
$ '''sudo sh -c "echo 'blacklist usbtest' >> /etc/modprobe.d/blacklist.conf"'''<br />
<br />
== Required testing hardware extensions ==<br />
<br />
'''Do not directly hook the board pins to another circuit, if you don't know what you are doing! This could damage the board!'''<br />
<br />
The simplest circuit would be adding at least resistors in between your circuit-in-test and the Lcsoft board, but be aware here that the Cypress FX2(LP) chip can only tolerate a maximum of 5V I/O. Better would be to use a clamp circuit like shown at [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's Blog] (but you do not need to add another EEPROM for sigrok with [[fx2lafw]]!) (and this clamp circuit does not protect the chip from voltages < -0.5 V). A buffer circuit using a 74HC241 IC for protection is also possible. Check the [[fx2lafw]] page to see which protection circuits are used on other logic analyzer boards.<br />
<br />
More information can be found in [[Circuits for barebone boards]].<br />
<br />
== Resources ==<br />
<br />
* [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's blog: So your Saleae clone isn’t working with the new software?]<br />
* [http://hanixdiy.blogspot.de/2011/03/cy7c68013a-usb-logic-analyzer.html hAnix-diy: CY7C68013A USB Logic Analyzer]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/ Instructions for flashing the EEPROM on FX2 devices]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/fxload-full-2008_10_13-ww3.tar.gz Second stage bootloader, Vend_Ax.hex]<br />
<br />
[[Category:Device]]<br />
[[Category:Logic analyzer]]<br />
[[Category:Supported]]</div>Joe mblessahttps://sigrok.org/w/index.php?title=Lcsoft_Mini_Board&diff=14049Lcsoft Mini Board2019-01-26T21:30:07Z<p>Joe mblessa: Undo revision 14048 by Joe mblessa (talk)</p>
<hr />
<div>{{Infobox logic analyzer<br />
| image = [[File:lcsoft-miniboard-front.png|180px]]<br />
| name = Lcsoft Mini Board<br />
| status = supported<br />
| source_code_dir = fx2lafw<br />
| channels = 8/16<br />
| samplerate = 24MHz<br />
| samplerate_state = &mdash;<br />
| triggers = none (SW-only)<br />
| voltages = -0.5V &mdash; 5.25V<br />
| threshold = Fixed: VIH=2.0V&mdash;5.25V, VIL=-0.5V&mdash;0.8V<br />
| memory = none<br />
| compression = none<br />
| website = [http://www.lctech-inc.com/Hardware/Detail.aspx?id=7cadef7b-359a-4e3d-b980-76ffa15171e0 lctech-inc.com], [http://www.geeetech.com/wiki/index.php/CY7C68013 geeetech.com]<br />
}}<br />
<br />
The '''Lcsoft CY7C68013A Mini Board''' is a Cypress FX2(LP) eval board, which can be used as USB-based, 16-channel logic analyzer with up to 24MHz sampling rate.<br />
<br />
It is a clone of the [[Saleae Logic]].<br />
<br />
In sigrok, we use the open-source [[fx2lafw]] firmware for this logic analyzer.<br />
<br />
See [[Lcsoft Mini Board/Info]] for some more details (such as '''lsusb -v''' output) on the device.<br />
<br />
There is a very similar board made by Geeetech, it has near-identical components but a slightly different layout.<br />
<br />
== Hardware ==<br />
<br />
* '''Main chip''': Cypress CY7C68013A-56PVXC (FX2LP)<br />
* '''3.3V voltage regulator''': Advanced Monolithic Systems AMS1117-3.3<br />
* '''16kB I2C EEPROM''': Atmel AT24C128A<br />
* '''24MHz crystal''': JY24.0000601<br />
<br />
All the pins on the FX2(LP) are broken out to 40 header pins. There's an on/off toggle switch, a reset button, and a jumper that lets you select whether the FX2LP gets its configuration from a small EEPROM, or boots into the default mode. The EEPROM is usually provided programmed such that it enumerates with the same VID:PID as a [[Saleae Logic]].<br />
<br />
By default the chip will boot in some internal bootloader which allows loading (and executing) from USB to the internal RAM. Sigrok will typically use the [[fx2lafw]] firmware for this (aka "load-on-probe").<br />
<br />
The EEPROM can be programmed with a firmware. The jumper allows to select whether the chip will boot on the EEPROM or the usual load-on-probe. This can be used for example to switch easily between a 16-channel (PB0-PB7, PD0-PD7) firmware and a 8-channel (PB0-PB7) one.<br />
<br />
The Cypress has no DAC and can't by itself have any analog output. Other Cypress-based board have an external DAC, typically connected to 8 pins of the FX2, but this very one doesn't have any DAC.<br />
<br />
<br />
== Photos ==<br />
<br />
<gallery><br />
File:lcsoft-miniboard-front.png|<small>PCB, front</small><br />
File:lcsoft-fx2-pcb-top.png|<small>PCB, front</small><br />
File:lcsoft-miniboard-back.png|<small>PCB, back</small><br />
File:Lcsoft mini board ams1117.jpg|<small>A.M.S. AMS1117</small><br />
File:Lcsoft mini board at24c128a.jpg|<small>Atmel AT24C128A</small><br />
File:Lcsoft mini board crystal.jpg|<small>24MHz crystal</small><br />
File:Lcsoft mini board fx2.jpg|<small>Cypress FX2LP</small><br />
</gallery><br />
<br />
'''Geeetech version''':<br />
<br />
[http://www.geeetech.com/wiki/index.php/CY7C68013 Geeetech product page]<br />
<br />
<gallery><br />
File:Geeetech_CY7C68013.jpg|<small>Geeetech CY7C68013, front</small><br />
File:Geeetech_CY7C68013_back.jpg|<small>Geeetech CY7C68013, back</small><br />
</gallery><br />
<br />
Differences from the LCSoft board:<br />
* two LEDs, on pins PA0 and PA1<br />
* two jumpers: J1 connects/disconnects the LEDs from Vcc, J2 sets the EEPROM address bit A0<br />
* construction quality is higher<br />
<br />
The Geeetech board's J2 is logically opposite to the LCSoft board's jumper: pin A0 is tied HIGH via a 10kOhm resistor, inserting J2 pulls it LOW. i.e. inserting J2 on the Geeetech is functionally the same as removing the jumper on the LCSoft board.<br />
<br />
== Protocol ==<br />
<br />
Since we use the open-source [[fx2lafw]] firmware for this device, we don't need to know the protocol.<br />
<br />
== Possible issues ==<br />
<br />
* With some kernel versions, and if the onboard EEPROM is disconnected (the jumper not connected) the kernel will automatically claim the device with a '''usbtest''' kernel module, seen in dmesg like '''usbtest 2-2:1.0: FX2 device''' &mdash; if this happens, sigrok will be unable to claim the device. Remove the '''usbtest''' kernel module as root to be able to use it:<br />
<br />
$ '''sudo rmmod usbtest'''<br />
<br />
You can add the '''usbtest''' module to a module blacklist permanently, at least in Debian-based distributions found in '''/etc/modprobe.d/blacklist.conf''':<br />
<br />
$ '''sudo sh -c "echo 'blacklist usbtest' >> /etc/modprobe.d/blacklist.conf"'''<br />
<br />
== Required testing hardware extensions ==<br />
<br />
'''Do not directly hook the board pins to another circuit, if you don't know what you are doing! This could damage the board!'''<br />
<br />
The simplest circuit would be adding at least resistors in between your circuit-in-test and the Lcsoft board, but be aware here that the Cypress FX2(LP) chip can only tolerate a maximum of 5V I/O. Better would be to use a clamp circuit like shown at [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's Blog] (but you do not need to add another EEPROM for sigrok with [[fx2lafw]]!). A buffer circuit using a 74HC241 IC for protection is also possible. Check the [[fx2lafw]] page to see which protection circuits are used on other logic analyzer boards.<br />
<br />
More information can be found in [[Circuits for barebone boards]].<br />
<br />
== Resources ==<br />
<br />
* [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's blog: So your Saleae clone isn’t working with the new software?]<br />
* [http://hanixdiy.blogspot.de/2011/03/cy7c68013a-usb-logic-analyzer.html hAnix-diy: CY7C68013A USB Logic Analyzer]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/ Instructions for flashing the EEPROM on FX2 devices]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/fxload-full-2008_10_13-ww3.tar.gz Second stage bootloader, Vend_Ax.hex]<br />
<br />
[[Category:Device]]<br />
[[Category:Logic analyzer]]<br />
[[Category:Supported]]</div>Joe mblessahttps://sigrok.org/w/index.php?title=Lcsoft_Mini_Board&diff=14048Lcsoft Mini Board2019-01-26T21:29:13Z<p>Joe mblessa: </p>
<hr />
<div>{{Infobox logic analyzer<br />
| image = [[File:lcsoft-miniboard-front.png|180px]]<br />
| name = Lcsoft Mini Board<br />
| status = supported<br />
| source_code_dir = fx2lafw<br />
| channels = 8/16<br />
| samplerate = 24MHz<br />
| samplerate_state = &mdash;<br />
| triggers = none (SW-only)<br />
| voltages = -0.5V &mdash; 5.25V<br />
| threshold = Fixed: VIH=2.0V&mdash;5.25V, VIL=-0.5V&mdash;0.8V<br />
| memory = none<br />
| compression = none<br />
| website = [http://www.lctech-inc.com/Hardware/Detail.aspx?id=7cadef7b-359a-4e3d-b980-76ffa15171e0 lctech-inc.com], [http://www.geeetech.com/wiki/index.php/CY7C68013 geeetech.com]<br />
}}<br />
<br />
The '''Lcsoft CY7C68013A Mini Board''' is a Cypress FX2(LP) eval board, which can be used as USB-based, 16-channel logic analyzer with up to 24MHz sampling rate.<br />
<br />
It is a clone of the [[Saleae Logic]].<br />
<br />
In sigrok, we use the open-source [[fx2lafw]] firmware for this logic analyzer.<br />
<br />
See [[Lcsoft Mini Board/Info]] for some more details (such as '''lsusb -v''' output) on the device.<br />
<br />
There is a very similar board made by Geeetech, it has near-identical components but a slightly different layout.<br />
<br />
== Hardware ==<br />
<br />
* '''Main chip''': Cypress CY7C68013A-56PVXC (FX2LP)<br />
* '''3.3V voltage regulator''': Advanced Monolithic Systems AMS1117-3.3<br />
* '''16kB I2C EEPROM''': Atmel AT24C128A<br />
* '''24MHz crystal''': JY24.0000601<br />
<br />
All the pins on the FX2(LP) are broken out to 40 header pins. There's an on/off toggle switch, a reset button, and a jumper that lets you select whether the FX2LP gets its configuration from a small EEPROM, or boots into the default mode. The EEPROM is usually provided programmed such that it enumerates with the same VID:PID as a [[Saleae Logic]].<br />
<br />
By default the chip will boot in some internal bootloader which allows loading (and executing) from USB to the internal RAM. Sigrok will typically use the [[fx2lafw]] firmware for this (aka "load-on-probe").<br />
<br />
The EEPROM can be programmed with a firmware. The jumper allows to select whether the chip will boot on the EEPROM or the usual load-on-probe. This can be used for example to switch easily between a 16-channel (PB0-PB7, PD0-PD7) firmware and a 8-channel (PB0-PB7) one.<br />
<br />
The Cypress has no DAC and can't by itself have any analog output. Other Cypress-based board have an external DAC, typically connected to 8 pins of the FX2, but this very one doesn't have any DAC.<br />
<br />
<br />
== Photos ==<br />
<br />
<gallery><br />
File:lcsoft-miniboard-front.png|<small>PCB, front</small><br />
File:lcsoft-fx2-pcb-top.png|<small>PCB, front</small><br />
File:lcsoft-miniboard-back.png|<small>PCB, back</small><br />
File:Lcsoft mini board ams1117.jpg|<small>A.M.S. AMS1117</small><br />
File:Lcsoft mini board at24c128a.jpg|<small>Atmel AT24C128A</small><br />
File:Lcsoft mini board crystal.jpg|<small>24MHz crystal</small><br />
File:Lcsoft mini board fx2.jpg|<small>Cypress FX2LP</small><br />
</gallery><br />
<br />
'''Geeetech version''':<br />
<br />
[http://www.geeetech.com/wiki/index.php/CY7C68013 Geeetech product page]<br />
<br />
<gallery><br />
File:Geeetech_CY7C68013.jpg|<small>Geeetech CY7C68013, front</small><br />
File:Geeetech_CY7C68013_back.jpg|<small>Geeetech CY7C68013, back</small><br />
</gallery><br />
<br />
Differences from the LCSoft board:<br />
* two LEDs, on pins PA0 and PA1<br />
* two jumpers: J1 connects/disconnects the LEDs from Vcc, J2 sets the EEPROM address bit A0<br />
* construction quality is higher<br />
<br />
The Geeetech board's J2 is logically opposite to the LCSoft board's jumper: pin A0 is tied HIGH via a 10kOhm resistor, inserting J2 pulls it LOW. i.e. inserting J2 on the Geeetech is functionally the same as removing the jumper on the LCSoft board.<br />
<br />
== Protocol ==<br />
<br />
Since we use the open-source [[fx2lafw]] firmware for this device, we don't need to know the protocol.<br />
<br />
== Possible issues ==<br />
<br />
* With some kernel versions, and if the onboard EEPROM is disconnected (the jumper not connected) the kernel will automatically claim the device with a '''usbtest''' kernel module, seen in dmesg like '''usbtest 2-2:1.0: FX2 device''' &mdash; if this happens, sigrok will be unable to claim the device. Remove the '''usbtest''' kernel module as root to be able to use it:<br />
<br />
$ '''sudo rmmod usbtest'''<br />
<br />
You can add the '''usbtest''' module to a module blacklist permanently, at least in Debian-based distributions found in '''/etc/modprobe.d/blacklist.conf''':<br />
<br />
$ '''sudo sh -c "echo 'blacklist usbtest' >> /etc/modprobe.d/blacklist.conf"'''<br />
<br />
== Required testing hardware extensions ==<br />
<br />
'''Do not directly hook the board pins to another circuit, if you don't know what you are doing! This could damage the board!'''<br />
<br />
The simplest circuit would be adding at least resistors in between your circuit-in-test and the Lcsoft board, but be aware here that the Cypress FX2(LP) chip can only tolerate a maximum of 5V I/O. Better would be to use a clamp circuit like shown at [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's Blog] (but you do not need to add another EEPROM for sigrok with [[fx2lafw]]!) (and this does not protect you from Voltages < -0.5 V). A buffer circuit using a 74HC241 IC for protection is also possible. Check the [[fx2lafw]] page to see which protection circuits are used on other logic analyzer boards.<br />
<br />
More information can be found in [[Circuits for barebone boards]].<br />
<br />
== Resources ==<br />
<br />
* [http://web.archive.org/web/20140604115345/http://sunbizhosting.co.uk/~spiral/blog/?p=117 Spiralbrain's blog: So your Saleae clone isn’t working with the new software?]<br />
* [http://hanixdiy.blogspot.de/2011/03/cy7c68013a-usb-logic-analyzer.html hAnix-diy: CY7C68013A USB Logic Analyzer]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/ Instructions for flashing the EEPROM on FX2 devices]<br />
* [http://www.triplespark.net/elec/periph/USB-FX2/eeprom/fxload-full-2008_10_13-ww3.tar.gz Second stage bootloader, Vend_Ax.hex]<br />
<br />
[[Category:Device]]<br />
[[Category:Logic analyzer]]<br />
[[Category:Supported]]</div>Joe mblessa