Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
230 changes: 230 additions & 0 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -52443,3 +52443,233 @@ esp32p4_4ds_mipi.menu.DisplayModel.esp32p4_101ct_clb.build.DisplayModel=ESP32P4_
esp32p4_4ds_mipi.build.defines=-DBOARD_HAS_PSRAM -D{build.board} -D{build.DisplayModel}

##############################################################

# Axiometa PIXIE M1 - Based on ESP32-S3-Mini-N4R2
# 4MB Quad SPI Flash, 2MB Quad SPI PSRAM

axiometa_pixie_m1.name=Axiometa PIXIE M1

axiometa_pixie_m1.bootloader.tool=esptool_py
axiometa_pixie_m1.bootloader.tool.default=esptool_py

axiometa_pixie_m1.upload.tool=esptool_py
axiometa_pixie_m1.upload.tool.default=esptool_py
axiometa_pixie_m1.upload.tool.network=esp_ota

axiometa_pixie_m1.upload.maximum_size=1310720
axiometa_pixie_m1.upload.maximum_data_size=327680
axiometa_pixie_m1.upload.flags=
axiometa_pixie_m1.upload.extra_flags=
axiometa_pixie_m1.upload.use_1200bps_touch=false
axiometa_pixie_m1.upload.wait_for_upload_port=false

axiometa_pixie_m1.serial.disableDTR=false
axiometa_pixie_m1.serial.disableRTS=false

axiometa_pixie_m1.build.tarch=xtensa
axiometa_pixie_m1.build.bootloader_addr=0x0
axiometa_pixie_m1.build.target=esp32s3
axiometa_pixie_m1.build.mcu=esp32s3
axiometa_pixie_m1.build.core=esp32
axiometa_pixie_m1.build.variant=axiometa_pixie_m1
axiometa_pixie_m1.build.board=AXIOMETA_PIXIE_M1

# Hardware Configuration (ESP32-S3-Mini-N4R2)
axiometa_pixie_m1.build.usb_mode=1
axiometa_pixie_m1.build.cdc_on_boot=1
axiometa_pixie_m1.build.msc_on_boot=0
axiometa_pixie_m1.build.dfu_on_boot=0
axiometa_pixie_m1.build.f_cpu=240000000L
axiometa_pixie_m1.build.flash_size=4MB
axiometa_pixie_m1.build.flash_freq=80m
axiometa_pixie_m1.build.flash_mode=dio
axiometa_pixie_m1.build.boot=qio
axiometa_pixie_m1.build.boot_freq=80m
axiometa_pixie_m1.build.partitions=default
axiometa_pixie_m1.build.defines=-DBOARD_HAS_PSRAM
axiometa_pixie_m1.build.loop_core=
axiometa_pixie_m1.build.event_core=
axiometa_pixie_m1.build.psram_type=qspi
axiometa_pixie_m1.build.memory_type={build.boot}_{build.psram_type}

## JTAG Adapter - N4R2 Compatible
axiometa_pixie_m1.menu.JTAGAdapter.default=Disabled
axiometa_pixie_m1.menu.JTAGAdapter.default.build.copy_jtag_files=0
axiometa_pixie_m1.menu.JTAGAdapter.builtin=Integrated USB JTAG
axiometa_pixie_m1.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg
axiometa_pixie_m1.menu.JTAGAdapter.builtin.build.copy_jtag_files=1
axiometa_pixie_m1.menu.JTAGAdapter.external=FTDI Adapter
axiometa_pixie_m1.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg
axiometa_pixie_m1.menu.JTAGAdapter.external.build.copy_jtag_files=1
axiometa_pixie_m1.menu.JTAGAdapter.bridge=ESP USB Bridge
axiometa_pixie_m1.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg
axiometa_pixie_m1.menu.JTAGAdapter.bridge.build.copy_jtag_files=1

## PSRAM - N4R2 has 2MB QSPI PSRAM
axiometa_pixie_m1.menu.PSRAM.enabled=QSPI PSRAM (Enabled)
axiometa_pixie_m1.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM
axiometa_pixie_m1.menu.PSRAM.enabled.build.psram_type=qspi
axiometa_pixie_m1.menu.PSRAM.disabled=Disabled
axiometa_pixie_m1.menu.PSRAM.disabled.build.defines=
axiometa_pixie_m1.menu.PSRAM.disabled.build.psram_type=qspi

