Skip to content

Commit

Permalink
Merge pull request esp8266#990 from wemos/master
Browse files Browse the repository at this point in the history
add wemos D1 & D1 mini boards
  • Loading branch information
igrr committed Nov 10, 2015
2 parents 6af4bf5 + 8ebde18 commit 59e05ed
Show file tree
Hide file tree
Showing 3 changed files with 308 additions and 0 deletions.
139 changes: 139 additions & 0 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -544,3 +544,142 @@ esp210.menu.FlashSize.4M1M.build.spiffs_pagesize=256
#
# wifio.upload.tool=esptool
#

##############################################################
d1.name=WeMos D1

d1.upload.tool=esptool
d1.upload.speed=460800
d1.upload.resetmethod=nodemcu
d1.upload.maximum_size=1044464
d1.upload.maximum_data_size=81920
d1.upload.wait_for_upload_port=true
d1.serial.disableDTR=true
d1.serial.disableRTS=true

d1.build.mcu=esp8266
d1.build.f_cpu=80000000L
d1.build.board=ESP8266_ESP12
d1.build.core=esp8266
d1.build.variant=d1
d1.build.flash_mode=dio
d1.build.flash_size=4M
d1.build.flash_freq=40

d1.menu.CpuFrequency.80=80 MHz
d1.menu.CpuFrequency.80.build.f_cpu=80000000L
d1.menu.CpuFrequency.160=160 MHz
d1.menu.CpuFrequency.160.build.f_cpu=160000000L

d1.menu.UploadTool.esptool=Serial
d1.menu.UploadTool.esptool.upload.tool=esptool
d1.menu.UploadTool.esptool.upload.verbose=-vv

d1.menu.UploadTool.espota=OTA
d1.menu.UploadTool.espota.upload.tool=espota

d1.menu.UploadSpeed.115200=115200
d1.menu.UploadSpeed.115200.upload.speed=115200
d1.menu.UploadSpeed.9600=9600
d1.menu.UploadSpeed.9600.upload.speed=9600
d1.menu.UploadSpeed.57600=57600
d1.menu.UploadSpeed.57600.upload.speed=57600
d1.menu.UploadSpeed.256000.windows=256000
d1.menu.UploadSpeed.256000.upload.speed=256000
d1.menu.UploadSpeed.230400.linux=230400
d1.menu.UploadSpeed.230400.macosx=230400
d1.menu.UploadSpeed.230400.macosx=230400
d1.menu.UploadSpeed.230400.upload.speed=230400
d1.menu.UploadSpeed.460800.linux=460800
d1.menu.UploadSpeed.460800.macosx=460800
d1.menu.UploadSpeed.460800.upload.speed=460800
d1.menu.UploadSpeed.512000.windows=512000
d1.menu.UploadSpeed.512000.upload.speed=512000
d1.menu.UploadSpeed.921600=921600
d1.menu.UploadSpeed.921600.upload.speed=921600

d1.menu.FlashSize.4M3M=4M (3M SPIFFS)
d1.menu.FlashSize.4M3M.build.flash_size=4M
d1.menu.FlashSize.4M3M.build.flash_ld=eagle.flash.4m.ld
d1.menu.FlashSize.4M3M.build.spiffs_start=0x100000
d1.menu.FlashSize.4M3M.build.spiffs_end=0x3FB000
d1.menu.FlashSize.4M3M.build.spiffs_blocksize=8192
d1.menu.FlashSize.4M3M.build.spiffs_pagesize=256

d1.menu.FlashSize.4M1M=4M (1M SPIFFS)
d1.menu.FlashSize.4M1M.build.flash_size=4M
d1.menu.FlashSize.4M1M.build.flash_ld=eagle.flash.4m1m.ld
d1.menu.FlashSize.4M1M.build.spiffs_start=0x300000
d1.menu.FlashSize.4M1M.build.spiffs_end=0x3FB000
d1.menu.FlashSize.4M1M.build.spiffs_blocksize=8192
d1.menu.FlashSize.4M1M.build.spiffs_pagesize=256


##############################################################
d1_mini.name=WeMos D1 mini

d1_mini.upload.tool=esptool
d1_mini.upload.speed=460800
d1_mini.upload.resetmethod=nodemcu
d1_mini.upload.maximum_size=1044464
d1_mini.upload.maximum_data_size=81920
d1_mini.upload.wait_for_upload_port=true
d1_mini.serial.disableDTR=true
d1_mini.serial.disableRTS=true

d1_mini.build.mcu=esp8266
d1_mini.build.f_cpu=80000000L
d1_mini.build.board=ESP8266_ESP12
d1_mini.build.core=esp8266
d1_mini.build.variant=d1_mini
d1_mini.build.flash_mode=dio
d1_mini.build.flash_size=4M
d1_mini.build.flash_freq=40

