Thornwave Labs Rainbow-7 7 Inch Diagonal 1024×600 Color Touchscreen Development Platform User Manual

September 25, 2024
Thornwave Labs

Rainbow-7 7 Inch Diagonal 1024×600 Color Touchscreen Development Platform

“`html

Specifications

  • Display: 7″ diagonal, 1024×600 color touchscreen

  • Microcontroller: STM32H753 with 2-Mbyte FLASH

  • Memory: 32 Mbytes of SDRAM, 32 Mbytes of external QSPI
    flash

  • Power Supply: 9V to 32V, minimum 0.5A

Product Usage Instructions

Power Supply

The Rainbow-7 platform requires an external power source with a
voltage range of 9V to 32V and a minimum current output of 0.5A.
Use the provided 2 ft cable with a 2-pin Molex MiniFit Jr connector
for power connection.

Crystal Oscillators

The microcontroller contains crystal oscillators for clock
sources. Ensure proper functioning of the crystal oscillators for
the STM32 MCU, audio codec, Ethernet PHY, and USB PHY.

Internal and External Memory

The system includes internal FLASH and SRAM memory.
Additionally, there are external FLASH, SDRAM, EEPROM, and an SD
card slot for storage and data access. Refer to the provided code
for initialization and usage of these memory components.

Safety Instructions

Read all safety instructions before using the Rainbow-7
platform. Do not use the device for medical purposes, safety
applications, or in conditions where equipment failure can cause
harm. Avoid submerging the device in liquids and adhere to the
specified voltage limits.

FAQ

Q: Can I use the Rainbow-7 platform for medical

applications?

A: No, the device should not be used for any medical purposes or
life-sustaining equipment.

Q: What is the power supply requirement for the Rainbow-7

platform?

A: The platform requires a power source with a voltage range of
9V to 32V and a minimum current output of 0.5A.

“`

Rainbow-7 Platform
7″ 1024×600 Color Touchscreen Development Platform ­ USER MANUAL ­
1

BRIEF
Rainbow-7 is a 7″ diagonal, high resolution, 1024×600 color touchscreen complete demonstration and development system for the Iridescence Graphical Framework, designed to simplify user application development. The platform is based on the combination of a 2-Mbyte FLASH STM32H753 microcontroller with 32 Mbytes of SDRAM and 32 Mbytes of external QSPI flash memory. The system can be customized by Thornwave Labs to accommodate various customer needs both in terms of hardware and firmware.
2

FEATURES
· Based on the STM32H753BIT6, 480MHz, 32bit ARM Cortex-M7 microcontroller with double-precision FPU
· 2 Mbytes of internal FLASH program memory
· 1 Mbyte of internal SRAM · 32 Mbytes, 32-bit wide SDRAM that can be
used for data storage, frame buffers or code execution · 32 Mbytes of QSPI FLASH memory organized as two 16 Mbytes QSPI memories connected in dual flash mode (8-bit access) can be used for read-only data storage, code execution or read-write persistent storage, optional filesystem · 256 Kbits (32 Kbytes) I2C EEPROM for data / configuration storage · SD card slot with full SD 4-bit bus · CR-2032 RTC backup battery · 7″ 1024 x 600 IPS color screen driven in RGB mode · 7″ I2C touchscreen capable of multiple finger touch · Adjustable LCD backlight current, adjustable LCD VCOM voltage · High-speed FDCAN bus transceiver with 2 RJ-45 CAN bus connectors and a Molex RV-C connector, capable of up to 5 Mbits/s data rate

