Skip to content

Commit 1bb103a

Browse files
authored
Merge pull request #163 from ndoo/main
Add support for M5Stack AtomS3R-CAM
2 parents a4c6d60 + d55a97a commit 1bb103a

File tree

3 files changed

+90
-0
lines changed

3 files changed

+90
-0
lines changed
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
{
2+
"build": {
3+
"arduino":{
4+
"ldscript": "esp32s3_out.ld",
5+
"partitions": "default_8MB.csv",
6+
"memory_type": "qio_opi"
7+
},
8+
"core": "esp32",
9+
"extra_flags": [
10+
"'-D ESP32CAM_M5STACK_ATOMS3R'",
11+
"'-D BOARD_HAS_PSRAM'",
12+
"'-D ARDUINO_USB_MODE=1'",
13+
"'-D ARDUINO_USB_CDC_ON_BOOT=1'",
14+
"'-D ARDUINO_RUNNING_CORE=1'",
15+
"'-D ARDUINO_EVENT_RUNNING_CORE=1'",
16+
"'-D USER_LED_GPIO=GPIO_NUM_NC'",
17+
"'-D USER_LED_ON_LEVEL=GPIO_NUM_NC'",
18+
"'-D CAMERA_POWER_GPIO=18'",
19+
"'-D CAMERA_POWER_ON_LEVEL=LOW'",
20+
"'-D CAMERA_CONFIG_PIN_PWDN=GPIO_NUM_NC'",
21+
"'-D CAMERA_CONFIG_PIN_RESET=GPIO_NUM_NC'",
22+
"'-D CAMERA_CONFIG_PIN_XCLK=21'",
23+
"'-D CAMERA_CONFIG_PIN_SCCB_SDA=12'",
24+
"'-D CAMERA_CONFIG_PIN_SCCB_SCL=9'",
25+
"'-D CAMERA_CONFIG_PIN_Y9=13'",
26+
"'-D CAMERA_CONFIG_PIN_Y8=11'",
27+
"'-D CAMERA_CONFIG_PIN_Y7=17'",
28+
"'-D CAMERA_CONFIG_PIN_Y6=4'",
29+
"'-D CAMERA_CONFIG_PIN_Y5=48'",
30+
"'-D CAMERA_CONFIG_PIN_Y4=46'",
31+
"'-D CAMERA_CONFIG_PIN_Y3=42'",
32+
"'-D CAMERA_CONFIG_PIN_Y2=3'",
33+
"'-D CAMERA_CONFIG_PIN_VSYNC=10'",
34+
"'-D CAMERA_CONFIG_PIN_HREF=14'",
35+
"'-D CAMERA_CONFIG_PIN_PCLK=40'",
36+
"'-D CAMERA_CONFIG_CLK_FREQ_HZ=20000000'",
37+
"'-D CAMERA_CONFIG_LEDC_TIMER=LEDC_TIMER_0'",
38+
"'-D CAMERA_CONFIG_LEDC_CHANNEL=LEDC_CHANNEL_0'",
39+
"'-D CAMERA_CONFIG_FB_COUNT=2'",
40+
"'-D CAMERA_CONFIG_FB_LOCATION=CAMERA_FB_IN_PSRAM'",
41+
"'-D SCCB_I2C_PORT=I2C_NUM_0'",
42+
"'-D GROVE_SDA=2'",
43+
"'-D GROVE_SCL=1'"
44+
],
45+
"f_cpu": "240000000L",
46+
"f_flash": "80000000L",
47+
"flash_mode": "qio",
48+
"hwids": [
49+
[
50+
"0x2886",
51+
"0x0056"
52+
],
53+
[
54+
"0x2886",
55+
"0x8056"
56+
]
57+
],
58+
"mcu": "esp32s3",
59+
"variant": "esp32s3"
60+
},
61+
"connectivity": [
62+
"bluetooth",
63+
"wifi"
64+
],
65+
"debug": {
66+
"openocd_target": "esp32s3.cfg"
67+
},
68+
"frameworks": [
69+
"arduino",
70+
"espidf"
71+
],
72+
"name": "M5STACK ATOMS3R",
73+
"upload": {
74+
"flash_size": "8MB",
75+
"maximum_ram_size": 327680,
76+
"maximum_size": 8388608,
77+
"require_upload_port": true,
78+
"speed": 460800
79+
},
80+
"url": "https://docs.m5stack.com/en/unit/esp32cam",
81+
"vendor": "M5STACK"
82+
}

platformio.ini

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,9 @@ board = esp32cam_espressif_esp32s3_eye
8383
[env:esp32cam_freenove_wrover_kit]
8484
board = esp32cam_freenove_wrover_kit
8585

86+
[env:esp32cam_m5stack_atoms3r]
87+
board = esp32cam_m5stack_atoms3r
88+
8689
[env:esp32cam_m5stack_camera_psram]
8790
board = esp32cam_m5stack_camera_psram
8891

src/main.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,6 +316,11 @@ void setup()
316316
// Disable brownout
317317
WRITE_PERI_REG(RTC_CNTL_BROWN_OUT_REG, 0);
318318

319+
#ifdef CAMERA_POWER_GPIO
320+
pinMode(CAMERA_POWER_GPIO, OUTPUT);
321+
digitalWrite(CAMERA_POWER_GPIO, CAMERA_POWER_ON_LEVEL);
322+
#endif
323+
319324
#ifdef USER_LED_GPIO
320325
pinMode(USER_LED_GPIO, OUTPUT);
321326
digitalWrite(USER_LED_GPIO, !USER_LED_ON_LEVEL);

0 commit comments

Comments
 (0)