Specifications

Processing unit

  • Pulse Pal 1: ARM Cortex M3, 72MHz clock speed, 32 bit (LeafLabs Maple)

  • Pulse Pal 2: ARM Cortex M3, 84MHz, 32 bit (Arduino Due)

  • Programmable in the Arduino language for custom applications

Trigger channels

  • Trigger on rising phase of TTL trigger pulses (2.5V-6V)

  • Each trigger channel is software-linkable to control any set of output channels

  • Optically isolated for protection

Output channels

  • Pulse Pal 1.X: 8-bit bipolar voltage DAC (-10V to +10V, 78mV increments)

  • Pulse Pal 2: 12-bit bipolar voltage DAC (-10V to +10V, 5mV increments)

  • 10mA short-circuit current, >2kΩ load for specified performance

  • Voltage updated every 100μs

Display

  • High contrast oLED character display is visible from 160 degrees

  • Permits device configuration and manual triggering with thumb joystick

Channel activity indicators

  • Blue LEDs above each channel indicate when channel voltage is not set to a programmable resting voltage (i.e. light indicates pulses)

Power

  • +5V USB mini B

  • Power can be drawn from a computer (recommended) or USB accessory charger. Note: some chargers do not supply enough current, and may also result in increased output channel noise and oLED display misbehavior.

  • For portable use and total isolation, Pulse Pal can be powered from a USB battery (for example, EasyAcc's Power Bank)

  • On-board integrated voltage converter supplies +/-12V to the DAC

Memory

  • Pulse Pal 1.X: 32KB EEPROM stores channel parameters and configuration across power cycles

  • Pulse Pal 2: channel parameters can be stored on files on a microSD card.

Programming language support

  • C++

  • Python

  • MATLAB

  • GNU/Octave

Enclosure

  • Laser cut acrylic with engraved labels

  • Rack mount wing attaches to either side of device

Material safety

  • Pulse Pal's parts are all lead free, and Pulse Pal is ROHS compliant when assembled with lead-free solder

Material cost

  • ~$210 + shipping when ordering parts for a single Pulse Pal