Skip to content

Commit 2f9abdb

Browse files
committed
stm32/boards/STM32H747I_DISCO: Add board README with Ethernet limitation note.
Documents board features, pin configuration, and important Ethernet hardware limitation due to ETH_MDC/SAI4_D1 pin conflict requiring board modification. Includes build, flash, and testing instructions. Signed-off-by: Andrew Leech <[email protected]>
1 parent 42cc7a8 commit 2f9abdb

File tree

1 file changed

+102
-0
lines changed

1 file changed

+102
-0
lines changed
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
# STM32H747I-DISCO Board
2+
3+
STMicroelectronics STM32H747I-DISCO development board with STM32H747XI dual-core MCU.
4+
5+
## Features
6+
7+
- STM32H747XIH6 microcontroller
8+
- Arm Cortex-M7 @ 480 MHz + Cortex-M4 @ 240 MHz
9+
- 2 MB Flash, 1 MB RAM
10+
- 32 MB external SDRAM
11+
- Connectivity
12+
- USB High-Speed via ULPI PHY (USB3320)
13+
- USB Full-Speed
14+
- Ethernet RMII (LAN8742A PHY) - **requires hardware modification**
15+
- microSD card slot (8-bit SDMMC1)
16+
- Display
17+
- 4" capacitive touchscreen LCD (480×272)
18+
- Audio
19+
- WM8994 codec with line in/out, headphone, speaker, microphone
20+
- 2x digital MEMS microphones
21+
- Other peripherals
22+
- 2× user LEDs
23+
- 1× user button + reset button
24+
- Arduino Uno V3 expansion connector
25+
- PMOD connector
26+
- Onboard ST-LINK/V3
27+
28+
## Pin Configuration
29+
30+
Default pin assignments:
31+
32+
- UART1: PA9 (TX), PA10 (RX) - Connected to ST-LINK VCP
33+
- USB_HS: ULPI interface on PA3, PA5, PB0, PB1, PB5, PB10-13, PC0, PH4, PI11
34+
- I2C4: PD12 (SCL), PD13 (SDA) - WM8994 audio codec
35+
- SPI5: PF7 (SCK), PF8 (MISO), PF9 (MOSI), PF6 (CS)
36+
- UART8: PJ8 (TX), PJ9 (RX)
37+
- SD Card: 8-bit SDMMC1 interface on PC6-12, PB8-9, PD2
38+
39+
## Ethernet Hardware Limitation
40+
41+
**Important:** The Ethernet interface is not functional with the default board configuration due to a pin conflict between ETH_MDC (PC1) and SAI4_D1 (digital MEMS microphone). A hardware modification is required to disconnect the MEMS microphone from PC1 to enable Ethernet functionality. Refer to the STM32H747I-DISCO user manual (UM2411) for details on the required modification.
42+
43+
## Building Firmware
44+
45+
```bash
46+
cd ports/stm32
47+
make BOARD=STM32H747I_DISCO
48+
```
49+
50+
## Flashing Firmware
51+
52+
Using STM32CubeProgrammer (recommended):
53+
```bash
54+
STM32_Programmer_CLI -c port=SWD mode=UR -w build-STM32H747I_DISCO/firmware.elf -v -rst
55+
```
56+
57+
Using st-flash:
58+
```bash
59+
st-flash write build-STM32H747I_DISCO/firmware.bin 0x08000000
60+
```
61+
62+
## Console Access
63+
64+
The board provides two independent console options:
65+
66+
1. **ST-LINK V3 UART** (recommended):
67+
- Device: /dev/ttyACM* (Linux), COM* (Windows)
68+
- Baudrate: 115200
69+
- Always available regardless of USB state
70+
71+
2. **USB CDC serial**:
72+
- Requires USB cable connected
73+
- Provides MicroPython REPL
74+
75+
Using mpremote:
76+
```bash
77+
mpremote connect /dev/ttyACM5 # Adjust device as needed
78+
```
79+
80+
## Testing
81+
82+
The board includes a test suite for verifying hardware functionality:
83+
84+
```python
85+
# Run automated tests
86+
import run_all_tests
87+
run_all_tests.run_automated()
88+
89+
# Run manual tests (requires user interaction)
90+
run_all_tests.run_manual()
91+
```
92+
93+
Test coverage:
94+
- I2C (WM8994 codec)
95+
- ADC (3 channels)
96+
- SPI
97+
- UART
98+
- SD card
99+
- Ethernet (requires hardware modification)
100+
- DAC
101+
- PWM/Timers
102+
- LEDs and buttons

0 commit comments

Comments
 (0)