blob: e950fd055e995bd9950ba3d7cee2062c39c0c8de (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# CH573F
## Background
The CH573F is a relatively new, little micro controller powered off a 32-bit
Risc-V core. It's a Chinese board with tenuous support with existing
infrastructure, but they are dirt-cheap on Ali Express with
not-impossible-to-read documentation. This makes it prime real-estate for some
bare-metal hacking. One can find them [here](https://www.aliexpress.us/item/3256804723616466.html).
## Setup
To compile this project, one needs a riscv32 cross compiler. These can be built
with ct-ng. Describing this processes is outside the scope of this document, but it
can be done.
You should then have a cross-compiler with a tuple like
`riscv32-arm-unknown-elf`, which is the tuple this project expects.
## Compilation
To compile, just run make. There are no build dependencies at the moment.
## Flashing
Flashing this project is more difficult as the offical method for flashing uses
proprietary-garbage. Luckily there's an open-source solution at
https://github.com/frank-zago/isp55e0. So one needs to build that project and
flash using it.
The board can be fickle at times, but I got the flashing procedure down consistently.
To flash you,
1. Disconnect the board from the USB
2. Hold the BOOT button, and plug the board back in (while stil holding BOOT!)
3. run `make flash` (Still hold BOOT!)
once make flash is complete, the board should immediately reset and start blinking.
|