· SSM2602 audio codec with stereo headphones and line outputs, and mono microphone input (3.5mm jacks) connected via I2S
· USB 2.0 high-speed PHY and mini USB-B OTG connector (can act as host or peripheral)
· 10-100 Mbits/s Ethernet PHY, magnetics and RJ-45 connector
· WFM200 based WiFi 802.11b/g/n transceiver connected via 4-bit SDIO
· Switching mode power supply capable of operating up to 32V
· Black plastic bezel, panel mountable (access from behind is required)
· Firmware source code provided for all drivers, FreeRTOS integration and demo/example applications
· Iridescence Graphic Framework provided with watermarking (for licensing, contact Thornwave Labs: sales@thornwave.com)
· Various demonstration applications are provided: a WAV file audio player, Iridescence Graphic Framework demo, picture frame, screen tester, and WiFi manager

3

SAFETY INSTRUCTIONS
Warning!
Read all the instructions and cautions before using the Rainbow-7 development platform. Thornwave Labs Inc does not assume responsibility for any injury or property damage caused by improper installation, bad wiring, or use of Rainbow-7 outside of its intended purpose. The device had not been evaluated by FCC. It should not be sold as a final product. The system was designed to be used as a development platform.
Warning!
The Rainbow-7 device should not be used for any medical purposes, life- sustaining equipment, safety applications, or any application where equipment failure can cause injury, death, fires, or any other hazard.
Warning!
The unit operates with voltages up to 36V which can be lethal or cause serious and permanent injury under the right conditions.
Warning!
Do not submerge under water or other liquids. The device is neither weatherproof nor waterproof.
4

OVERVIEW
Rainbow-7 is a 7″, high resolution, 1024×600 color touchscreen development platform. It was designed to facilitate quick product and application development using the Iridescence graphical framework. The board contains a full range of peripherals and communication interfaces: SD card slot, CAN, Ethernet and WiFi as well as an external FLASH memory, EEPROM and SDRAM. The board is equipped with a 6-pin TAG-Connect ISP connector. This can be used with any debugger/programmer compatible with the STM32H7 microcontroller. We recommend the Firelink tool developed by Thornwave Labs or the J-Link tool.
Power supply. The development platform is designed to be powered by an external power source capable of providing 9V to 32V and at least 0.5A. Included with the kit is a 2 ft cable with a 2-pin Molex MiniFit Jr connector.
Debug tool. Either the FireLink debug tool or J-Link debug probe can be used for loading and debugging the firmware. Other tools will work as long as they support debugging the STM32H753 MCU via the SWD interface. The 6-pin TAG- Connect connector on board of the Rainbow-7 platform provides access to the 3.3V power rail, SWD debug lines, reset and the debug UART TX line. The FireLink debug tool provides 2 complete UARTs + one debug UART receive line, allowing the Rainbow-7 debug UART line to be monitored directly. Other debug probes may not provide support for reading the debug UART. For this reason, we recommend using the FireLink tool as it provides more features and less cable clutter.
Crystal oscillators. The STM32 MCU contains a 32 MHz crystal oscillator used as the main clock source and a 32.768Hz RTC crystal oscillator. The audio codec, Ethernet PHY and USB PHY contain their own local crystal oscillator.
RTC backup battery. The development platform contains a CR-2032 lithium RTC backup battery. If the RTC or backup SRAM are not needed, the battery can be omitted.
Internal memories. The STM32H753BIT6 microcontroller contains 2 Mbytes of FLASH code memory and 1 Mbyte of SRAM for data. For more information on the microcontroller, please visit www.st.com
External FLASH. Two 16-Mbyte Quad-SPI FLASH memories are connected to the STM32 MCU quad memory controller in Dual-Flash-Memory (DFM) configuration, allowing 8-bit access to an extra 32 Mbytes of code memory with up to 133 Mbytes/s transfer rate. We provide the code to initialize and use the external QSPI FLASH memory.
External SDRAM. 32 Mbytes of SDRAM are connected to the FMC (Flexible Memory Controller) using a 32-bit data bus, offering plenty of memory that can be used for code execution, data storage, frame buffers or graphical resources. When not used, the SDRAM power can be switched off to save energy. The code to initialize the SDRAM controller is provided.
5