d1_mini.menu.CpuFrequency.80=80 MHz
d1_mini.menu.CpuFrequency.80.build.f_cpu=80000000L
d1_mini.menu.CpuFrequency.160=160 MHz
d1_mini.menu.CpuFrequency.160.build.f_cpu=160000000L

d1_mini.menu.UploadTool.esptool=Serial
d1_mini.menu.UploadTool.esptool.upload.tool=esptool
d1_mini.menu.UploadTool.esptool.upload.verbose=-vv

d1_mini.menu.UploadTool.espota=OTA
d1_mini.menu.UploadTool.espota.upload.tool=espota

d1_mini.menu.UploadSpeed.115200=115200
d1_mini.menu.UploadSpeed.115200.upload.speed=115200
d1_mini.menu.UploadSpeed.9600=9600
d1_mini.menu.UploadSpeed.9600.upload.speed=9600
d1_mini.menu.UploadSpeed.57600=57600
d1_mini.menu.UploadSpeed.57600.upload.speed=57600
d1_mini.menu.UploadSpeed.256000.windows=256000
d1_mini.menu.UploadSpeed.256000.upload.speed=256000
d1_mini.menu.UploadSpeed.230400.linux=230400
d1_mini.menu.UploadSpeed.230400.macosx=230400
d1_mini.menu.UploadSpeed.230400.macosx=230400
d1_mini.menu.UploadSpeed.230400.upload.speed=230400
d1_mini.menu.UploadSpeed.460800.linux=460800
d1_mini.menu.UploadSpeed.460800.macosx=460800
d1_mini.menu.UploadSpeed.460800.upload.speed=460800
d1_mini.menu.UploadSpeed.512000.windows=512000
d1_mini.menu.UploadSpeed.512000.upload.speed=512000
d1_mini.menu.UploadSpeed.921600=921600
d1_mini.menu.UploadSpeed.921600.upload.speed=921600

d1_mini.menu.FlashSize.4M3M=4M (3M SPIFFS)
d1_mini.menu.FlashSize.4M3M.build.flash_size=4M
d1_mini.menu.FlashSize.4M3M.build.flash_ld=eagle.flash.4m.ld
d1_mini.menu.FlashSize.4M3M.build.spiffs_start=0x100000
d1_mini.menu.FlashSize.4M3M.build.spiffs_end=0x3FB000
d1_mini.menu.FlashSize.4M3M.build.spiffs_blocksize=8192
d1_mini.menu.FlashSize.4M3M.build.spiffs_pagesize=256

d1_mini.menu.FlashSize.4M1M=4M (1M SPIFFS)
d1_mini.menu.FlashSize.4M1M.build.flash_size=4M
d1_mini.menu.FlashSize.4M1M.build.flash_ld=eagle.flash.4m1m.ld
d1_mini.menu.FlashSize.4M1M.build.spiffs_start=0x300000
d1_mini.menu.FlashSize.4M1M.build.spiffs_end=0x3FB000
d1_mini.menu.FlashSize.4M1M.build.spiffs_blocksize=8192
d1_mini.menu.FlashSize.4M1M.build.spiffs_pagesize=256
86 changes: 86 additions & 0 deletions variants/d1/pins_arduino.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
/*
pins_arduino.h - Pin definition functions for Arduino
Part of Arduino - http://www.arduino.cc/
Copyright (c) 2007 David A. Mellis
Modified for ESP8266 platform by Ivan Grokhotkov, 2014-2015.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General
Public License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330,
Boston, MA 02111-1307 USA
$Id: wiring.h 249 2007-02-03 16:52:51Z mellis $
*/

#ifndef Pins_Arduino_h
#define Pins_Arduino_h

#define EXTERNAL_NUM_INTERRUPTS 16
#define NUM_DIGITAL_PINS 17
#define NUM_ANALOG_INPUTS 1

#define analogInputToDigitalPin(p) ((p > 0)?NOT_A_PIN:0)
#define digitalPinToInterrupt(p) (((p) < EXTERNAL_NUM_INTERRUPTS)?p:NOT_A_PIN)
#define digitalPinHasPWM(p) (((p) < NUM_DIGITAL_PINS)?p:NOT_A_PIN)

static const uint8_t SDA = 4;
static const uint8_t SCL = 5;

static const uint8_t SS = 15;
static const uint8_t MOSI = 13;
static const uint8_t MISO = 12;
static const uint8_t SCK = 14;

static const uint8_t BUILTIN_LED = 2;//new ESP-12E GPIO2

static const uint8_t A0 = 17;

