[boards] Add T102 and T103 boards

This commit is contained in:
Kuba Szczodrzyński
2023-06-18 16:48:49 +02:00
parent 96dbbe0919
commit f9fb78feed
8 changed files with 489 additions and 0 deletions

View File

@@ -0,0 +1,55 @@
{
"pcb": {
"templates": [
"tuya2",
"pcb-black",
"rf-type1"
],
"scale": 10.5,
"pinout_hidden": "I2S,TRIG,WAKE,CTS,RTS,SD,SPI",
"pinout": {
"1": {
"PWR": 3.3
},
"2": {
"IC": 17,
"ARD": "D0"
},
"3": {
"GND": null
},
"4": {
"IC": 16,
"ARD": "D1"
},
"5": {
"IC": 29,
"ARD": "D5"
},
"6": {
"IC": 28,
"ARD": "D2"
},
"7": {
"IC": 32,
"ARD": "D6"
},
"8": {
"IC": 1,
"ARD": "D3"
},
"9": {
"IC": 13,
"ARD": "D7"
},
"10": {
"IC": 2,
"ARD": "D4"
},
"11": {
"IC": 14,
"ARD": "D8"
}
}
}
}

View File

@@ -0,0 +1,79 @@
{
"pcb": {
"templates": [
"esp12s",
"pcb-white",
"tuya-16x24",
"rf-type1"
],
"vars": {
"PINHOLE": 1
},
"pinout_hidden": "I2S,TRIG,WAKE,CTS,RTS,SD",
"pinout": {
"1": {
"NC": null
},
"2": {
"IC": 27,
"ARD": "A1"
},
"3": {
"IC": 12
},
"4": {
"IC": 30,
"ARD": [
"D0",
"A0"
]
},
"5": {
"IC": 13,
"ARD": "D1"
},
"6": {
"IC": 14,
"ARD": "D2"
},
"7": {
"IC": 16,
"ARD": "D3"
},
"8": {
"PWR": 3.3
},
"9": {
"GND": null
},
"10": {
"IC": 31,
"ARD": "D4"
},
"11": {
"IC": 2,
"ARD": "D5"
},
"12": {
"IC": 1,
"ARD": "D6"
},
"13": {
"IC": 28,
"ARD": "D7"
},
"14": {
"IC": 17,
"ARD": "D8"
},
"15": {
"IC": 29,
"ARD": "D9"
},
"16": {
"IC": 32,
"ARD": "D10"
}
}
}
}

21
boards/t102-v1.1.json Normal file
View File

@@ -0,0 +1,21 @@
{
"_base": [
"realtek-ambz",
"realtek-ambz-2mb-788k",
"ic/rtl8710bn",
"pcb/t102"
],
"build": {
"mcu": "rtl8710bn",
"variant": "t102-v1.1"
},
"name": "T102_V1.1",
"url": "https://docs.libretiny.eu/boards/t102-v1.1/",
"vendor": "Unknown",
"doc": {
"fccid": "2AU7O-T102V11"
},
"pcb": {
"symbol": "T102_V1.1"
}
}

26
boards/t103-v1.0.json Normal file
View File

@@ -0,0 +1,26 @@
{
"_base": [
"realtek-ambz",
"realtek-ambz-2mb-788k",
"realtek-ambz-bx",
"ic/rtl8710bn",
"pcb/t103"
],
"build": {
"mcu": "rtl8710bx",
"variant": "t103-v1.0"
},
"name": "T103_V1.0",
"url": "https://docs.libretiny.eu/boards/t103-v1.0/",
"vendor": "Unknown",
"doc": {
"fccid": "2AU7O-T102V11",
"extra": [
"## Source",
"Pinout information sourced from [teardown post by @p.kaczmarek2 from Elektroda](https://www.elektroda.pl/rtvforum/topic3984148.html)."
]
},
"pcb": {
"symbol": "T103_V1.0"
}
}

View File

