Source code for hub.board

"""Advanced: technical details about the hub's circuit board.

Most programs never need this. It tells you which parts this hub has
(for example ``HAS_AUDIO`` is ``1`` when there is a speaker) and which
pins and buses they use. Pin and bus numbers can be passed straight to
``machine.Pin`` and ``hub.i2c``. A value of ``-1`` means "not on this
board".
"""

# Identity
[docs] BOARD_NAME: str
"""Name of this hub model."""
[docs] BOARD_VERSION: str
"""Hardware version of this hub.""" # I2C buses
[docs] HAS_I2C0: int
[docs] I2C0_SDA_PIN: int
[docs] I2C0_SCL_PIN: int
[docs] I2C0_FREQ: int
# SPI buses
[docs] HAS_SPI2: int
[docs] SPI2_SCK_PIN: int
[docs] SPI2_MISO_PIN: int
[docs] SPI2_MOSI_PIN: int
[docs] SPI2_FREQ: int
[docs] HAS_SPI3: int
[docs] SPI3_SCK_PIN: int
[docs] SPI3_MOSI_PIN: int
[docs] SPI3_MISO_PIN: int
[docs] SPI3_FREQ: int
# UART buses
[docs] HAS_UART0: int
[docs] HAS_UART1: int
[docs] HAS_UART2: int
# PCA9685
[docs] HAS_PCA9685: int
[docs] PCA9685_BUS: int
[docs] PCA9685_I2C_ADDR: int
[docs] PCA9685_FREQ_HZ: int
# SC16IS750
[docs] HAS_SC16IS750: int
[docs] SC16IS750_BUS: int
[docs] SC16IS750_SPI_FREQ: int
[docs] SC16IS750_CS_PIN: int
[docs] SC16IS750_IRQ_PIN: int
[docs] SC16IS750_CRYSTAL_FREQ: int
[docs] SC16IS750_TX_DISABLE_PIN: int
# BNO085
[docs] HAS_BNO085: int
[docs] BNO085_BUS: int
[docs] BNO085_I2C_ADDR: int
[docs] BNO085_INT_PIN: int
# LSM6DSL
[docs] HAS_LSM6DSL: int
# ST7735
[docs] HAS_ST7735: int
[docs] LCD_BUS: int
[docs] LCD_SPI_FREQ: int
# MCPWM
[docs] HAS_MCPWM: int
# Power
[docs] HAS_POWER: int
[docs] POWER_ON_PIN: int
# Buttons
[docs] HAS_BUTTONS: int
[docs] BUTTON_PWR_PIN: int
[docs] BUTTON_UP_PIN: int
[docs] BUTTON_LEFT_PIN: int
[docs] BUTTON_DOWN_PIN: int
[docs] BUTTON_RIGHT_PIN: int
# LCD
[docs] HAS_LCD: int
"""``1`` if this hub has a screen."""
[docs] LCD_DC_PIN: int
# Audio amplifier
[docs] HAS_AUDIO: int
"""``1`` if this hub has a speaker (needed for ``hub.audio``)."""
[docs] AUDIO_BUS: int
[docs] LCD_TE_PIN: int
[docs] LCD_RST_PIN: int
[docs] LCD_CS_PIN: int
[docs] LCD_BACKLIGHT_PIN: int
# IMU
[docs] HAS_IMU: int
[docs] IMU_TYPE: int
[docs] IMU_INT_PIN: int
# RGB LED
[docs] HAS_RGB_LED: int
[docs] RGB_LED_TYPE: int
[docs] RGB_LED_COUNT: int
[docs] RGB_LED_DATA_PIN: int
# Battery / charger
[docs] HAS_BATTERY_MONITOR: int
[docs] BATT_ADC_PIN: int
[docs] BATT_STAT_PIN: int
[docs] HAS_CHARGER: int
[docs] CHG_EN_PIN: int
[docs] CHG_STAT_PIN: int
# LPF2 ports
[docs] HAS_PORT_A: int
[docs] PORT_A_UART_BUS: int
[docs] PORT_A_ID1_PIN: int
[docs] PORT_A_ID2_PIN: int
[docs] PORT_A_PWM1_PIN: int
[docs] PORT_A_PWM2_PIN: int
[docs] HAS_PORT_B: int
[docs] PORT_B_UART_BUS: int
[docs] PORT_B_ID1_PIN: int
[docs] PORT_B_ID2_PIN: int
[docs] PORT_B_PWM1_PIN: int
[docs] PORT_B_PWM2_PIN: int
[docs] HAS_PORT_C: int
[docs] PORT_C_UART_BUS: int
[docs] PORT_C_ID1_PIN: int
[docs] PORT_C_ID2_PIN: int
[docs] PORT_C_PWM1_PIN: int
[docs] PORT_C_PWM2_PIN: int
[docs] HAS_PORT_D: int
[docs] PORT_D_UART_BUS: int
[docs] PORT_D_ID1_PIN: int
[docs] PORT_D_ID2_PIN: int
[docs] PORT_D_PWM1_PIN: int
[docs] PORT_D_PWM2_PIN: int
# SD card
[docs] HAS_SD_CARD: int
"""``1`` if this hub has an SD card slot."""
[docs] SD_MODE: int
[docs] SD_SLOT: int
[docs] SD_WIDTH: int
[docs] SD_CLK_PIN: int
[docs] SD_CMD_PIN: int
[docs] SD_D0_PIN: int
[docs] SD_D1_PIN: int
[docs] SD_D2_PIN: int
[docs] SD_D3_PIN: int
[docs] SD_SCK_PIN: int
[docs] SD_MISO_PIN: int
[docs] SD_MOSI_PIN: int
[docs] SD_CS_PIN: int