static const uint8_t D0 = 3;
static const uint8_t D1 = 1;
static const uint8_t D2 = 16;
static const uint8_t D3 = 5;
static const uint8_t D4 = 4;
static const uint8_t D5 = 14;
static const uint8_t D6 = 12;
static const uint8_t D7 = 13;
static const uint8_t D8 = 0;
static const uint8_t D9 = 2;
static const uint8_t D10 = 15;
static const uint8_t D11 = 13;
static const uint8_t D12 = 12;
static const uint8_t D13 = 14;
static const uint8_t D14 = 4;
static const uint8_t D15 = 5;

// These serial port names are intended to allow libraries and architecture-neutral
// sketches to automatically default to the correct port name for a particular type
// of use. For example, a GPS module would normally connect to SERIAL_PORT_HARDWARE_OPEN,
// the first hardware serial port whose RX/TX pins are not dedicated to another use.
//
// SERIAL_PORT_MONITOR Port which normally prints to the Arduino Serial Monitor
//
// SERIAL_PORT_USBVIRTUAL Port which is USB virtual serial
//
// SERIAL_PORT_LINUXBRIDGE Port which connects to a Linux system via Bridge library
//
// SERIAL_PORT_HARDWARE Hardware serial port, physical RX & TX pins.
//
// SERIAL_PORT_HARDWARE_OPEN Hardware serial ports which are open for use. Their RX & TX
// pins are NOT connected to anything by default.
#define SERIAL_PORT_MONITOR Serial
#define SERIAL_PORT_USBVIRTUAL Serial
#define SERIAL_PORT_HARDWARE Serial
#define SERIAL_PORT_HARDWARE_OPEN Serial

#endif /* Pins_Arduino_h */
83 changes: 83 additions & 0 deletions variants/d1_mini/pins_arduino.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
/*
pins_arduino.h - Pin definition functions for Arduino
Part of Arduino - http://www.arduino.cc/
Copyright (c) 2007 David A. Mellis
Modified for ESP8266 platform by Ivan Grokhotkov, 2014-2015.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General
Public License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330,
Boston, MA 02111-1307 USA
$Id: wiring.h 249 2007-02-03 16:52:51Z mellis $
*/

#ifndef Pins_Arduino_h
#define Pins_Arduino_h

#define EXTERNAL_NUM_INTERRUPTS 16
#define NUM_DIGITAL_PINS 17
#define NUM_ANALOG_INPUTS 1

#define analogInputToDigitalPin(p) ((p > 0)?NOT_A_PIN:0)
#define digitalPinToInterrupt(p) (((p) < EXTERNAL_NUM_INTERRUPTS)?p:NOT_A_PIN)
#define digitalPinHasPWM(p) (((p) < NUM_DIGITAL_PINS)?p:NOT_A_PIN)

static const uint8_t SDA = 4;
static const uint8_t SCL = 5;

static const uint8_t SS = 15;
static const uint8_t MOSI = 13;
static const uint8_t MISO = 12;
static const uint8_t SCK = 14;

static const uint8_t BUILTIN_LED = 2;

static const uint8_t A0 = 17;

static const uint8_t D0 = 16;
static const uint8_t D1 = 5;
static const uint8_t D2 = 4;
static const uint8_t D3 = 0;
static const uint8_t D4 = 2;
static const uint8_t D5 = 14;
static const uint8_t D6 = 12;
static const uint8_t D7 = 13;
static const uint8_t D8 = 15;
static const uint8_t D9 = 3;
static const uint8_t D10 = 1;

static const uint8_t D13 = 2;

// These serial port names are intended to allow libraries and architecture-neutral
// sketches to automatically default to the correct port name for a particular type
// of use. For example, a GPS module would normally connect to SERIAL_PORT_HARDWARE_OPEN,
// the first hardware serial port whose RX/TX pins are not dedicated to another use.
//
// SERIAL_PORT_MONITOR Port which normally prints to the Arduino Serial Monitor
//
// SERIAL_PORT_USBVIRTUAL Port which is USB virtual serial
//
// SERIAL_PORT_LINUXBRIDGE Port which connects to a Linux system via Bridge library
//
// SERIAL_PORT_HARDWARE Hardware serial port, physical RX & TX pins.
//
// SERIAL_PORT_HARDWARE_OPEN Hardware serial ports which are open for use. Their RX & TX
// pins are NOT connected to anything by default.
#define SERIAL_PORT_MONITOR Serial
#define SERIAL_PORT_USBVIRTUAL Serial
#define SERIAL_PORT_HARDWARE Serial
#define SERIAL_PORT_HARDWARE_OPEN Serial

#endif /* Pins_Arduino_h */

0 comments on commit 59e05ed

Please sign in to comment.