External EEPROM. An I2C 256-Kbits (32 Kbytes) EEPROM memory offers storage for configuration, encryption keys and so on. We also provide the code to initialize and access the EEPROM memory.
SD card slot. The on-board SD card slot connects straight to the STM32 MCU using all 4 data lines in SD mode. This allows SD cards to be accessed at up to 25MHz. The SD slot is equipped with insertion detection and a current- protected 3.3V power switch that can be controlled from the MCU.
LCD interface. The 7″ 1024×600 IPS color touchscreen is connected to the MCUs LTDC controller using full 24-bit RGB color mode. All the required voltages are generated on-board and VCOM can be adjusted under software control. The backlight driver supports current adjustment allowing for brightness control by software.
Touchscreen interface. The touchscreen is based on the FT5x06 chipset and connected to the STM32 MCU via I2C.
USB 2.0 high-speed PHY. The development board includes a 480-MBit/s USB 2.0 PHY and a mini USB-B connector. Both the USB_ID pin and power delivery are supported allowing the Rainbow-7 platform to operate as either USB host or USB peripheral device. We are offering software for implementing USB peripheral devices.
FDCAN transceiver. Rainbow-7 includes a 5-Mbit FDCAN transceiver connected to 2 RJ-45 and one 4pin Molex connector allowing connecting to a CAN bus via UTP twisted cable or RV-C bus.
Ethernet PHY. The KSZ8091RNACA, 100-Mbit/s RMII Ethernet PHY, allows connectivity to any physical LAN bus via twisted pair UTP cable. The PHY supports both 10 and 100 Mbits/s. The Ethernet driver is provided with the Rainbow-7 support firmware. The Ethernet PHY is clocked by a 25 MHz quartz crystal oscillator.
WiFi RF transceiver. The WFM200 chipset provides connectivity to WiFi (802.11b/g/n) at up to 72 MBits/s). The support firmware contains the WiFi drivers and a fully integrated TCP/IP stack (LwIP)
Audio CODEC. We also included the SSM2602CPZ stereo audio CODEC, connected to the STM32 microcontroller via the SAI interface. This offers an amplified headphones output, a line output and microphone input, all routed to 3.5mm connectors. The audio CODEC is wired to its own, dedicated, 24.576MHz crystal clock oscillator
6

CONNECTIVITY

STM32 GPIO
General PA15

Peripheral Connection
DEBUG_TX

PA10

VCORE_EN

PA13 PA14

SWDIO SWDCLK

External QSPI FLASH

PF8

QSPI_D0

PF9

QSPI_D1

PF7

QSPI_D2

PF6

QSPI_D3

PH2

QSPI_D4

PH3

QSPI_D5

PG9

QSPI_D6

PG14

QSPI_D7

PG6

QSPI_CS

PF10

QSPI_CLK

SDRAM PD14 PD15 PD0 PD1 PE7 PE8 PE9 PE10 PE11

SDRAM_D0 SDRAM_D1 SDRAM_D2 SDRAM_D3 SDRAM_D4 SDRAM_D5 SDRAM_D6 SDRAM_D7 SDRAM_D8

Notes
Wired to the TAG-Connect debug ISP connector. Used for outputting debug messages via UART7. Active high, turns on the 1.2V core voltage regulator. Pull-down attached. Not required. If used it can lower the power consumption. Wired to the TAG-Connect debug ISP connector Wired to the TAG-Connect debug ISP connector
QSPI FLASH #1 QSPI FLASH #1 QSPI FLASH #1 QSPI FLASH #1 QSPI FLASH #2 QSPI FLASH #2 QSPI FLASH #2 QSPI FLASH #2 QSPI FLASH #1 & #2 QSPI FLASH #1 & #2
7

PE12 PE13 PE14 PE15 PD8 PD9 PD10 PH8 PH9 PH10 PH11 PH12 PH13 PH14 PH15 PI0 PI1 PI2 PI3 PI6 PI7 PI9 PI10 PF0 PF1 PF2 PF3 PF4 PF5 PF12 PF13 PF14 PF15 PG0 PG1 PG4 PG5

