I wrote a simple I2C driver to replace the elaborate vendor supplied one that I could not get working. The motor drivers now power up and configure correctly, and the motor current programs correctly. Hooked up a motor, and it moves as expected. Had to order some screw terminal strips on Friday, as the ones that I ordered originally had the wrong footprint (0.200" spacing, needed 0.100" spacing). When the new terminal strips arrive, I will check out operation with all 3 motors active.
Wrote and debugged an interrupt driven serial port driver to handle both serial interfaces in use.
Checked out the limit switch input conditioning, and it passes signals to the expected GPIO ports on the MCU.
The hardware checkout is pretty much done with only 2 cut/jumpers on a rev 1 board.
The next phase of this project is going to be mostly writing and debugging firmware. The board is going to drive a 3 axis antenna rotator for talking to amateur radio satellites. The software that I am using to predict the satellite position (GPredict) will communicate via the EZComm 2 protocol over a serial port. The firmware will parse the EZComm 2 protocol and translate the absolute angular position to relative move distances for the step motors. There will be a few custom commands added for diagnostics like checking the states of the limit switches and monitoring the power supply input voltage.