I wish I could answer every question, but at this moment the hardware is not fully opened. We seriusly consider opening the hardware and this will also depend on the voice of the community. Even if we don't open the hardware, we provide the documentation needed to create custom add-ons.
No need to be so secretive, especially on this forum, you are not designing a 100 GHz scope. You'll have to open the design at some point, because what if I want to write bare-metal STM32F4 code, without your RTOS/API/MicroPython.
We use DMOS drivers with 1.3A maximum continuous current, 2.5A max peak current and 0.75ohm total resistance. The drivers don't have active rectification function or built-in overcurrent protection, but they are still much better than LB1836 used in LEGO NXT/EV3.
Hmm, not great. Without synchronous rectification you should have freewheel Schottky diodes. Have you considered using DRV8814 or something similar (I think ST has nice motor drivers as well)?
The strong point of our system is the hardware quadrature encoder interface for each motor.
This is the strong point of STM32 timer peripheral
and that's why I like them so much for robotic applications.
I wanted to ask what's the interface between Edison and STM32F4? Do you have STM32's ISP UART and BOOT0+RESET pins connected to Edison to allow in system firmware upgrade? If I have 45 of these boards "in the field" I don't want to take them one by one and reflash via SWD or FTDI.
I'm asking these questions because I'm really interested in replacing the current setup for our robotics course (RPi + shameful LEGO interface). The thing is that 150 computer science students (not EEE) are unbelievable testers and the boards operate in very harsh conditions
The device needs to have some ESD protection, overcurrent, reverse polarity probably, what would happen if you connected LEGO sensor to a motor port and vice versa, and as I mentioned firmware upgrade in the field (from Edison).
Now, with SN754410 driver that I have to live with now, it is either (depending on how much current the battery can provide) undervoltage, brownout and in effect RPi reset, or the drivers go pop if the battery/power supply can provide > 1.5A.
What I'm saying is that even if I connect your board to my HP server 12V power supply (100A no problem) or a big LiPo pack and toggle the motor direction fast at full speed (huge current spike) or stall the motor nothing should get permanently broken and both Edison and STM32 shouldn't reset.