SDRAM_D9 SDRAM_D10 SDRAM_D11 SDRAM_D12 SDRAM_D13 SDRAM_D14 SDRAM_D15 SDRAM_D16 SDRAM_D17 SDRAM_D18 SDRAM_D19 SDRAM_D20 SDRAM_D21 SDRAM_D22 SDRAM_D23 SDRAM_D24 SDRAM_D25 SDRAM_D26 SDRAM_D27 SDRAM_D28 SDRAM_D29 SDRAM_D30 SDRAM_D31 SDRAM_A0 SDRAM_A1 SDRAM_A2 SDRAM_A3 SDRAM_A4 SDRAM_A5 SDRAM_A6 SDRAM_A7 SDRAM_A8 SDRAM_A9 SDRAM_A10 SDRAM_A11 SDRAM_BA0 SDRAM_BA1

8

PE0 PE1 PI4 PI5 PH5 PF11 PG15 PH7 PH6 PG8 PI8

SDRAM_DQM0 SDRAM_DQM1 SDRAM_DQM2 SDRAM_DQM3 SDRAM_WE SDRAM_RAS SDRAM_CAS SDRAM_CLKE SDRAM_CS SDRAM_CLK SDRAM_POWER_EN Active high turns on the SDRAM power switch.

EEPROM PB6 PB7

I2C_SCL I2C_SDA

I2C bus shared with audio CODEC I2C bus shared with audio CODEC

SD Card Slot PC8 PC9 PC10 PC11 PC12 PD2 PD5 PD4

SDMMC1_D0 SDMMC1_D1 SDMMC1_D2 SDMMC1_D3 SDMMC1_CLK SDMMC1_CMD SD_POWER SD_FAULT

PD3

SD_DET

Active high, 3.3V SD card power enable Active low FAULT signal from SD power switch. Requires internal pull-up Active low DETECT signal from SD card slot. Requires internal pull-up.

LCD

PI15

LCD_R0

PJ0

LCD_R1

PJ1

LCD_R2

PJ2

LCD_R3

PJ3

LCD_R4

PJ4

LCD_R5

PJ5

LCD_R6

9

PJ6 PJ7 PJ8 PJ9 PJ10 PJ11 PK0 PK1 PK2 PJ12 PJ13 PJ14 PJ15 PK3 PK4 PK5 PK6 PK7 PI13 PI12 PI14 PG3 PD11 PC7

LCD_R7 LCD_G0 LCD_G1 LCD_G2 LCD_G3 LCD_G4 LCD_G5 LCD_G6 LCD_G7 LCD_B0 LCD_B1 LCD_B2 LCD_B3 LCD_B4 LCD_B5 LCD_B6 LCD_B7 LCD_DE LCD_VSYNC LCD_HSYNC LCD_CLK LCD_DITH LCD_RESET LCD_VCOM_ADJ

PA4

LCD_BL_EN

PC6

LCD_BL_ADJ

PA6

LCD_POWER_EN

Touchscreen (FT5x06)

PD12

TSC_SCL

PD13

TSC_SDA

PG2

TSC_INT

PG7

TSC_RESET

Active high to enable dithering Active low LCD reset signal PWM output to adjust the VCOM voltage. Do not change. Active high backlight power supply enable PWM output to adjust the backlight current Active high LCD power switch enable
Dedicated I2C bus Dedicated I2C bus TSC Interrupt line (active low) TSC reset line (active low)

10

CAN Bus (TJA1057GTK/3Z)

PA11

CAN_RX

PA12

CAN_TX

PA9

CAN_S

USB 2.0 High-Speed PHY (USB3318C-CP)

PA0

ULPI_RST

PA3

ULPI_D0

PA5

ULPI_CLK

PB0

ULPI_D1

PB1

ULPI_D2

PB5

