I recently started building my own drivers. Even though it was not the easiest of tasks I found the results to be very rewarding. Especially if you need multiple drivers it is cheaper building them yourself.
The most difficult aspect (for me) was the size of some parts, it was very difficult for me to even see some of them or even read whats on them. a magnifier helped.
you can have any outputs you flash onto them, if the firmware is compatible with the driver. But even changing the firmware and adjusting the values is not that difficult.
edit:
have a look at this thread:
Oshpark Projects (oshpark projects @ BLF)