## Flash Mode - N4R2 Compatible (QSPI Flash)
axiometa_pixie_m1.menu.FlashMode.qio=QIO 80MHz
axiometa_pixie_m1.menu.FlashMode.qio.build.flash_mode=dio
axiometa_pixie_m1.menu.FlashMode.qio.build.boot=qio
axiometa_pixie_m1.menu.FlashMode.qio.build.boot_freq=80m
axiometa_pixie_m1.menu.FlashMode.qio.build.flash_freq=80m
axiometa_pixie_m1.menu.FlashMode.qio120=QIO 120MHz
axiometa_pixie_m1.menu.FlashMode.qio120.build.flash_mode=dio
axiometa_pixie_m1.menu.FlashMode.qio120.build.boot=qio
axiometa_pixie_m1.menu.FlashMode.qio120.build.boot_freq=120m
axiometa_pixie_m1.menu.FlashMode.qio120.build.flash_freq=80m
axiometa_pixie_m1.menu.FlashMode.dio=DIO 80MHz
axiometa_pixie_m1.menu.FlashMode.dio.build.flash_mode=dio
axiometa_pixie_m1.menu.FlashMode.dio.build.boot=dio
axiometa_pixie_m1.menu.FlashMode.dio.build.boot_freq=80m
axiometa_pixie_m1.menu.FlashMode.dio.build.flash_freq=80m

## CPU Core Assignment
axiometa_pixie_m1.menu.LoopCore.1=Core 1
axiometa_pixie_m1.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1
axiometa_pixie_m1.menu.LoopCore.0=Core 0
axiometa_pixie_m1.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0

axiometa_pixie_m1.menu.EventsCore.1=Core 1
axiometa_pixie_m1.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1
axiometa_pixie_m1.menu.EventsCore.0=Core 0
axiometa_pixie_m1.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0

## USB Mode - Both modes work on N4R2
axiometa_pixie_m1.menu.USBMode.hwcdc=Hardware CDC and JTAG
axiometa_pixie_m1.menu.USBMode.hwcdc.build.usb_mode=1
axiometa_pixie_m1.menu.USBMode.default=USB-OTG (TinyUSB)
axiometa_pixie_m1.menu.USBMode.default.build.usb_mode=0

## CDC On Boot
axiometa_pixie_m1.menu.CDCOnBoot.cdc=Enabled
axiometa_pixie_m1.menu.CDCOnBoot.cdc.build.cdc_on_boot=1
axiometa_pixie_m1.menu.CDCOnBoot.default=Disabled
axiometa_pixie_m1.menu.CDCOnBoot.default.build.cdc_on_boot=0

## MSC On Boot (Only works with USB-OTG mode)
axiometa_pixie_m1.menu.MSCOnBoot.default=Disabled
axiometa_pixie_m1.menu.MSCOnBoot.default.build.msc_on_boot=0
axiometa_pixie_m1.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode)
axiometa_pixie_m1.menu.MSCOnBoot.msc.build.msc_on_boot=1

## DFU On Boot (Only works with USB-OTG mode)
axiometa_pixie_m1.menu.DFUOnBoot.default=Disabled
axiometa_pixie_m1.menu.DFUOnBoot.default.build.dfu_on_boot=0
axiometa_pixie_m1.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode)
axiometa_pixie_m1.menu.DFUOnBoot.dfu.build.dfu_on_boot=1

## Upload Mode
axiometa_pixie_m1.menu.UploadMode.default=UART0 / Hardware CDC
axiometa_pixie_m1.menu.UploadMode.default.upload.use_1200bps_touch=false
axiometa_pixie_m1.menu.UploadMode.default.upload.wait_for_upload_port=false
axiometa_pixie_m1.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB)
axiometa_pixie_m1.menu.UploadMode.cdc.upload.use_1200bps_touch=true
axiometa_pixie_m1.menu.UploadMode.cdc.upload.wait_for_upload_port=true

