here’s what I’m using,
#include <U8x8lib.h>
#include <Arduino.h>
U8X8_SSD1306_128X64_NONAME_HW_I2C u8x8(/* reset=*/ U8X8_PIN_NONE);
const int touch_pin = A5;
int LED_pin = 21;
int MTMS_pin = 42;
uint32_t chipId = 0;
uint32_t corez = 0;
void setup(void) {
Serial.begin(9600);
delay (1000);
u8x8.begin();
u8x8.setFlipMode(1); // set number from 1 to 3, the screen word will rotary 180*
Serial.println();
for(int i=0; i<17; i=i+8) {
chipId |= ((ESP.getEfuseMac() >> (40 - i)) & 0xff) << i;
}
corez |=((ESP.getChipCores()));
u8x8.setFont(u8x8_font_chroma48medium8_r);
u8x8.setCursor(0, 0);
u8x8.print("Checking Chip");
Serial.printf("ESP32 Chip model = %s Rev %d\n", ESP.getChipModel(), ESP.getChipRevision());
Serial.printf("This chip has %d cores\n", ESP.getChipCores());
u8x8.setCursor(0,4);
u8x8.print("This chip has");u8x8.print(corez);u8x8.print("cores");
Serial.print("Chip ID: "); Serial.println(chipId);
u8x8.setCursor(0, 6);
u8x8.print("Chip ID: "); u8x8.print(chipId);
// declaring LED pin as output
pinMode(LED_pin, OUTPUT);
pinMode(D2,OUTPUT);
pinMode(MTMS_pin, OUTPUT);
delay (2000);
Serial.print("MOSI: ");
Serial.println(MOSI);
Serial.print("MISO: ");
Serial.println(MISO);
Serial.print("SCK: ");
Serial.println(SCK);
Serial.print("SS: ");
Serial.println(SS);
Serial.print("Running on Core: ");
Serial.println(xPortGetCoreID());
}
void loop(void) {
Serial.print("Running on Core: ");
Serial.println(xPortGetCoreID());
// turn on:
digitalWrite(LED_pin, HIGH);
digitalWrite(D2, HIGH);
digitalWrite(MTMS_pin, HIGH);
delay(500);
// turn off:
Serial.print("Touch value: ");
Serial.println(analogRead(touch_pin));
delay(1000);
digitalWrite(LED_pin, LOW);
digitalWrite(MTMS_pin,LOW);
digitalWrite(D2, LOW);
delay(500);
}
Compiler output that matters first 20 or so lines and the last 20 or so…
FQBN: esp32:esp32:XIAO_ESP32S3
Using board 'XIAO_ESP32S3' from platform in folder: C:\Users\Dude\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.8
Using core 'esp32' from platform in folder: C:\Users\Dude\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.8
cmd /c if exist "D:\\Arduino_projects\\Jtag_Pin_sketch_S3\\partitions.csv" COPY /y "D:\\Arduino_projects\\Jtag_Pin_sketch_S3\\partitions.csv" "C:\\Users\\Dude\\AppData\\Local\\Temp\\arduino\\sketches\\7644685E6950F98AFB59236ED4B1F5BD\\partitions.csv"
cmd /c if not exist Using cached library dependencies for file: d:\Arduino_projects\libraries\U8g2\src\U8x8lib.cpp
Alternatives for SPI.h: [[email protected]]
edit----
Successfully created esp32s3 image.
"C:\\Users\\Dude\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\2.0.8/tools/gen_esp32part.exe" -q "C:\\Users\\Dude\\AppData\\Local\\Temp\\arduino\\sketches\\7644685E6950F98AFB59236ED4B1F5BD/partitions.csv" "C:\\Users\\Dude\\AppData\\Local\\Temp\\arduino\\sketches\\7644685E6950F98AFB59236ED4B1F5BD/Jtag_Pin_sketch_S3.ino.partitions.bin"
cmd /c if exist "C:\\Users\\Dude\\AppData\\Local\\Temp\\arduino\\sketches\\7644685E6950F98AFB59236ED4B1F5BD\\libraries\\Insights" "C:\\Users\\Dude\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\2.0.8/tools/gen_insights_package.exe" "C:\\Users\\Dude\\AppData\\Local\\Temp\\arduino\\sketches\\7644685E6950F98AFB59236ED4B1F5BD" Jtag_Pin_sketch_S3.ino "D:\\Arduino_projects\\Jtag_Pin_sketch_S3"
cmd /c IF 0==1 COPY /y "C:\\Users\\Dude\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\openocd-esp32\\v0.11.0-esp32-20221026\\share\\openocd\\scripts\\board\\esp32s3-builtin.cfg" "D:\\Arduino_projects\\Jtag_Pin_sketch_S3\\debug.cfg"
cmd /c IF 0==1 COPY /y "C:\\Users\\Dude\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\2.0.8\\tools\\ide-debug\\esp32s3.json" "D:\\Arduino_projects\\Jtag_Pin_sketch_S3\\debug_custom.json"
cmd /c IF 0==1 COPY /y "C:\\Users\\Dude\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\2.0.8\\tools\\ide-debug\\svd\\esp32s3.svd" "D:\\Arduino_projects\\Jtag_Pin_sketch_S3\\debug.svd"
Using library U8g2 at version 2.34.22 in folder: D:\Arduino_projects\libraries\U8g2
Using library SPI at version 2.0.0 in folder: C:\Users\Dude\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.8\libraries\SPI
Using library Wire at version 2.0.0 in folder: C:\Users\Dude\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.8\libraries\Wire
"C:\\Users\\Dude\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\xtensa-esp32s3-elf-gcc\\esp-2021r2-patch5-8.4.0/bin/xtensa-esp32s3-elf-size" -A "C:\\Users\\Dude\\AppData\\Local\\Temp\\arduino\\sketches\\7644685E6950F98AFB59236ED4B1F5BD/Jtag_Pin_sketch_S3.ino.elf"
Sketch uses 272757 bytes (8%) of program storage space. Maximum is 3342336 bytes.
Global variables use 20164 bytes (6%) of dynamic memory, leaving 307516 bytes for local variables. Maximum is 327680 bytes.
"C:\Users\Dude\AppData\Local\Arduino15\packages\esp32\tools\esptool_py\4.5.1/esptool.exe" --chip esp32s3 --port "COM23" --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 8MB 0x0 "C:\Users\Dude\AppData\Local\Temp\arduino\sketches\7644685E6950F98AFB59236ED4B1F5BD/Jtag_Pin_sketch_S3.ino.bootloader.bin" 0x8000 "C:\Users\Dude\AppData\Local\Temp\arduino\sketches\7644685E6950F98AFB59236ED4B1F5BD/Jtag_Pin_sketch_S3.ino.partitions.bin" 0xe000 "C:\Users\Dude\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.8/tools/partitions/boot_app0.bin" 0x10000 "C:\Users\Dude\AppData\Local\Temp\arduino\sketches\7644685E6950F98AFB59236ED4B1F5BD/Jtag_Pin_sketch_S3.ino.bin"
esptool.py v4.5.1
Serial port COM23
Connecting...
Chip is ESP32-S3 (revision v0.2)
Features: WiFi, BLE
Crystal is 40MHz
MAC: 84:fc:e6:6a:d0:f0
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Flash will be erased from 0x00000000 to 0x00003fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x00052fff...
Compressed 15040 bytes to 10333...
Writing at 0x00000000... (100 %)
Wrote 15040 bytes (10333 compressed) at 0x00000000 in 0.2 seconds (effective 515.4 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 146...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (146 compressed) at 0x00008000 in 0.0 seconds (effective 536.6 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 757.0 kbit/s)...
Hash of data verified.
Compressed 273120 bytes to 152045...
Writing at 0x00010000... (10 %)
Writing at 0x0001ca29... (20 %)
Writing at 0x00024ac7... (30 %)
Writing at 0x0002a0a2... (40 %)
Writing at 0x0002f829... (50 %)
Writing at 0x00034ede... (60 %)
Writing at 0x0003d4ee... (70 %)
Writing at 0x00045f8a... (80 %)
Writing at 0x0004b40f... (90 %)
Writing at 0x00050ece... (100 %)
Wrote 273120 bytes (152045 compressed) at 0x00010000 in 1.9 seconds (effective 1153.9 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
I do need to press reset to run the code once it downloads. FYI
PJ
the serial output , the code is the touch program that comes installed on it with some SPI pin id stuff and display the cores and chip id. just test code that works always. test the display as well. I’m using it on a XEB.
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x15 (USB_UART_CHIP_RESET),boot:0x2b (SPI_FAST_FLASH_BOOT)
Saved PC:0x420230ea
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3808,len:0x44c
load:0x403c9700,len:0xbe4
load:0x403cc700,len:0x2a38
entry 0x403c98d4
ESP32 Chip model = ESP32-S3 Rev 0
This chip has 2 cores
Chip ID: 7000304
MOSI: 9
MISO: 8
SCK: 7
SS: 44
Running on Core: 1
Running on Core: 1
Touch value: 4095
Running on Core: 1
Touch value: 4095
Running on Core: 1