relacs

Relaxed Electrophysiological Data Acquisition,
Control, and Stimulation

... enjoy your recordings

CS3310DIO  [Attenuator]  [Att-CS3310 Plugins]

Control the cs3310 attenuator via a DigitalIO device

Author
Jan Benda
Version
2.0 (Jan 5, 2017)
Technicals by Hartmut Schuetze

First, the CS-signal has to be set low to adress the chip. Then, the data are presented at the DATAOUT-pin, and are strobed via the STROBE-Signal into the chip. Repeat this for all the bits we want to transfer. After this, we wait a little before we reset the CS-signal back to high. The MUTE-signal mutes the chip (.. who would have guessed...?), but without changing the set attenuation. Additionally, if you leave MUTE low for more than 2 ms, the CS 3310 recalibrates itself. The ZCEN-signal means zero crossing detection enable, and does exactly this. If it is set, the chip waits for the next zero crossing of the signal before changing to the new attenuation. This reduces clicking (for you HiFi-proffesionals out there...), and is a really elegant feature. If there are no zero crossing, the setting changes are forced after 18 ms.

Options
  • zerocrossing: set attenuation level only at a zero crossing of the input.
  • cspin: dio line for chip select (CS).
  • dataoutpin: dio line for writing data to the chip (DATAOUT).
  • datainpin: dio line for reading data from the chip (DATAIN).
  • strobepin: dio line for strobing data (STROBE).
  • mutepin: dio line for MUTE.
  • zcenpin: dio line for enabling zero crossing (ZCEN).

CS3310NIDIO  [Attenuator]  [Att-CS3310 Plugins]

Control the cs3310 attenuator via the nieseries/nidio software timed digital IO

Author
Jan Benda
Version
1.1
Note
This plugin is as obsolete as the plugins from the nieseries plugin set.
Technicals by Hartmut Schuetze

Module for the programming of the CS 3310 attenuator chip, connected to the parallel port. this connection has the great advantage that one can use the status bit and several data bits to supply the necessary signals to the chip. First, the CS-signal (Pin 14 SPP, Pin 2 chip) has to be set low to adress the chip. Then, the data are presented at the D0 Pin (dataport 0 / pin 2 of the SPP, Pin 3 on the chip), and are strobed via the SCLK-Signal (Pin 1 SPP, Pin 6 chip) into the chip. repeat this for all the bits we want to transfer. After this, we wait a little before we reset the CS-signal back to high. Attention: the strobe bit and the status bit 1 are inverted at the SPP!. The timing we use here could perhaps be faster, but the 2 meters of parallel cable make the signal flanks look really sloppy, then.. nevertheless, these signals are recognised by the chip from their rising slopes (rising flank, not level triggering), so this should be no problem... anyway, we have time enough. The MUTE-signal mutes the chip (.. who would have guessed...?), but without changing the set attenuation. it is active when Pin 8 is LOW. Additionally, if you leave MUTE low for more than 2 ms, the CS 3310 recalibrates itself. :-) The ZCEN-signal means zero crossing detection enable, and does exactly this. If it is set, the chip waits for the next zero crossing of the signal before changing to the new attenuation. This reduces clicking (for you HiFi-proffesionals out there...), and is a really elegant feature. If there are no zero crossing, the setting changes are forced after 18 ms.

CS3310PP  [Attenuator]  [Att-CS3310 Plugins]

Control the cs3310 attenuator via the Linux ppdev parallel-port device driver.

Author
Jan Benda
Version
1.1
Installation

Make sure that you have read and write permissions on /dev/parport0! Either do a "chmod a+rw /dev/parport0" manually, place it in rc.local (bad) or make yourself member of the group /dev/parport0 belongs to using vigr (better) or check /etc/udev/rules.d and /etc/security/console.perms (best).

/etc/security/console.perms transfers the ownership of devices to the one that is logged in. You need the following lines in /etc/security/console.perms or a file in /etc/security/console.perms.d/ :

<paralellport>=/dev/parport[0-7]
<console> 0600 <paralellport> 0660 root.lp

For manipulating udev, create a file /etc/udev/rules.d/20-local.rules with the following content:

KERNEL=="parport*", GROUP="lp", MODE="0666"

However, this is overwritten by console.perms.

Technicals by Hartmut Schuetze

Module for the programming of the CS 3310 attenuator chip, connected to the parallel port. this connection has the great advantage that one can use the status bit and several data bits to supply the necessary signals to the chip. First, the CS-signal (Pin 14 SPP, Pin 2 chip) has to be set low to adress the chip. Then, the data are presented at the D0 Pin (dataport 0 / pin 2 of the SPP, Pin 3 on the chip), and are strobed via the SCLK-Signal (Pin 1 SPP, Pin 6 chip) into the chip. repeat this for all the bits we want to transfer. After this, we wait a little before we reset the CS-signal back to high. Attention: the strobe bit and the status bit 1 are inverted at the SPP!. The timing we use here could perhaps be faster, but the 2 meters of parallel cable make the signal flanks look really sloppy, then.. nevertheless, these signals are recognised by the chip from their rising slopes (rising flank, not level triggering), so this should be no problem... anyway, we have time enough. The MUTE-signal mutes the chip (.. who would have guessed...?), but without changing the set attenuation. it is active when Pin 8 is LOW. Additionally, if you leave MUTE low for more than 2 ms, the CS 3310 recalibrates itself. :-) The ZCEN-signal means zero crossing detection enable, and does exactly this. If it is set, the chip waits for the next zero crossing of the signal before changing to the new attenuation. This reduces clicking (for you HiFi-proffesionals out there...), and is a really elegant feature. If there are no zero crossing, the setting changes are forced after 18 ms.

CS3310SerialNIDIO  [Attenuator]  [Att-CS3310 Plugins]

Control the cs3310 attenuator via the nieseries/nidio serial digital IO

Author
Jan Benda
Version
1.1
Note
This plugin is as obsolete as the plugins from the nieseries plugin set.
Technicals by Hartmut Schuetze

Module for the programming of the CS 3310 attenuator chip, connected to the parallel port. this connection has the great advantage that one can use the status bit and several data bits to supply the necessary signals to the chip. First, the CS-signal (Pin 14 SPP, Pin 2 chip) has to be set low to adress the chip. Then, the data are presented at the D0 Pin (dataport 0 / pin 2 of the SPP, Pin 3 on the chip), and are strobed via the SCLK-Signal (Pin 1 SPP, Pin 6 chip) into the chip. repeat this for all the bits we want to transfer. After this, we wait a little before we reset the CS-signal back to high. Attention: the strobe bit and the status bit 1 are inverted at the SPP!. The timing we use here could perhaps be faster, but the 2 meters of parallel cable make the signal flanks look really sloppy, then.. nevertheless, these signals are recognised by the chip from their rising slopes (rising flank, not level triggering), so this should be no problem... anyway, we have time enough. The MUTE-signal mutes the chip (.. who would have guessed...?), but without changing the set attenuation. it is active when Pin 8 is LOW. Additionally, if you leave MUTE low for more than 2 ms, the CS 3310 recalibrates itself. :-) The ZCEN-signal means zero crossing detection enable, and does exactly this. If it is set, the chip waits for the next zero crossing of the signal before changing to the new attenuation. This reduces clicking (for you HiFi-proffesionals out there...), and is a really elegant feature. If there are no zero crossing, the setting changes are forced after 18 ms.

*  [Attenuator]  [Att-CS3310 Plugins]

Last modified: Wed Jun 13 16:31:38 CEST 2018 Valid HTML 4.01 Transitional