## Partition Schemes - 4MB Flash Compatible Only
axiometa_pixie_m1.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)
axiometa_pixie_m1.menu.PartitionScheme.default.build.partitions=default
axiometa_pixie_m1.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS)
axiometa_pixie_m1.menu.PartitionScheme.defaultffat.build.partitions=default_ffat
axiometa_pixie_m1.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS)
axiometa_pixie_m1.menu.PartitionScheme.minimal.build.partitions=minimal
axiometa_pixie_m1.menu.PartitionScheme.no_fs=No FS 4MB (2MB APP x2)
axiometa_pixie_m1.menu.PartitionScheme.no_fs.build.partitions=no_fs
axiometa_pixie_m1.menu.PartitionScheme.no_fs.upload.maximum_size=2031616
axiometa_pixie_m1.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS)
axiometa_pixie_m1.menu.PartitionScheme.no_ota.build.partitions=no_ota
axiometa_pixie_m1.menu.PartitionScheme.no_ota.upload.maximum_size=2097152
axiometa_pixie_m1.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS)
axiometa_pixie_m1.menu.PartitionScheme.noota_3g.build.partitions=noota_3g
axiometa_pixie_m1.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576
axiometa_pixie_m1.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS)
axiometa_pixie_m1.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat
axiometa_pixie_m1.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152
axiometa_pixie_m1.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS)
axiometa_pixie_m1.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat
axiometa_pixie_m1.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576
axiometa_pixie_m1.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS)
axiometa_pixie_m1.menu.PartitionScheme.huge_app.build.partitions=huge_app
axiometa_pixie_m1.menu.PartitionScheme.huge_app.upload.maximum_size=3145728
axiometa_pixie_m1.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS)
axiometa_pixie_m1.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs
axiometa_pixie_m1.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080
axiometa_pixie_m1.menu.PartitionScheme.rainmaker=RainMaker 4MB
axiometa_pixie_m1.menu.PartitionScheme.rainmaker.build.partitions=rainmaker
axiometa_pixie_m1.menu.PartitionScheme.rainmaker.upload.maximum_size=1966080
axiometa_pixie_m1.menu.PartitionScheme.rainmaker_4MB=RainMaker 4MB No OTA
axiometa_pixie_m1.menu.PartitionScheme.rainmaker_4MB.build.partitions=rainmaker_4MB_no_ota
axiometa_pixie_m1.menu.PartitionScheme.rainmaker_4MB.upload.maximum_size=4038656
axiometa_pixie_m1.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs
axiometa_pixie_m1.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr
axiometa_pixie_m1.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720
axiometa_pixie_m1.menu.PartitionScheme.custom=Custom
axiometa_pixie_m1.menu.PartitionScheme.custom.build.partitions=
axiometa_pixie_m1.menu.PartitionScheme.custom.upload.maximum_size=4194304

## CPU Frequency
axiometa_pixie_m1.menu.CPUFreq.240=240MHz (WiFi)
axiometa_pixie_m1.menu.CPUFreq.240.build.f_cpu=240000000L
axiometa_pixie_m1.menu.CPUFreq.160=160MHz (WiFi)
axiometa_pixie_m1.menu.CPUFreq.160.build.f_cpu=160000000L
axiometa_pixie_m1.menu.CPUFreq.80=80MHz (WiFi)
axiometa_pixie_m1.menu.CPUFreq.80.build.f_cpu=80000000L
axiometa_pixie_m1.menu.CPUFreq.40=40MHz
axiometa_pixie_m1.menu.CPUFreq.40.build.f_cpu=40000000L
axiometa_pixie_m1.menu.CPUFreq.20=20MHz
axiometa_pixie_m1.menu.CPUFreq.20.build.f_cpu=20000000L
axiometa_pixie_m1.menu.CPUFreq.10=10MHz
axiometa_pixie_m1.menu.CPUFreq.10.build.f_cpu=10000000L

## Upload Speed
axiometa_pixie_m1.menu.UploadSpeed.921600=921600
axiometa_pixie_m1.menu.UploadSpeed.921600.upload.speed=921600
axiometa_pixie_m1.menu.UploadSpeed.115200=115200
axiometa_pixie_m1.menu.UploadSpeed.115200.upload.speed=115200
axiometa_pixie_m1.menu.UploadSpeed.256000.windows=256000
axiometa_pixie_m1.menu.UploadSpeed.256000.upload.speed=256000
axiometa_pixie_m1.menu.UploadSpeed.230400.windows.upload.speed=256000
axiometa_pixie_m1.menu.UploadSpeed.230400=230400
axiometa_pixie_m1.menu.UploadSpeed.230400.upload.speed=230400
axiometa_pixie_m1.menu.UploadSpeed.460800.linux=460800
axiometa_pixie_m1.menu.UploadSpeed.460800.macosx=460800
axiometa_pixie_m1.menu.UploadSpeed.460800.upload.speed=460800
axiometa_pixie_m1.menu.UploadSpeed.512000.windows=512000
axiometa_pixie_m1.menu.UploadSpeed.512000.upload.speed=512000