@@ -0,0 +1,42 @@
/* This file was auto-generated from t102-v1.1.json using boardgen */
#include <Arduino.h>
#ifdef LT_VARIANT_INCLUDE
#include LT_VARIANT_INCLUDE
#endif
// clang-format off
PinInfo lt_arduino_pin_info_list[PINS_COUNT] = {
// D0: PA12, PWM3
{PA_12, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
// D1: PA00, PWM2
{PA_0, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
// D2: PA05, PWM4, WAKE1
{PA_5, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
// D3: PA30, UART2_TX, I2C0_SDA, PWM4
{PA_30, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_UART, PIN_NONE, 0},
// D4: PA29, UART2_RX, I2C0_SCL, PWM4
{PA_29, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_UART, PIN_NONE, 0},
// D5: PA18, UART0_RX, SPI0_SCK, SPI1_SCK, I2C1_SCL, SD_D2, TMR4_TRIG, I2S0_MCK, WAKE0
{PA_18, PIN_GPIO | PIN_IRQ | PIN_I2C | PIN_I2S | PIN_SPI | PIN_UART, PIN_NONE, 0},
// D6: PA23, UART0_TX, SPI0_MOSI, SPI1_MOSI, I2C1_SDA, SD_D1, PWM0, WAKE3
{PA_23, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_SPI | PIN_UART, PIN_NONE, 0},
// D7: PA14, PWM0, SWCLK
{PA_14, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_SWD, PIN_NONE, 0},
// D8: PA15, PWM1, SWDIO
{PA_15, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_SWD, PIN_NONE, 0},
};
PinInfo *lt_arduino_pin_gpio_map[] = {
[0] = &(lt_arduino_pin_info_list[1]), // PA_0 (D1)
[5] = &(lt_arduino_pin_info_list[2]), // PA_5 (D2)
[12] = &(lt_arduino_pin_info_list[0]), // PA_12 (D0)
[14] = &(lt_arduino_pin_info_list[7]), // PA_14 (D7)
[15] = &(lt_arduino_pin_info_list[8]), // PA_15 (D8)
[18] = &(lt_arduino_pin_info_list[5]), // PA_18 (D5)
[23] = &(lt_arduino_pin_info_list[6]), // PA_23 (D6)
[29] = &(lt_arduino_pin_info_list[4]), // PA_29 (D4)
[30] = &(lt_arduino_pin_info_list[3]), // PA_30 (D3)
};
// clang-format on

View File

@@ -0,0 +1,89 @@
/* This file was auto-generated from t102-v1.1.json using boardgen */
#pragma once
// clang-format off
// Pins
// ----
#define PINS_COUNT 9 // Total GPIO count
#define NUM_DIGITAL_PINS 9 // Digital inputs/outputs
#define NUM_ANALOG_INPUTS 0 // ADC inputs
#define NUM_ANALOG_OUTPUTS 8 // PWM & DAC outputs
#define PINS_GPIO_MAX 30 // Last usable GPIO number
// Wire Interfaces
// ---------------
#define PIN_WIRE0_SCL 29u // PA_29
#define PIN_WIRE0_SDA 30u // PA_30
#define PIN_WIRE1_SCL 18u // PA_18
#define PIN_WIRE1_SDA 23u // PA_23
// Serial ports
// ------------
#define PIN_SERIAL0_RX 18u // PA_18
#define PIN_SERIAL0_TX 23u // PA_23
#define PIN_SERIAL2_RX 29u // PA_29
#define PIN_SERIAL2_TX 30u // PA_30
// Pin function macros
// -------------------
#define PIN_MOSI0 23u // PA_23
#define PIN_MOSI1 23u // PA_23
#define PIN_PA00 0u // PA_0
#define PIN_PA05 5u // PA_5
#define PIN_PA12 12u // PA_12
#define PIN_PA14 14u // PA_14
#define PIN_PA15 15u // PA_15
#define PIN_PA18 18u // PA_18
#define PIN_PA23 23u // PA_23
#define PIN_PA29 29u // PA_29
#define PIN_PA30 30u // PA_30
#define PIN_PWM0 14u // PA_14
#define PIN_PWM1 15u // PA_15
#define PIN_PWM2 0u // PA_0
#define PIN_PWM3 12u // PA_12
#define PIN_PWM4 29u // PA_29
#define PIN_RX0 18u // PA_18
#define PIN_RX2 29u // PA_29
#define PIN_SCK0 18u // PA_18
#define PIN_SCK1 18u // PA_18
#define PIN_SCL0 29u // PA_29
#define PIN_SCL1 18u // PA_18
#define PIN_SDA0 30u // PA_30
#define PIN_SDA1 23u // PA_23
#define PIN_TX0 23u // PA_23
#define PIN_TX2 30u // PA_30
// Port availability
// -----------------
#define HAS_SERIAL0 1
#define HAS_SERIAL2 1
#define HAS_WIRE0 1
#define HAS_WIRE1 1
#define SERIAL_INTERFACES_COUNT 2
#define WIRE_INTERFACES_COUNT 2
// Arduino pin names
// -----------------
#define PIN_D0 12u // PA_12
#define PIN_D1 0u // PA_0
#define PIN_D2 5u // PA_5
#define PIN_D3 30u // PA_30
#define PIN_D4 29u // PA_29
#define PIN_D5 18u // PA_18
#define PIN_D6 23u // PA_23
#define PIN_D7 14u // PA_14
#define PIN_D8 15u // PA_15
// Static pin names
// ----------------
static const unsigned char D0 = PIN_D0;
static const unsigned char D1 = PIN_D1;
static const unsigned char D2 = PIN_D2;
static const unsigned char D3 = PIN_D3;
static const unsigned char D4 = PIN_D4;
static const unsigned char D5 = PIN_D5;
static const unsigned char D6 = PIN_D6;
static const unsigned char D7 = PIN_D7;
static const unsigned char D8 = PIN_D8;

View File

@@ -0,0 +1,51 @@
/* This file was auto-generated from t103-v1.0.json using boardgen */
#include <Arduino.h>
#ifdef LT_VARIANT_INCLUDE
#include LT_VARIANT_INCLUDE
#endif
// clang-format off
PinInfo lt_arduino_pin_info_list[PINS_COUNT] = {
// D0: PA19, ADC1, UART0_CTS, SPI0_CS, SPI1_CS, I2C0_SDA, SD_D3, TMR5_TRIG, I2S0_TX
{PA_19, PIN_GPIO | PIN_IRQ | PIN_ADC | PIN_I2C | PIN_I2S | PIN_SPI | PIN_UART, PIN_NONE, 0},
// D1: PA14, PWM0, SWCLK
{PA_14, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_SWD, PIN_NONE, 0},
// D2: PA15, PWM1, SWDIO
{PA_15, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_SWD, PIN_NONE, 0},
// D3: PA00, PWM2
{PA_0, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
// D4: PA22, UART0_RTS, SPI0_MISO, SPI1_MISO, I2C0_SCL, SD_D0, PWM5, I2S0_WS, WAKE2
{PA_22, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_I2S | PIN_SPI | PIN_UART, PIN_NONE, 0},
// D5: PA29, UART2_RX, I2C0_SCL, PWM4
{PA_29, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_UART, PIN_NONE, 0},
// D6: PA30, UART2_TX, I2C0_SDA, PWM4
{PA_30, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_UART, PIN_NONE, 0},
// D7: PA05, PWM4, WAKE1
{PA_5, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
// D8: PA12, PWM3
{PA_12, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
// D9: PA18, UART0_RX, SPI0_SCK, SPI1_SCK, I2C1_SCL, SD_D2, TMR4_TRIG, I2S0_MCK, WAKE0
{PA_18, PIN_GPIO | PIN_IRQ | PIN_I2C | PIN_I2S | PIN_SPI | PIN_UART, PIN_NONE, 0},
// D10: PA23, UART0_TX, SPI0_MOSI, SPI1_MOSI, I2C1_SDA, SD_D1, PWM0, WAKE3
{PA_23, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_SPI | PIN_UART, PIN_NONE, 0},
// A1: ADC2
{AD_2, PIN_ADC, PIN_NONE, 0},
};
PinInfo *lt_arduino_pin_gpio_map[] = {
[0] = &(lt_arduino_pin_info_list[3]), // PA_0 (D3)
[5] = &(lt_arduino_pin_info_list[7]), // PA_5 (D7)
[12] = &(lt_arduino_pin_info_list[8]), // PA_12 (D8)
[14] = &(lt_arduino_pin_info_list[1]), // PA_14 (D1)
[15] = &(lt_arduino_pin_info_list[2]), // PA_15 (D2)
[18] = &(lt_arduino_pin_info_list[9]), // PA_18 (D9)
[19] = &(lt_arduino_pin_info_list[0]), // PA_19 (D0)
[22] = &(lt_arduino_pin_info_list[4]), // PA_22 (D4)
[23] = &(lt_arduino_pin_info_list[10]), // PA_23 (D10)
[29] = &(lt_arduino_pin_info_list[5]), // PA_29 (D5)
[30] = &(lt_arduino_pin_info_list[6]), // PA_30 (D6)
[41] = &(lt_arduino_pin_info_list[11]), // AD_2 (A1)
};
// clang-format on

126
boards/variants/t103-v1.0.h Normal file
View File

@@ -0,0 +1,126 @@
/* This file was auto-generated from t103-v1.0.json using boardgen */
#pragma once
// clang-format off
// Pins
// ----
#define PINS_COUNT 12 // Total GPIO count
#define NUM_DIGITAL_PINS 11 // Digital inputs/outputs
#define NUM_ANALOG_INPUTS 2 // ADC inputs
#define NUM_ANALOG_OUTPUTS 9 // PWM & DAC outputs
#define PINS_GPIO_MAX 41 // Last usable GPIO number
// SPI Interfaces
// --------------
#define PIN_SPI0_CS 19u // PA_19
#define PIN_SPI0_MISO 22u // PA_22
#define PIN_SPI0_MOSI 23u // PA_23
#define PIN_SPI0_SCK 18u // PA_18
#define PIN_SPI1_CS 19u // PA_19
#define PIN_SPI1_MISO 22u // PA_22
#define PIN_SPI1_MOSI 23u // PA_23
#define PIN_SPI1_SCK 18u // PA_18
// Wire Interfaces
// ---------------
#define PIN_WIRE0_SCL_0 22u // PA_22
#define PIN_WIRE0_SCL_1 29u // PA_29
#define PIN_WIRE0_SDA_0 19u // PA_19
#define PIN_WIRE0_SDA_1 30u // PA_30
#define PIN_WIRE1_SCL 18u // PA_18
#define PIN_WIRE1_SDA 23u // PA_23
// Serial ports
// ------------
#define PIN_SERIAL0_CTS 19u // PA_19
#define PIN_SERIAL0_RTS 22u // PA_22
#define PIN_SERIAL0_RX 18u // PA_18
#define PIN_SERIAL0_TX 23u // PA_23
#define PIN_SERIAL2_RX 29u // PA_29
#define PIN_SERIAL2_TX 30u // PA_30
// Pin function macros
// -------------------
#define PIN_ADC1 19u // PA_19
#define PIN_ADC2 41u // AD_2
#define PIN_CS0 19u // PA_19
#define PIN_CS1 19u // PA_19
#define PIN_CTS0 19u // PA_19
#define PIN_MISO0 22u // PA_22
#define PIN_MISO1 22u // PA_22
#define PIN_MOSI0 23u // PA_23
#define PIN_MOSI1 23u // PA_23
#define PIN_PA00 0u // PA_0
#define PIN_PA05 5u // PA_5
#define PIN_PA12 12u // PA_12
#define PIN_PA14 14u // PA_14
#define PIN_PA15 15u // PA_15
#define PIN_PA18 18u // PA_18
#define PIN_PA19 19u // PA_19
#define PIN_PA22 22u // PA_22
#define PIN_PA23 23u // PA_23
#define PIN_PA29 29u // PA_29
#define PIN_PA30 30u // PA_30
#define PIN_PWM0 23u // PA_23
#define PIN_PWM1 15u // PA_15
#define PIN_PWM2 0u // PA_0
#define PIN_PWM3 12u // PA_12
#define PIN_PWM4 5u // PA_5
#define PIN_PWM5 22u // PA_22
#define PIN_RTS0 22u // PA_22
#define PIN_RX0 18u // PA_18
#define PIN_RX2 29u // PA_29
#define PIN_SCK0 18u // PA_18
#define PIN_SCK1 18u // PA_18
#define PIN_SCL0 29u // PA_29
#define PIN_SCL1 18u // PA_18
#define PIN_SDA0 30u // PA_30
#define PIN_SDA1 23u // PA_23
#define PIN_TX0 23u // PA_23
#define PIN_TX2 30u // PA_30
// Port availability
// -----------------
#define HAS_SERIAL0 1
#define HAS_SERIAL2 1
#define HAS_SPI0 1
#define HAS_SPI1 1
#define HAS_WIRE0 1
#define HAS_WIRE1 1
#define SERIAL_INTERFACES_COUNT 2
#define SPI_INTERFACES_COUNT 2
#define WIRE_INTERFACES_COUNT 2
// Arduino pin names
// -----------------
#define PIN_D0 19u // PA_19
#define PIN_D1 14u // PA_14
#define PIN_D2 15u // PA_15
#define PIN_D3 0u // PA_0
#define PIN_D4 22u // PA_22
#define PIN_D5 29u // PA_29
#define PIN_D6 30u // PA_30
#define PIN_D7 5u // PA_5
#define PIN_D8 12u // PA_12
#define PIN_D9 18u // PA_18
#define PIN_D10 23u // PA_23
#define PIN_A0 19u // PA_19
#define PIN_A1 41u // AD_2
// Static pin names
// ----------------
static const unsigned char A0 = PIN_A0;
static const unsigned char A1 = PIN_A1;
static const unsigned char D0 = PIN_D0;
static const unsigned char D1 = PIN_D1;
static const unsigned char D2 = PIN_D2;
static const unsigned char D3 = PIN_D3;
static const unsigned char D4 = PIN_D4;
static const unsigned char D5 = PIN_D5;
static const unsigned char D6 = PIN_D6;
static const unsigned char D7 = PIN_D7;
static const unsigned char D8 = PIN_D8;
static const unsigned char D9 = PIN_D9;
static const unsigned char D10 = PIN_D10;