laanwj / k210-sdk-stuff

Kendryte K210 / MaixGo stuff
ISC License
141 stars 31 forks source link

Flashing firmware #1

Closed thepian closed 5 years ago

laanwj commented 5 years ago

I think you're right, for the other K210-based boards except the Maix Go, from kflash.py:

if args.Board == "dan" or args.Board == "bit" or args.Board == "kd233"
    print(INFO_MSG,"CH340 mode", BASH_TIPS['DEFAULT'])

I was looking at the Maix board which uses a STM32F103C8 for this purpose and, as according to the schematic, doesn't pass USB to the Sipeed M1 module at all, it goes to the STM. I think the reason for this is that this setup allows access to both UART and JTAG through the same USB port.

Might want to mention this.

thepian commented 5 years ago

Good point. From what I have read that sounds correct. The Kendryte board is clearly documented to have CH340 for the USB connection. It seems that Sipeed just too the core of the kd233 and squashed it producing M1. Then when they made the Go they realised that people wanted JTAG.

laanwj commented 5 years ago

Yepp exactly. It's kind of funny, because they picked a micro-controller to handle that, people want use JTAG with that too—to upgrade the firmware, mostly, but also the analog pins (ADC0, ADC1) run to it so it might be needed in some designs. That, in turn, requires an external JTAG interface again. But at least the K210 firmware can be fully debugged through USB now, that's convenient.