Skip to content

Commit b52caef

Browse files
committed
change(board-support): Add board support for Autosport Labs ESP32-CAN-X2 development board
1 parent d164df8 commit b52caef

File tree

3 files changed

+283
-0
lines changed

3 files changed

+283
-0
lines changed

boards.txt

+202
Original file line numberDiff line numberDiff line change
@@ -36447,3 +36447,205 @@ weact_studio_esp32c3.menu.EraseFlash.all=Enabled
3644736447
weact_studio_esp32c3.menu.EraseFlash.all.upload.erase_cmd=-e
3644836448

3644936449
##############################################################
36450+
36451+
aslcanx2.name=AutosportLabs ESP-CAN-X2
36452+
aslcanx2.vid.0=0x303a
36453+
aslcanx2.pid.0=0x1001
36454+
36455+
aslcanx2.bootloader.tool=esptool_py
36456+
aslcanx2.bootloader.tool.default=esptool_py
36457+
36458+
aslcanx2.upload.tool=esptool_py
36459+
aslcanx2.upload.tool.default=esptool_py
36460+
aslcanx2.upload.tool.network=esp_ota
36461+
36462+
aslcanx2.upload.maximum_size=1310720
36463+
aslcanx2.upload.maximum_data_size=327680
36464+
aslcanx2.upload.flags=
36465+
aslcanx2.upload.extra_flags=
36466+
aslcanx2.upload.use_1200bps_touch=false
36467+
aslcanx2.upload.wait_for_upload_port=false
36468+
36469+
aslcanx2.serial.disableDTR=false
36470+
aslcanx2.serial.disableRTS=false
36471+
36472+
aslcanx2.build.tarch=xtensa
36473+
aslcanx2.build.bootloader_addr=0x0
36474+
aslcanx2.build.target=esp32s3
36475+
aslcanx2.build.mcu=esp32s3
36476+
aslcanx2.build.core=esp32
36477+
aslcanx2.build.variant=aslcanx2
36478+
aslcanx2.build.board=ESP32S3_DEV
36479+
36480+
aslcanx2.build.usb_mode=1
36481+
aslcanx2.build.cdc_on_boot=0
36482+
aslcanx2.build.msc_on_boot=0
36483+
aslcanx2.build.dfu_on_boot=0
36484+
aslcanx2.build.f_cpu=240000000L
36485+
aslcanx2.build.flash_size=8MB
36486+
aslcanx2.build.flash_freq=80m
36487+
aslcanx2.build.flash_mode=dio
36488+
aslcanx2.build.boot=qio
36489+
aslcanx2.build.boot_freq=80m
36490+
aslcanx2.build.partitions=default_8MB
36491+
aslcanx2.build.defines=
36492+
aslcanx2.build.loop_core=
36493+
aslcanx2.build.event_core=
36494+
aslcanx2.build.psram_type=qspi
36495+
aslcanx2.build.memory_type={build.boot}_{build.psram_type}
36496+
36497+
## IDE 2.0 Seems to not update the value
36498+
aslcanx2.menu.JTAGAdapter.default=Disabled
36499+
aslcanx2.menu.JTAGAdapter.default.build.copy_jtag_files=0
36500+
aslcanx2.menu.JTAGAdapter.builtin=Integrated USB JTAG
36501+
aslcanx2.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg
36502+
aslcanx2.menu.JTAGAdapter.builtin.build.copy_jtag_files=1
36503+
aslcanx2.menu.JTAGAdapter.external=FTDI Adapter
36504+
aslcanx2.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg
36505+
aslcanx2.menu.JTAGAdapter.external.build.copy_jtag_files=1
36506+
aslcanx2.menu.JTAGAdapter.bridge=ESP USB Bridge
36507+
aslcanx2.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg
36508+
aslcanx2.menu.JTAGAdapter.bridge.build.copy_jtag_files=1
36509+
36510+
aslcanx2.menu.PSRAM.disabled=Disabled
36511+
aslcanx2.menu.PSRAM.disabled.build.defines=
36512+
aslcanx2.menu.PSRAM.disabled.build.psram_type=qspi
36513+
aslcanx2.menu.PSRAM.opi=OPI PSRAM
36514+
aslcanx2.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM
36515+
aslcanx2.menu.PSRAM.opi.build.psram_type=opi
36516+
36517+
aslcanx2.menu.FlashMode.qio=QIO 80MHz
36518+
aslcanx2.menu.FlashMode.qio.build.flash_mode=dio
36519+
aslcanx2.menu.FlashMode.qio.build.boot=qio
36520+
aslcanx2.menu.FlashMode.qio.build.boot_freq=80m
36521+
aslcanx2.menu.FlashMode.qio.build.flash_freq=80m
36522+
aslcanx2.menu.FlashMode.qio120=QIO 120MHz
36523+
aslcanx2.menu.FlashMode.qio120.build.flash_mode=dio
36524+
aslcanx2.menu.FlashMode.qio120.build.boot=qio
36525+
aslcanx2.menu.FlashMode.qio120.build.boot_freq=120m
36526+
aslcanx2.menu.FlashMode.qio120.build.flash_freq=80m
36527+
aslcanx2.menu.FlashMode.dio=DIO 80MHz
36528+
aslcanx2.menu.FlashMode.dio.build.flash_mode=dio
36529+
aslcanx2.menu.FlashMode.dio.build.boot=dio
36530+
aslcanx2.menu.FlashMode.dio.build.boot_freq=80m
36531+
aslcanx2.menu.FlashMode.dio.build.flash_freq=80m
36532+
aslcanx2.menu.FlashMode.opi=OPI 80MHz
36533+
aslcanx2.menu.FlashMode.opi.build.flash_mode=dout
36534+
aslcanx2.menu.FlashMode.opi.build.boot=opi
36535+
aslcanx2.menu.FlashMode.opi.build.boot_freq=80m
36536+
aslcanx2.menu.FlashMode.opi.build.flash_freq=80m
36537+
36538+
aslcanx2.menu.LoopCore.1=Core 1
36539+
aslcanx2.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1
36540+
aslcanx2.menu.LoopCore.0=Core 0
36541+
aslcanx2.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0
36542+
36543+
aslcanx2.menu.EventsCore.1=Core 1
36544+
aslcanx2.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1
36545+
aslcanx2.menu.EventsCore.0=Core 0
36546+
aslcanx2.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0
36547+
36548+
aslcanx2.menu.USBMode.hwcdc=Hardware CDC and JTAG
36549+
aslcanx2.menu.USBMode.hwcdc.build.usb_mode=1
36550+
aslcanx2.menu.USBMode.default=USB-OTG (TinyUSB)
36551+
aslcanx2.menu.USBMode.default.build.usb_mode=0
36552+
36553+
aslcanx2.menu.CDCOnBoot.default=Enabled
36554+
aslcanx2.menu.CDCOnBoot.default.build.cdc_on_boot=1
36555+
aslcanx2.menu.CDCOnBoot.cdc=Disabled
36556+
aslcanx2.menu.CDCOnBoot.cdc.build.cdc_on_boot=0
36557+
36558+
aslcanx2.menu.MSCOnBoot.default=Disabled
36559+
aslcanx2.menu.MSCOnBoot.default.build.msc_on_boot=0
36560+
aslcanx2.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode)
36561+
aslcanx2.menu.MSCOnBoot.msc.build.msc_on_boot=1
36562+
36563+
aslcanx2.menu.DFUOnBoot.default=Disabled
36564+
aslcanx2.menu.DFUOnBoot.default.build.dfu_on_boot=0
36565+
aslcanx2.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode)
36566+
aslcanx2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1
36567+
36568+
aslcanx2.menu.UploadMode.default=UART0 / Hardware CDC
36569+
aslcanx2.menu.UploadMode.default.upload.use_1200bps_touch=false
36570+
aslcanx2.menu.UploadMode.default.upload.wait_for_upload_port=false
36571+
aslcanx2.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB)
36572+
aslcanx2.menu.UploadMode.cdc.upload.use_1200bps_touch=true
36573+
aslcanx2.menu.UploadMode.cdc.upload.wait_for_upload_port=true
36574+
36575+
aslcanx2.menu.PartitionScheme.default=Default with spiffs (3MB APP/1.5MB SPIFFS)
36576+
aslcanx2.menu.PartitionScheme.default.build.partitions=default_8MB
36577+
aslcanx2.menu.PartitionScheme.default.upload.maximum_size=3342336
36578+
aslcanx2.menu.PartitionScheme.defaultffat=Default with ffat (3MB APP/1.5MB FATFS)
36579+
aslcanx2.menu.PartitionScheme.defaultffat.build.partitions=default_8MB_ffat
36580+
aslcanx2.menu.PartitionScheme.defaultffat.upload.maximum_size=3342336
36581+
aslcanx2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS)
36582+
aslcanx2.menu.PartitionScheme.minimal.build.partitions=minimal
36583+
aslcanx2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS)
36584+
aslcanx2.menu.PartitionScheme.no_ota.build.partitions=no_ota
36585+
aslcanx2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152
36586+
aslcanx2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS)
36587+
aslcanx2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g
36588+
aslcanx2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576
36589+
aslcanx2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS)
36590+
aslcanx2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat
36591+
aslcanx2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152
36592+
aslcanx2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS)
36593+
aslcanx2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat
36594+
aslcanx2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576
36595+
aslcanx2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS)
36596+
aslcanx2.menu.PartitionScheme.huge_app.build.partitions=huge_app
36597+
aslcanx2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728
36598+
aslcanx2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS)
36599+
aslcanx2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs
36600+
aslcanx2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080
36601+
aslcanx2.menu.PartitionScheme.rainmaker=RainMaker
36602+
aslcanx2.menu.PartitionScheme.rainmaker.build.partitions=rainmaker
36603+
aslcanx2.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728
36604+
36605+
aslcanx2.menu.CPUFreq.240=240MHz (WiFi)
36606+
aslcanx2.menu.CPUFreq.240.build.f_cpu=240000000L
36607+
aslcanx2.menu.CPUFreq.160=160MHz (WiFi)
36608+
aslcanx2.menu.CPUFreq.160.build.f_cpu=160000000L
36609+
aslcanx2.menu.CPUFreq.80=80MHz (WiFi)
36610+
aslcanx2.menu.CPUFreq.80.build.f_cpu=80000000L
36611+
aslcanx2.menu.CPUFreq.40=40MHz
36612+
aslcanx2.menu.CPUFreq.40.build.f_cpu=40000000L
36613+
aslcanx2.menu.CPUFreq.20=20MHz
36614+
aslcanx2.menu.CPUFreq.20.build.f_cpu=20000000L
36615+
aslcanx2.menu.CPUFreq.10=10MHz
36616+
aslcanx2.menu.CPUFreq.10.build.f_cpu=10000000L
36617+
36618+
aslcanx2.menu.UploadSpeed.921600=921600
36619+
aslcanx2.menu.UploadSpeed.921600.upload.speed=921600
36620+
aslcanx2.menu.UploadSpeed.115200=115200
36621+
aslcanx2.menu.UploadSpeed.115200.upload.speed=115200
36622+
aslcanx2.menu.UploadSpeed.256000.windows=256000
36623+
aslcanx2.menu.UploadSpeed.256000.upload.speed=256000
36624+
aslcanx2.menu.UploadSpeed.230400.windows.upload.speed=256000
36625+
aslcanx2.menu.UploadSpeed.230400=230400
36626+
aslcanx2.menu.UploadSpeed.230400.upload.speed=230400
36627+
aslcanx2.menu.UploadSpeed.460800.linux=460800
36628+
aslcanx2.menu.UploadSpeed.460800.macosx=460800
36629+
aslcanx2.menu.UploadSpeed.460800.upload.speed=460800
36630+
aslcanx2.menu.UploadSpeed.512000.windows=512000
36631+
aslcanx2.menu.UploadSpeed.512000.upload.speed=512000
36632+
36633+
aslcanx2.menu.DebugLevel.none=None
36634+
aslcanx2.menu.DebugLevel.none.build.code_debug=0
36635+
aslcanx2.menu.DebugLevel.error=Error
36636+
aslcanx2.menu.DebugLevel.error.build.code_debug=1
36637+
aslcanx2.menu.DebugLevel.warn=Warn
36638+
aslcanx2.menu.DebugLevel.warn.build.code_debug=2
36639+
aslcanx2.menu.DebugLevel.info=Info
36640+
aslcanx2.menu.DebugLevel.info.build.code_debug=3
36641+
aslcanx2.menu.DebugLevel.debug=Debug
36642+
aslcanx2.menu.DebugLevel.debug.build.code_debug=4
36643+
aslcanx2.menu.DebugLevel.verbose=Verbose
36644+
aslcanx2.menu.DebugLevel.verbose.build.code_debug=5
36645+
36646+
aslcanx2.menu.EraseFlash.none=Disabled
36647+
aslcanx2.menu.EraseFlash.none.upload.erase_cmd=
36648+
aslcanx2.menu.EraseFlash.all=Enabled
36649+
aslcanx2.menu.EraseFlash.all.upload.erase_cmd=-e
36650+
36651+
##############################################################
+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Name, Type, SubType, Offset, Size, Flags
2+
nvs, data, nvs, 0x9000, 0x5000,
3+
otadata, data, ota, 0xe000, 0x2000,
4+
app0, app, ota_0, 0x10000, 0x330000,
5+
app1, app, ota_1, 0x340000,0x330000,
6+
ffat, data, fat, 0x670000,0x180000,
7+
coredump, data, coredump,0x7F0000,0x10000,