## Debug Level
axiometa_pixie_m1.menu.DebugLevel.none=None
axiometa_pixie_m1.menu.DebugLevel.none.build.code_debug=0
axiometa_pixie_m1.menu.DebugLevel.error=Error
axiometa_pixie_m1.menu.DebugLevel.error.build.code_debug=1
axiometa_pixie_m1.menu.DebugLevel.warn=Warn
axiometa_pixie_m1.menu.DebugLevel.warn.build.code_debug=2
axiometa_pixie_m1.menu.DebugLevel.info=Info
axiometa_pixie_m1.menu.DebugLevel.info.build.code_debug=3
axiometa_pixie_m1.menu.DebugLevel.debug=Debug
axiometa_pixie_m1.menu.DebugLevel.debug.build.code_debug=4
axiometa_pixie_m1.menu.DebugLevel.verbose=Verbose
axiometa_pixie_m1.menu.DebugLevel.verbose.build.code_debug=5

## Erase Flash
axiometa_pixie_m1.menu.EraseFlash.none=Disabled
axiometa_pixie_m1.menu.EraseFlash.none.upload.erase_cmd=
axiometa_pixie_m1.menu.EraseFlash.all=Enabled
axiometa_pixie_m1.menu.EraseFlash.all.upload.erase_cmd=-e

## Zigbee Mode
axiometa_pixie_m1.menu.ZigbeeMode.default=Disabled
axiometa_pixie_m1.menu.ZigbeeMode.default.build.zigbee_mode=
axiometa_pixie_m1.menu.ZigbeeMode.default.build.zigbee_libs=
axiometa_pixie_m1.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator/router)
axiometa_pixie_m1.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR
axiometa_pixie_m1.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api.zczr -lzboss_stack.zczr -lzboss_port.remote

##############################################################
70 changes: 70 additions & 0 deletions variants/axiometa_pixie_m1/pins_arduino.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
#ifndef Pins_Arduino_h
#define Pins_Arduino_h

#include <stdint.h>
#include "soc/soc_caps.h"

#define USB_VID 0x303a
#define USB_PID 0x1001

// Pixie has a built in RGB LED WS2812B and a regular LED
#define PIN_RGB_LED 21
#define PIN_LED 11
// Regular built-in LED (pin 11) - for use with digitalWrite()
#define LED_BUILTIN PIN_LED
#define BUILTIN_LED LED_BUILTIN // backward compatibility
// RGB LED (pin 21) - use with RGB library functions
#define RGB_LED PIN_RGB_LED
// Allow testing for LED_BUILTIN
#ifdef LED_BUILTIN
// Defined and ready to use
#endif

static const uint8_t TX = 43;
static const uint8_t RX = 44;

static const uint8_t SDA = 10;
static const uint8_t SCL = 11;

static const uint8_t SS = 1;
static const uint8_t MOSI = 12;
static const uint8_t MISO = 13;
static const uint8_t SCK = 14;

static const uint8_t A0 = 1;
static const uint8_t A1 = 2;
static const uint8_t A2 = 3;
static const uint8_t A3 = 4;
static const uint8_t A4 = 5;
static const uint8_t A5 = 6;
static const uint8_t A6 = 7;
static const uint8_t A7 = 8;
static const uint8_t A8 = 9;
static const uint8_t A9 = 10;
static const uint8_t A10 = 11;
static const uint8_t A11 = 12;
static const uint8_t A12 = 13;
static const uint8_t A13 = 14;
static const uint8_t A14 = 15;
static const uint8_t A15 = 16;
static const uint8_t A16 = 17;
static const uint8_t A17 = 18;
static const uint8_t A18 = 19;
static const uint8_t A19 = 20;

static const uint8_t T1 = 1;
static const uint8_t T2 = 2;
static const uint8_t T3 = 3;
static const uint8_t T4 = 4;
static const uint8_t T5 = 5;
static const uint8_t T6 = 6;
static const uint8_t T7 = 7;
static const uint8_t T8 = 8;
static const uint8_t T9 = 9;
static const uint8_t T10 = 10;
static const uint8_t T11 = 11;
static const uint8_t T12 = 12;
static const uint8_t T13 = 13;
static const uint8_t T14 = 14;

#endif /* Pins_Arduino_h */