Skip to content

Add M5Stack-FIRE board #1647

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jul 25, 2018
Merged
Show file tree
Hide file tree
Changes from 1 commit
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
87 changes: 87 additions & 0 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1553,6 +1553,93 @@ m5stack-core-esp32.menu.DebugLevel.verbose.build.code_debug=5

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

m5stack-fire.name=M5Stack-FIRE

m5stack-fire.upload.tool=esptool
m5stack-fire.upload.maximum_size=1310720
m5stack-fire.upload.maximum_data_size=327680
m5stack-fire.upload.wait_for_upload_port=true

m5stack-fire.serial.disableDTR=true
m5stack-fire.serial.disableRTS=true

m5stack-fire.build.mcu=esp32
m5stack-fire.build.core=esp32
m5stack-fire.build.variant=m5stack_fire
m5stack-fire.build.board=M5STACK_FIRE

m5stack-fire.build.f_cpu=240000000L
m5stack-fire.build.flash_size=16MB
m5stack-fire.build.flash_freq=40m
m5stack-fire.build.flash_mode=dio
m5stack-fire.build.boot=dio
m5stack-fire.build.partitions=default
m5stack-fire.build.defines=

m5stack-fire.menu.PSRAM.disabled=Disabled
m5stack-fire.menu.PSRAM.disabled.build.defines=
m5stack-fire.menu.PSRAM.enabled=Enabled
m5stack-fire.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Put enabled on top so it's the default option and why not enable it by default by adding the defines to the main section?


m5stack-fire.menu.PartitionScheme.default=Default
m5stack-fire.menu.PartitionScheme.default.build.partitions=default
m5stack-fire.menu.PartitionScheme.minimal=Minimal (2MB FLASH)
m5stack-fire.menu.PartitionScheme.minimal.build.partitions=minimal
m5stack-fire.menu.PartitionScheme.no_ota=No OTA (Large APP)
m5stack-fire.menu.PartitionScheme.no_ota.build.partitions=no_ota
m5stack-fire.menu.PartitionScheme.no_ota.upload.maximum_size=2097152
m5stack-fire.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA)
m5stack-fire.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs
m5stack-fire.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

those partitions make no sense. let's discuss this and add new options :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, there is no partition for 16MB Flash, should add new options.


m5stack-fire.menu.FlashMode.qio=QIO
m5stack-fire.menu.FlashMode.qio.build.flash_mode=dio
m5stack-fire.menu.FlashMode.qio.build.boot=qio
m5stack-fire.menu.FlashMode.dio=DIO
m5stack-fire.menu.FlashMode.dio.build.flash_mode=dio
m5stack-fire.menu.FlashMode.dio.build.boot=dio
m5stack-fire.menu.FlashMode.qout=QOUT
m5stack-fire.menu.FlashMode.qout.build.flash_mode=dout
m5stack-fire.menu.FlashMode.qout.build.boot=qout
m5stack-fire.menu.FlashMode.dout=DOUT
m5stack-fire.menu.FlashMode.dout.build.flash_mode=dout
m5stack-fire.menu.FlashMode.dout.build.boot=dout
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

find what works on the board and let's remove this option. DIO or QIO


m5stack-fire.menu.FlashFreq.80=80MHz
m5stack-fire.menu.FlashFreq.80.build.flash_freq=80m
m5stack-fire.menu.FlashFreq.40=40MHz
m5stack-fire.menu.FlashFreq.40.build.flash_freq=40m
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

find what works on the board and let's remove this option.


m5stack-fire.menu.UploadSpeed.921600=921600
m5stack-fire.menu.UploadSpeed.921600.upload.speed=921600
m5stack-fire.menu.UploadSpeed.115200=115200
m5stack-fire.menu.UploadSpeed.115200.upload.speed=115200
m5stack-fire.menu.UploadSpeed.256000.windows=256000
m5stack-fire.menu.UploadSpeed.256000.upload.speed=256000
m5stack-fire.menu.UploadSpeed.230400.windows.upload.speed=256000
m5stack-fire.menu.UploadSpeed.230400=230400
m5stack-fire.menu.UploadSpeed.230400.upload.speed=230400
m5stack-fire.menu.UploadSpeed.460800.linux=460800
m5stack-fire.menu.UploadSpeed.460800.macosx=460800
m5stack-fire.menu.UploadSpeed.460800.upload.speed=460800
m5stack-fire.menu.UploadSpeed.512000.windows=512000
m5stack-fire.menu.UploadSpeed.512000.upload.speed=512000

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

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

odroid_esp32.name=ODROID ESP32

odroid_esp32.upload.tool=esptool
Expand Down
55 changes: 55 additions & 0 deletions variants/m5stack_fire/pins_arduino.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
#ifndef Pins_Arduino_h
#define Pins_Arduino_h

#include <stdint.h>

#define EXTERNAL_NUM_INTERRUPTS 16
#define NUM_DIGITAL_PINS 20
#define NUM_ANALOG_INPUTS 16

#define analogInputToDigitalPin(p) (((p)<20)?(esp32_adc2gpio[(p)]):-1)
#define digitalPinToInterrupt(p) (((p)<40)?(p):-1)
#define digitalPinHasPWM(p) (p < 34)

static const uint8_t TX = 1;
static const uint8_t RX = 3;

static const uint8_t TXD2 = 17;
static const uint8_t RXD2 = 16;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

16 and 17 are connected to PSRAM

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, it should remove.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you forgot those lines :)


static const uint8_t SDA = 21;
static const uint8_t SCL = 22;

static const uint8_t SS = 5;
static const uint8_t MOSI = 23;
static const uint8_t MISO = 19;
static const uint8_t SCK = 18;

static const uint8_t G23 = 23;
static const uint8_t G19 = 19;
static const uint8_t G18 = 18;
static const uint8_t G3 = 3;
static const uint8_t G16 = 16;
static const uint8_t G21 = 21;
static const uint8_t G2 = 2;
static const uint8_t G12 = 12;
static const uint8_t G15 = 15;
static const uint8_t G35 = 35;
static const uint8_t G36 = 36;
static const uint8_t G25 = 25;
static const uint8_t G26 = 26;
static const uint8_t G1 = 1;
static const uint8_t G17 = 17;
static const uint8_t G22 = 22;
static const uint8_t G5 = 5;
static const uint8_t G13 = 13;
static const uint8_t G0 = 0;
static const uint8_t G34 = 34;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why are those?


static const uint8_t DAC1 = 25;
static const uint8_t DAC2 = 26;

static const uint8_t ADC1 = 35;
static const uint8_t ADC2 = 36;

#endif /* Pins_Arduino_h */