variants/aslcanx2/pins_arduino.h

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
#ifndef Pins_Arduino_h
2+
#define Pins_Arduino_h
3+
4+
#include <stdint.h>
5+
#include "soc/soc_caps.h"
6+
7+
#define USB_VID 0x303a
8+
#define USB_PID 0x1001
9+
10+
#define EXTERNAL_NUM_INTERRUPTS 46
11+
#define NUM_DIGITAL_PINS 48
12+
#define NUM_ANALOG_INPUTS 20
13+
14+
static const uint8_t LED_BUILTIN = 2;
15+
#define BUILTIN_LED LED_BUILTIN // backward compatibility
16+
#define LED_BUILTIN LED_BUILTIN
17+
18+
#define analogInputToDigitalPin(p) (((p)<20)?(analogChannelToDigitalPin(p)):-1)
19+
#define digitalPinToInterrupt(p) (((p)<48)?(p):-1)
20+
#define digitalPinHasPWM(p) (p < 46)
21+
22+
static const uint8_t CAN1_RX = 6;
23+
static const uint8_t CAN1_TX = 7;
24+
25+
static const uint8_t SS = -1;
26+
static const uint8_t CS = 10;
27+
static const uint8_t MOSI = 11;
28+
static const uint8_t MISO = 13;
29+
static const uint8_t SCK = 12;
30+
31+
32+
static const uint8_t TX = 43;
33+
static const uint8_t RX = 44;
34+
35+
static const uint8_t SDA = 8;
36+
static const uint8_t SCL = 9;
37+
38+
static const uint8_t A0 = 1;
39+
static const uint8_t A1 = 2;
40+
static const uint8_t A2 = 3;
41+
static const uint8_t A3 = 4;
42+
static const uint8_t A4 = 5;
43+
static const uint8_t A5 = 6;
44+
static const uint8_t A6 = 7;
45+
static const uint8_t A7 = 8;
46+
static const uint8_t A8 = 9;
47+
static const uint8_t A9 = 10;
48+
static const uint8_t A10 = 11;
49+
static const uint8_t A11 = 12;
50+
static const uint8_t A12 = 13;
51+
static const uint8_t A13 = 14;
52+
static const uint8_t A14 = 15;
53+
static const uint8_t A15 = 16;
54+
static const uint8_t A16 = 17;
55+
static const uint8_t A17 = 18;
56+
static const uint8_t A18 = 19;
57+
static const uint8_t A19 = 20;
58+
59+
static const uint8_t T1 = 1;
60+
static const uint8_t T2 = 2;
61+
static const uint8_t T3 = 3;
62+
static const uint8_t T4 = 4;
63+
static const uint8_t T5 = 5;
64+
static const uint8_t T6 = 6;
65+
static const uint8_t T7 = 7;
66+
static const uint8_t T8 = 8;
67+
static const uint8_t T9 = 9;
68+
static const uint8_t T10 = 10;
69+
static const uint8_t T11 = 11;
70+
static const uint8_t T12 = 12;
71+
static const uint8_t T13 = 13;
72+
static const uint8_t T14 = 14;
73+
74+
#endif /* Pins_Arduino_h */

0 commit comments

Comments
 (0)