I haven't used one with an Arduino, but I have torn one apart (a ~15 year old Minn Kota) and used an off-the-shelf speed controller with it.
Mine had an odd three-wire scheme leading to the motor. It was not a like a typical brushed or brushless motor; supplying DC to two of the wires would make it go forward but reversing the polarity would not make it go backwards (?).