ULPI_D7

PB10

ULPI_D3

PB11

ULPI_D4

PB12

ULPI_D5

PB13

ULPI_D6

PC0

ULPI_STP

PH4

ULPI_NXT

PI11

ULPI_DIR

Audio CODEC (SSM2602CPZ)

PB6

I2C_SCL

PB7

I2C_SDA

PE3

AUDIO_OUT

PE4

AUDIO_LRC

PE5

AUDIO_BCLK

PE6

AUDIO_IN

I2C bus shared with EEPROM I2C bus shared with EEPROM SSM2602: RECDAT SSM2602: PBLRC & RECLRC SSM2602: BCLK SSM2602: PBDAT

Ethernet PHY (KSZ8091RNACA)

PA1

ETH_CLK

PA2

ETH_MDIO

PA7

ETH_CRS_DV

PB9

ETH_INT

PC1

ETH_MDC

PC4

ETH_RXD0

PC5

ETH_RXD1

PG10

ETH_RESET

11

PG11 PG12 PG13

ETH_TXEN ETH_TXD1 ETH_TXD0

WiFi Transceiver (WFM200S022XNA3)

PA8

WIFI_LPCLK

WFM200: 32,768Hz low power mode clock

PB3

SDMMC2_D2

WFM200: SDIO_D2

PB4

SDMMC2_D3

WFM200: SDIO_D3

PB8

WIFI_WUP

WFM200: WAKEUP (WUP)

PC13

WIFI_RESET

WFM200: RESET

PB14

SDMMC2_D0

WFM200: SDIO_D0

PB15

SDMMC2_D1

WFM200: SDIO_D1

PD6

SDMMC2_CLK

WFM200: SDIO_CLK

PD7

SDMMC2_CMD

WFM200: SDIO_CMD

CAN Bus – RJ45 Pin 1,3,5 2,4,6 7 8

Description GROUND VPWR (9 ~ 32V) CAN+ CAN-

2 and 4-pin Molex Mini-Fit Jr. Female Sockets

RV-C Connector Pin 1 2 3 4

Description CAN+ CANGROUND VPWR (9 ~ 32V)

PWR Connector Pin Description

1

GROUND

2

VPWR (9 ~ 32V)

12

TAG-Connect 6 Pin Debug Connector

Debug Connector Pin 1 2 3 4 5 6

Description 3.3V SWDIO RESET SWDCLK GROUND DEBUG

13

FIRMWARE QUICK START
We advise using Ubuntu 24.04 LTS or the earlier 22.04 LTS. It is possible to use Windows but we do not provide support in this case. To build the demo firmware, some tools must be installed.
1. Download and install the ARM GCC compiler. It can be downloaded from here: https://developer.arm.com/downloads/-/gnu-rm
2. Extract the archive to /opt. cd /opt tar -xvf <path to ARM gcc archive just downloaded>
3. Create a symlink pointing to the ARM GCC compiler folder ln -sf <name of the folder just extracted> gcc-arm-none-eabi
4. Install a few required tools. apt install build-essential srecord git
5. Follow the instructions provided here https://files.thornwave.com/docs/iridescence/iridescence_latest/html/index.html to install the Iridescence tools.
6. Retrieve the demo firmware. git clone ssh://git@git.thornwave.com:29418/thornwave/rainbow7_fw.git cd rainbow7_fw git submodule update –init
7. Build the fonts cd fonts make -j32
8. Build the firmware demo cd build make
9. The following Makefile targets are valid: clean, flash, erase, reset. 10. The following Makefile variables can be defined: RELEASE=yes, DEBUG=yes, USE_FIRELINK=yes 11. The Iridescence library provided with the demo firmware is watermarked. A pre-built firmware image
without watermarking is located inside the images directory. 14

ORDERING

Part Number Description

Rainbow-7

7″ 1024×600 Color Touchscreen Development Platform based on STM32H753

15

References

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

Related Manuals