Skip to content

Commit

Permalink
Merge pull request #374 from jamesjnadeau/m5stack-cardputer
Browse files Browse the repository at this point in the history
add initial working m5stack_stamps3
  • Loading branch information
hathach authored Jan 31, 2024
2 parents c4d98f2 + 0c44ffa commit eec497e
Show file tree
Hide file tree
Showing 4 changed files with 113 additions and 0 deletions.
1 change: 1 addition & 0 deletions .github/workflows/build_esp32.yml
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ jobs:
- 'm5stack_atoms3'
- 'm5stack_atoms3_lite'
- 'm5stack_atoms3u'
- 'm5stack_stamps3'
- 'magiclick_s3_n4r2'
- 'seeed_xiao_esp32s3'
- 'smartbeedesigns_bee_motion_s3'
Expand Down
2 changes: 2 additions & 0 deletions ports/espressif/boards/m5stack_stamps3/board.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Apply board specific content here
set(IDF_TARGET "esp32s3")
102 changes: 102 additions & 0 deletions ports/espressif/boards/m5stack_stamps3/board.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
/*
* The MIT License (MIT)
*
* Copyright (c) 2020 Ha Thach (tinyusb.org) for Adafruit Industries
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/


#ifndef M5STACK_STAMPS3_BOARD_H_
#define M5STACK_STAMPS3_BOARD_H_

//--------------------------------------------------------------------+
// Button
//--------------------------------------------------------------------+

// Enter UF2 mode if GPIO is pressed while 2nd stage bootloader indicator
// is on e.g RGB = Purple. If it is GPIO0, user should not hold this while
// reset since that will instead run the 1st stage ROM bootloader
#define PIN_BUTTON_UF2 0

// GPIO that implement 1-bit memory with RC components which hold the
// pin value long enough for double reset detection.
#define PIN_DOUBLE_RESET_RC 38

//--------------------------------------------------------------------+
// LED
//--------------------------------------------------------------------+

// GPIO connected to Neopixel data
#define NEOPIXEL_PIN 21

// Brightness percentage from 1 to 255
#define NEOPIXEL_BRIGHTNESS 0x10

// Number of neopixels
#define NEOPIXEL_NUMBER 1

//--------------------------------------------------------------------+
// TFT
//--------------------------------------------------------------------+

#define CONFIG_LCD_TYPE_ST7789V

#define DISPLAY_PIN_MISO -1 // required if use CONFIG_LCD_TYPE_AUTO
#define DISPLAY_PIN_MOSI 35
#define DISPLAY_PIN_SCK 36

#define DISPLAY_PIN_CS 37
#define DISPLAY_PIN_DC 34
#define DISPLAY_PIN_RST 33

#define DISPLAY_PIN_BL 45
#define DISPLAY_BL_ON 1 // GPIO state to enable back light

#define DISPLAY_PIN_POWER 21
#define DISPLAY_POWER_ON 1 // GPIO state to enable TFT

#define DISPLAY_WIDTH 240
#define DISPLAY_HEIGHT 135

#define DISPLAY_COL_OFFSET 53
#define DISPLAY_ROW_OFFSET 40

// Memory Data Access Control & // Vertical Scroll Start Address
#define DISPLAY_MADCTL (TFT_MADCTL_MX)
#define DISPLAY_VSCSAD 0

#define DISPLAY_TITLE "M5 Stamp S3 TFT"

//--------------------------------------------------------------------+
// USB UF2
//--------------------------------------------------------------------+

#define USB_VID 0x303A
#define USB_PID 0x811A

#define USB_MANUFACTURER "M5"
#define USB_PRODUCT "Stamp S3"

#define UF2_PRODUCT_NAME USB_MANUFACTURER " " USB_PRODUCT
#define UF2_BOARD_ID "ESP32S3-StampS3-01"
#define UF2_VOLUME_LABEL "M5S3BOOT"
#define UF2_INDEX_URL "https://docs.m5stack.com/en/core/StampS3"

#endif
8 changes: 8 additions & 0 deletions ports/espressif/boards/m5stack_stamps3/sdkconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Board Specific Config

# Partition Table
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions-8MB.csv"

# Serial flasher config
CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="8MB"

0 comments on commit eec497e

Please sign in to comment.