Sanworks has a whole series of devices for behavior experiments. Everything is open source and well documented. You can also pay them to assemble the devices if you choose.
They have also created a pulse generator called the PulsePal, and Arduino Due-powered device offering 2 trigger channels and 4 output channels (minimum pulse width 100 us).
Hat tip to Boaz Mohar (to contact him, his email address is his name– no space– at gmail).