docs: reorganize hardware docs

- delete most of the files since they are maintained in the hardware repo
  (https://github.com/trezor/trezor-hardware)
- move docs/hardware/model-one/* to docs/legacy
- move docs/hardware/model-t/* to docs/core/misc

[no changelog]
pull/2816/head
Pavol Rusnak 1 year ago committed by matejcik
parent b2be58c6d2
commit bfda33dddc

@ -12,19 +12,16 @@
- [Debugging on hardware](core/embed_debug/index.md)
- [SystemView instrumentation](core/systemview/index.md)
- [Miscellaneous](core/misc/index.md)
- [Boot stages](core/misc/boot.md)
- [Code style](core/misc/codestyle.md)
- [Memory layout](core/misc/memory.md)
- [SLIP-39](core/misc/slip0039.md)
- [Exceptions usage](core/misc/exceptions.md)
- [Memory fragmentation management](core/misc/fragmentation.md)
- [Legacy](legacy/index.md)
- [Firmware format](legacy/firmware-format.md)
- [Python](python/index.md)
- [trezorlib](python/trezorlib.md)
- [Hardware](hardware/index.md)
- [Model T](hardware/model-t/index.md)
- [Boot stages](hardware/model-t/boot.md)
- [Memory layout](hardware/model-t/memory.md)
- [Model One](hardware/model-one/index.md)
- [Firmware format](hardware/model-one/firmware-format.md)
- [Common](common/index.md)
- [Communication](common/communication/index.md)
- [Sessions](common/communication/sessions.md)

@ -1,5 +0,0 @@
# Model One
To be documented.
In the meantime check out these great write-ups from @mcudev: https://mcudev.github.io.

@ -1,109 +0,0 @@
Part Value Device Package Description
C1 1n/50V C_0402 0402
C2 22p C_0402 0402
C3 22p C_0402 0402
C4 1u C_0603$REFLOW 0603_REFLOW
C5 1u C_0603 0603
C6 10n C_0402 0402
C7 100n C_0402 0402
C8 10n C_0402 0402
C9 100n C_0402 0402
C10 100n C_0402 0402
C11 1n C_0402 0402
C12 2u2 C_0805$REFLOW 0805_REFLOW
C13 2u2 C_0805$REFLOW 0805_REFLOW
C14 4u7/16V C_0805$REFLOW 0805_REFLOW
C15 4u7/16V C_0805$REFLOW 0805_REFLOW
C16 100n C_0402 0402
C18 100n C_0402 0402
C19 1u C_0603 0603
C20 100n C_0402 0402
C21 100n C_0402 0402
C22 1u C_0603 0603
C23 10n C_0402 0402
C24 100n C_0402 0402
C25 1n/50V C_0402 0402
C26 10n C_0402 0402
C27 100n C_0402 0402
C28 100n C_0402 0402
C29 100n C_0402 0402
C30 10n C_0402 0402
C31 100n C_0402 0402
C32 10n C_0402 0402
C33 1n C_0402 0402
C34 2u2 C_0805$REFLOW 0805_REFLOW
C36 47p C_0402 0402
C37 47p C_0402 0402
C38 47p C_0402 0402
C39 47p C_0402 0402
C40 47p C_0402 0402
C41 100n C_0402 0402
C42 1n C_0402 0402
C43 47p C_0402 0402
C44 100n C_0402 0402
C45 2u2 C_0805$REFLOW 0805_REFLOW
C46 1n C_0402 0402
C47 1n C_0402 0402
C48 10n C_0402 0402
C49 10n C_0402 0402
C50 10n C_0402 0402
D1 PMEG3005 DS_SOD323F SOD323F
D2 PESD5V0F1BLD D_TRANSIL_BI_SOD882D SOD882D
D3 PRTR5V0U2X PRTR5V0_SOT143B$REFLOW SOT143B_REFLOW
D4 PESD5V0F1BLD D_TRANSIL_BI_SOD882D SOD882D
D6 PMEG4005 DS_SOD323F SOD323F
IC2 STM32F427VIT6 STM32F427_LQFP100 LQFP100_NO_CENTER_NO_TDOCU
IC5 TPS61043 TP6104X_WSON-8_3X3MM WSON-8_3X3MM
IC6 XC6210B332PR XC6210B_SOT89-5 SOT89-5
K1 DX07B024XJ1R1300 USB-C_JAE_DX07B024XJ1 USB_C_JAE_DX07B024XJ1
K3 ATTEND_112J-TDAR-R01 KON_µSD_CARD_ATTEND_112J_TXAR_R01_SMALL ATTEND_112J-TXAR-R01_SMALL
K4 DF37NB-24DS-0.4V DISPLEJ_154A2411CTP01 DF37NB-24DS-0.4V
K5 SWD SWD SWD
K6 DF37NB-10DS-0.4V DISPLEJ_154A2411CTP01_TOUCH DF37NB-10DS-0.4V
L1 4u7 VLS252008ET-4R7M L_2.5X2.0 L_2.5X2.0
L2 BLM18AG102SN1D L_0603$REFLOW 0603_REFLOW
L3 BLM18AG102SN1D L_0603$REFLOW 0603_REFLOW
L4 BLM18AG102SN1D L_0603$REFLOW 0603_REFLOW
LCD1 LCD_DISPLEJ LCD
MB1 MB_1.27 MB1.27
MB2 MB_1.27 MB1.27
MB3 MB_1.50 MB1.5
MB4 MB_1.27 MB1.27
MB5 MB_1.50 MB1.5
MB6 MB_1.27 MB1.27
MB7 MB_1.27 MB1.27
MB8 MB_1.27 MB1.27
MB9 MB_1.27 MB1.27
MB10 MB_1.50 MB1.5
MB11 MB_1.50 MB1.5
MB12 MB_1.27 MB1.27
MB13 MB_1.27 MB1.27
MB14 MB_1.27 MB1.27
MB15 MB_1.00 MB_1.00
MB16 MB_1.00 MB_1.00
MB17 MB_1.00 MB_1.00
MB18 MB_1.27 MB1.27
MB19 MB_1.00 MB_1.00
R1 22R R_0402 0402
R4 5k1 R_0402 0402
R5 5k1 R_0402 0402
R6 1M R_0402 0402
R7 1M R_0402 0402
R8 MF-FSMF020X-2 POLYSWITCH_0603 0603
R9 100k R_0402 0402
R10 3k3 R_0402 0402
R11 N.C. R_0402 0402
R12 10k R_0402 0402
R13 100R R_0402 0402
R14 27R R_0402 0402
R15 1k5 R_0402 0402
R16 1k5 R_0402 0402
R18 68R R_0402 0402
R19 68R R_0402 0402
R20 68R R_0402 0402
R21 68R R_0402 0402
R22 68R R_0402 0402
R23 68R R_0402 0402
R25 0R R_0402 0402
R26 N.C. R_0402 0402
X1 CTS406 8MHz X_4V_6,0X3,5 X6,0X3,5

Binary file not shown.

Before

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 135 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 KiB

@ -1,160 +0,0 @@
# Trezor Model T Open Source Hardware Reference Documentation
## Photo
![Photo Front](photo-front.jpg)
## Photo of assembled board (top)
![Assembled Board Top](model-t-top-v12.jpg)
## Photo of assembled board (bottom)
![Assembled Board Bottom](model-t-bottom-v12.jpg)
## Photo of assembled TFT LCD display + capacitive touch panel module (top)
![Display Module Top](model-t-display-module-top.jpg)
## Photo of assembled TFT LCD display + capacitive touch panel module (bottom)
![Display Module Bottom](model-t-display-module-bottom.jpg)
## Photo of disassembled TFT LCD display + capacitive touch panel module (top) (CTPM on left) (TFT LCD broken glass removed)
![Display Module Disassembled Top](model-t-display-module-disassembled-top.jpg)
## Photo of disassembled TFT LCD display + capacitive touch panel module (bottom) (CTPM on left) (TFT LCD broken glass removed)
![Display Module Disassembled Bottom](model-t-display-module-disassembled-bottom.jpg)
## Bill of Materials / BOM
[BOM](bom.txt)
## Schematic
![Schematic](schematic.png)
## Developer Kit
* 1 x [STM32F429I-DISC1](https://www.st.com/en/evaluation-tools/32f429idiscovery.html) (note: [Manual with pin to dev board function mapping](https://www.st.com/content/ccc/resource/technical/document/user_manual/6b/25/05/23/a9/45/4d/6a/DM00093903.pdf/files/DM00093903.pdf/jcr:content/translations/en.DM00093903.pdf))
* 1 x USB Cable Type A Plug/Male to Type Mini-B Plug/Male
* 1 x USB Cable Type A Plug/Male to Type Micro-B Plug/Male
* 1 x [ER-TFTM028-4 Display + Capacitive Touch Panel Module](https://www.ebay.com/itm/302049581340) (Note: specify 40-Pin Header, 8080 8-bit Parallel, VDD=3.3V, Capacitive Touch Panel) (note: [Manual](https://www.buydisplay.com/download/manual/ER-TFTM028-4_Datasheet.pdf))
* 1 x [microSD Board](https://www.waveshare.com/micro-sd-storage-board.htm)
* 1 x [Pack of 40 Female to female jumper wires with 0.1" header contacts](https://www.adafruit.com/product/266)
### Display
* Resolution: 240px x 240px -OR- 240px x 320px
* Driver IC: ST7789V, GC9307, or ILI9341V (on-chip display data RAM of 240x320x18 bits)
* 18-bit (262,144) RGB color graphic type TFT-LCD
* Bus/Interface: 8080-I 8-bit parallel with 16-bit/pixel (RGB 5-6-5)
#### Pinout
|Description|MCU Pin|Notes|
|-----------|-------|-----|
|LCD_RST|PC14|display module pin 21. benign conflict with unpopulated OSC32_IN on dev board.|
|LCD_FMARK|PD12|tearing effect input; display module pin 22|
|LCD_PWM|PA7|backlight control (brightness); display module pin 29. benign conflict with I2C_EXT_RST on dev board.|
|LCD_CS|PD7|display module pin 23|
|LCD_RS|PD11|register select aka command/data; display module pin 24|
|LCD_RD|PD4|display module pin 26|
|LCD_WR|PD5|display module pin 25|
|LCD_D0|PD14|display module pin 3|
|LCD_D1|PD15|display module pin 4|
|LCD_D2|PD0|display module pin 5|
|LCD_D3|PD1|display module pin 6|
|LCD_D4|PE7|display module pin 7|
|LCD_D5|PE8|display module pin 8|
|LCD_D6|PE9|display module pin 9|
|LCD_D7|PE10|display module pin 10|
|LCD_D8|PE11|not currently used|
### Capacitive Touch Panel / Sensor
* Bus/Interface: I2C
* Driver IC: FT6236 or FT6206
* single touch
#### Pinout
|Description|MCU Pin|Notes|
|-----------|-------|-----|
|TOUCH_ON|PB10|no mapped pin on display module|
|I2C1_SCL|PB6|display module pin 30|
|I2C1_SDA|PB7|display module pin 31|
|EINT|PC4|not currently used. display module pin 39. conflict with USB OTG FS PSO on dev board.|
|REST|PC5|benign conflict with USB OTG FS OC on dev board. no mapped pin on display module.|
### microSD Socket
* Bus/Interface: 4-bit
#### Pinout
|Description|MCU Pin|
|-----------|-------|
|SDIO_D0|PC8|
|SDIO_D1|PC9|
|SDIO_D2|PC10|
|SDIO_D3|PC11|
|SDIO_CK|PC12|
|SDIO_CMD|PD2|
|SD_CARDDETECT|PC13|
|SD_ON|PC0|
### USB Socket
* USB HS (high-speed) peripheral in FS (full-speed) mode
#### Pinout
|Description|MCU Pin|Notes|
|-----------|-------|-----|
|OTG_HS_VBUS|PB13||
|OTG_HS_ID|PB12||
|OTG_HS_DM|PB14||
|OTG_HS_DP|PB15||
|SBU1|PA2|not currently used. conflict with L3GD20 Gyroscope MEMS on dev board.|
|SBU2|PA3|not currently used|
### Dev Board
* [STM32F429ZIT6](https://www.st.com/en/microcontrollers-microprocessors/stm32f429zi.html)
* HSE / High-Speed External Crystal: 8 MHz
* Integrated STMicroelectronics ST-LINK/V2.1 debugger
Note: There are many conflicts between how the software maps GPIO pins and how the dev board maps them to its functions.
Many of the conflicts are resolved by removing the external SDRAM chip and the TFT LCD display + resistive touch panel that come attached to the dev board.
The unresolved conflicts are noted in the pinout descriptions above.
Currently, testing has shown that it is not necessary to remove either the SDRAM or the TFT LCD display + resistive touch panel.
If you choose to remove them, our experience is that the easiest way to remove the SDRAM chip is by first cutting the leads on one side of the chip (e.g.- with an X-Acto knife) and then lifting the chip and rocking it until the leads on the other side break. Be sure that no broken leads short to another pin as this can cause the dev board and/or display to malfunction. If some do, just clean them up so that they are separate again.
This method reduces the amount of knife work, and the chance for slicing other things on the board (or yourself).
To remove the TFT LCD display + resistive touch panel module, lift the module away from the metal tray, bend the metal tray out of the way, then cleanly pull/tear the flex PCB away from the solder connections to the main board (the connections usually break without much force).
The metal tray is attached to the board with double stick tape. You just have to pull that up.
## Photo of dev board before modifications (top)
![Dev Board Top Before](dev-board-top-before.jpg)
## Photo of dev board before modifications (bottom)
![Dev Board Bottom Before](dev-board-bottom-before.jpg)
Minimum MCU requirements:
* STM32F4 family [STM32F427VIT6](https://www.st.com/en/microcontrollers-microprocessors/stm32f427vi.html)
* 168 MHz, 8 MHz HSE
* 2048 KB Flash memory
* 192 KB SRAM
* 64 KB CCMRAM
* FMC controller
* TRNG
### Clock Tree
![Clock Tree](clock-tree.png)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 518 KiB

Loading…
Cancel
Save