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