diff --git a/boards.txt b/boards.txt index 6957c21908..e709fd010a 100644 --- a/boards.txt +++ b/boards.txt @@ -929,6 +929,163 @@ huzzah.menu.UploadSpeed.512000.upload.speed=512000 huzzah.menu.UploadSpeed.921600=921600 huzzah.menu.UploadSpeed.921600.upload.speed=921600 +############################################################## +cw01.name=XinaBox CW01 +cw01.build.board=ESP8266_GENERIC +cw01.build.variant=xinabox +cw01.upload.tool=esptool +cw01.upload.maximum_data_size=81920 +cw01.upload.wait_for_upload_port=true +cw01.upload.erase_cmd= +cw01.serial.disableDTR=true +cw01.serial.disableRTS=true +cw01.build.mcu=esp8266 +cw01.build.core=esp8266 +cw01.build.spiffs_pagesize=256 +cw01.build.debug_port= +cw01.build.debug_level= +cw01.menu.CpuFrequency.80=80 MHz +cw01.menu.CpuFrequency.80.build.f_cpu=80000000L +cw01.menu.CpuFrequency.160=160 MHz +cw01.menu.CpuFrequency.160.build.f_cpu=160000000L +cw01.menu.VTable.flash=Flash +cw01.menu.VTable.flash.build.vtable_flags=-DVTABLES_IN_FLASH +cw01.menu.VTable.heap=Heap +cw01.menu.VTable.heap.build.vtable_flags=-DVTABLES_IN_DRAM +cw01.menu.VTable.iram=IRAM +cw01.menu.VTable.iram.build.vtable_flags=-DVTABLES_IN_IRAM +cw01.upload.resetmethod=nodemcu +cw01.menu.CrystalFreq.26=26 MHz +cw01.menu.CrystalFreq.40=40 MHz +cw01.menu.CrystalFreq.40.build.extra_flags=-DF_CRYSTAL=40000000 -DESP8266 +cw01.build.flash_mode=qio +cw01.build.flash_freq=40 +cw01.menu.FlashSize.4M1M=4M (1M SPIFFS) +cw01.menu.FlashSize.4M1M.build.flash_size=4M +cw01.menu.FlashSize.4M1M.build.flash_size_bytes=0x400000 +cw01.menu.FlashSize.4M1M.build.flash_ld=eagle.flash.4m1m.ld +cw01.menu.FlashSize.4M1M.build.spiffs_pagesize=256 +cw01.menu.FlashSize.4M1M.upload.maximum_size=1044464 +cw01.menu.FlashSize.4M1M.build.rfcal_addr=0x3FC000 +cw01.menu.FlashSize.4M1M.build.spiffs_start=0x300000 +cw01.menu.FlashSize.4M1M.build.spiffs_end=0x3FB000 +cw01.menu.FlashSize.4M1M.build.spiffs_blocksize=8192 +cw01.menu.FlashSize.4M2M=4M (2M SPIFFS) +cw01.menu.FlashSize.4M2M.build.flash_size=4M +cw01.menu.FlashSize.4M2M.build.flash_size_bytes=0x400000 +cw01.menu.FlashSize.4M2M.build.flash_ld=eagle.flash.4m2m.ld +cw01.menu.FlashSize.4M2M.build.spiffs_pagesize=256 +cw01.menu.FlashSize.4M2M.upload.maximum_size=1044464 +cw01.menu.FlashSize.4M2M.build.rfcal_addr=0x3FC000 +cw01.menu.FlashSize.4M2M.build.spiffs_start=0x200000 +cw01.menu.FlashSize.4M2M.build.spiffs_end=0x3FB000 +cw01.menu.FlashSize.4M2M.build.spiffs_blocksize=8192 +cw01.menu.FlashSize.4M3M=4M (3M SPIFFS) +cw01.menu.FlashSize.4M3M.build.flash_size=4M +cw01.menu.FlashSize.4M3M.build.flash_size_bytes=0x400000 +cw01.menu.FlashSize.4M3M.build.flash_ld=eagle.flash.4m.ld +cw01.menu.FlashSize.4M3M.build.spiffs_pagesize=256 +cw01.menu.FlashSize.4M3M.upload.maximum_size=1044464 +cw01.menu.FlashSize.4M3M.build.rfcal_addr=0x3FC000 +cw01.menu.FlashSize.4M3M.build.spiffs_start=0x100000 +cw01.menu.FlashSize.4M3M.build.spiffs_end=0x3FB000 +cw01.menu.FlashSize.4M3M.build.spiffs_blocksize=8192 +cw01.menu.LwIPVariant.v2mss536=v2 Lower Memory +cw01.menu.LwIPVariant.v2mss536.build.lwip_include=lwip2/include +cw01.menu.LwIPVariant.v2mss536.build.lwip_lib=-llwip2 +cw01.menu.LwIPVariant.v2mss536.build.lwip_flags=-DLWIP_OPEN_SRC -DTCP_MSS=536 +cw01.menu.LwIPVariant.v2mss1460=v2 Higher Bandwidth +cw01.menu.LwIPVariant.v2mss1460.build.lwip_include=lwip2/include +cw01.menu.LwIPVariant.v2mss1460.build.lwip_lib=-llwip2_1460 +cw01.menu.LwIPVariant.v2mss1460.build.lwip_flags=-DLWIP_OPEN_SRC -DTCP_MSS=1460 +cw01.menu.LwIPVariant.Prebuilt=v1.4 Higher Bandwidth +cw01.menu.LwIPVariant.Prebuilt.build.lwip_lib=-llwip_gcc +cw01.menu.LwIPVariant.Prebuilt.build.lwip_flags=-DLWIP_OPEN_SRC +cw01.menu.LwIPVariant.OpenSource=v1.4 Compile from source +cw01.menu.LwIPVariant.OpenSource.build.lwip_lib=-llwip_src +cw01.menu.LwIPVariant.OpenSource.build.lwip_flags=-DLWIP_OPEN_SRC +cw01.menu.LwIPVariant.OpenSource.recipe.hooks.sketch.prebuild.1.pattern=make -C "{runtime.platform.path}/tools/sdk/lwip/src" install TOOLS_PATH="{runtime.tools.xtensa-lx106-elf-gcc.path}/bin/xtensa-lx106-elf-" +cw01.menu.Debug.Disabled=Disabled +cw01.menu.Debug.Disabled.build.debug_port= +cw01.menu.Debug.Serial=Serial +cw01.menu.Debug.Serial.build.debug_port=-DDEBUG_ESP_PORT=Serial +cw01.menu.Debug.Serial1=Serial1 +cw01.menu.Debug.Serial1.build.debug_port=-DDEBUG_ESP_PORT=Serial1 +cw01.menu.DebugLevel.None____=None +cw01.menu.DebugLevel.None____.build.debug_level= +cw01.menu.DebugLevel.SSL=SSL +cw01.menu.DebugLevel.SSL.build.debug_level= -DDEBUG_ESP_SSL +cw01.menu.DebugLevel.TLS_MEM=TLS_MEM +cw01.menu.DebugLevel.TLS_MEM.build.debug_level= -DDEBUG_ESP_TLS_MEM +cw01.menu.DebugLevel.HTTP_CLIENT=HTTP_CLIENT +cw01.menu.DebugLevel.HTTP_CLIENT.build.debug_level= -DDEBUG_ESP_HTTP_CLIENT +cw01.menu.DebugLevel.HTTP_SERVER=HTTP_SERVER +cw01.menu.DebugLevel.HTTP_SERVER.build.debug_level= -DDEBUG_ESP_HTTP_SERVER +cw01.menu.DebugLevel.SSLTLS_MEM=SSL+TLS_MEM +cw01.menu.DebugLevel.SSLTLS_MEM.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM +cw01.menu.DebugLevel.SSLHTTP_CLIENT=SSL+HTTP_CLIENT +cw01.menu.DebugLevel.SSLHTTP_CLIENT.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_HTTP_CLIENT +cw01.menu.DebugLevel.SSLHTTP_SERVER=SSL+HTTP_SERVER +cw01.menu.DebugLevel.SSLHTTP_SERVER.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_HTTP_SERVER +cw01.menu.DebugLevel.TLS_MEMHTTP_CLIENT=TLS_MEM+HTTP_CLIENT +cw01.menu.DebugLevel.TLS_MEMHTTP_CLIENT.build.debug_level= -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT +cw01.menu.DebugLevel.TLS_MEMHTTP_SERVER=TLS_MEM+HTTP_SERVER +cw01.menu.DebugLevel.TLS_MEMHTTP_SERVER.build.debug_level= -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_SERVER +cw01.menu.DebugLevel.HTTP_CLIENTHTTP_SERVER=HTTP_CLIENT+HTTP_SERVER +cw01.menu.DebugLevel.HTTP_CLIENTHTTP_SERVER.build.debug_level= -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER +cw01.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENT=SSL+TLS_MEM+HTTP_CLIENT +cw01.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENT.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT +cw01.menu.DebugLevel.SSLTLS_MEMHTTP_SERVER=SSL+TLS_MEM+HTTP_SERVER +cw01.menu.DebugLevel.SSLTLS_MEMHTTP_SERVER.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_SERVER +cw01.menu.DebugLevel.SSLHTTP_CLIENTHTTP_SERVER=SSL+HTTP_CLIENT+HTTP_SERVER +cw01.menu.DebugLevel.SSLHTTP_CLIENTHTTP_SERVER.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER +cw01.menu.DebugLevel.TLS_MEMHTTP_CLIENTHTTP_SERVER=TLS_MEM+HTTP_CLIENT+HTTP_SERVER +cw01.menu.DebugLevel.TLS_MEMHTTP_CLIENTHTTP_SERVER.build.debug_level= -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER +cw01.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENTHTTP_SERVER=SSL+TLS_MEM+HTTP_CLIENT+HTTP_SERVER +cw01.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENTHTTP_SERVER.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER +cw01.menu.DebugLevel.CORE=CORE +cw01.menu.DebugLevel.CORE.build.debug_level= -DDEBUG_ESP_CORE +cw01.menu.DebugLevel.WIFI=WIFI +cw01.menu.DebugLevel.WIFI.build.debug_level= -DDEBUG_ESP_WIFI +cw01.menu.DebugLevel.HTTP_UPDATE=HTTP_UPDATE +cw01.menu.DebugLevel.HTTP_UPDATE.build.debug_level= -DDEBUG_ESP_HTTP_UPDATE +cw01.menu.DebugLevel.UPDATER=UPDATER +cw01.menu.DebugLevel.UPDATER.build.debug_level= -DDEBUG_ESP_UPDATER +cw01.menu.DebugLevel.OTA=OTA +cw01.menu.DebugLevel.OTA.build.debug_level= -DDEBUG_ESP_OTA +cw01.menu.DebugLevel.OOM=OOM +cw01.menu.DebugLevel.OOM.build.debug_level= -DDEBUG_ESP_OOM +cw01.menu.DebugLevel.COREWIFIHTTP_UPDATEUPDATEROTAOOM=CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM +cw01.menu.DebugLevel.COREWIFIHTTP_UPDATEUPDATEROTAOOM.build.debug_level= -DDEBUG_ESP_CORE -DDEBUG_ESP_WIFI -DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_UPDATER -DDEBUG_ESP_OTA -DDEBUG_ESP_OOM +cw01.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENTHTTP_SERVERCOREWIFIHTTP_UPDATEUPDATEROTAOOM=SSL+TLS_MEM+HTTP_CLIENT+HTTP_SERVER+CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM +cw01.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENTHTTP_SERVERCOREWIFIHTTP_UPDATEUPDATEROTAOOM.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER -DDEBUG_ESP_CORE -DDEBUG_ESP_WIFI -DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_UPDATER -DDEBUG_ESP_OTA -DDEBUG_ESP_OOM +cw01.menu.DebugLevel.NoAssert-NDEBUG=NoAssert-NDEBUG +cw01.menu.DebugLevel.NoAssert-NDEBUG.build.debug_level= -DNDEBUG +cw01.menu.FlashErase.none=Only Sketch +cw01.menu.FlashErase.none.upload.erase_cmd= +cw01.menu.FlashErase.sdk=Sketch + WiFi Settings +cw01.menu.FlashErase.sdk.upload.erase_cmd=-ca "{build.rfcal_addr}" -cz 0x4000 +cw01.menu.FlashErase.all=All Flash Contents +cw01.menu.FlashErase.all.upload.erase_cmd=-ca 0x0 -cz "{build.flash_size_bytes}" +cw01.menu.UploadSpeed.115200=115200 +cw01.menu.UploadSpeed.115200.upload.speed=115200 +cw01.menu.UploadSpeed.9600=9600 +cw01.menu.UploadSpeed.9600.upload.speed=9600 +cw01.menu.UploadSpeed.57600=57600 +cw01.menu.UploadSpeed.57600.upload.speed=57600 +cw01.menu.UploadSpeed.230400.linux=230400 +cw01.menu.UploadSpeed.230400.macosx=230400 +cw01.menu.UploadSpeed.230400.upload.speed=230400 +cw01.menu.UploadSpeed.256000.windows=256000 +cw01.menu.UploadSpeed.256000.upload.speed=256000 +cw01.menu.UploadSpeed.460800.linux=460800 +cw01.menu.UploadSpeed.460800.macosx=460800 +cw01.menu.UploadSpeed.460800.upload.speed=460800 +cw01.menu.UploadSpeed.512000.windows=512000 +cw01.menu.UploadSpeed.512000.upload.speed=512000 +cw01.menu.UploadSpeed.921600=921600 +cw01.menu.UploadSpeed.921600.upload.speed=921600 + ############################################################## espresso_lite_v1.name=ESPresso Lite 1.0 espresso_lite_v1.build.board=ESP8266_ESPRESSO_LITE_V1 diff --git a/doc/boards.rst b/doc/boards.rst index 3e85d82d08..bcaa9b9b44 100644 --- a/doc/boards.rst +++ b/doc/boards.rst @@ -219,6 +219,13 @@ The Adafruit Feather HUZZAH ESP8266 is an Arduino-compatible Wi-Fi development b Product page: https://www.adafruit.com/product/2821 +XinaBox CW01 +------------ + +The XinaBox CW01 is an Arduino-compatible Wi-Fi development board powered by Ai-Thinker's ESP-12F, clocked at 80 MHz at 3.3V logic. It has an onboard RGB led. + +Product page: https://xinabox.cc/products/CW01 + ESPresso Lite 1.0 ----------------- diff --git a/package/package_esp8266com_index.template.json b/package/package_esp8266com_index.template.json index e746e7960e..ed3739d964 100644 --- a/package/package_esp8266com_index.template.json +++ b/package/package_esp8266com_index.template.json @@ -32,6 +32,9 @@ { "name": "Adafruit Feather HUZZAH ESP8266" }, + { + "name": "XinaBox CW01" + }, { "name": "ESPresso Lite 1.0" }, diff --git a/tools/boards.txt.py b/tools/boards.txt.py index c4c8c695f4..075eead1f7 100755 --- a/tools/boards.txt.py +++ b/tools/boards.txt.py @@ -325,6 +325,24 @@ 'Product page: https://www.adafruit.com/product/2821' ], }), + ( 'cw01', { + 'name': 'XinaBox CW01', + 'opts': { + '.build.board': 'ESP8266_GENERIC', + '.build.variant': 'xinabox', + }, + 'macro': [ + 'resetmethod_nodemcu', + 'crystalfreq_menu', + 'flashmode_qio', + 'flashfreq_40', + '4M', + ], + 'desc': [ 'The XinaBox CW01 is an Arduino-compatible Wi-Fi development board powered by Ai-Thinker\'s ESP-12F, clocked at 80 MHz at 3.3V logic. It has an onboard RGB led.', + '', + 'Product page: https://xinabox.cc/products/CW01' + ], + }), ( 'espresso_lite_v1', { 'name': 'ESPresso Lite 1.0', 'opts': { diff --git a/variants/xinabox/pins_arduino.h b/variants/xinabox/pins_arduino.h new file mode 100644 index 0000000000..0e59be571a --- /dev/null +++ b/variants/xinabox/pins_arduino.h @@ -0,0 +1,41 @@ +/* + pins_arduino.h - Pin definition functions for Arduino + Part of ESP8266 core for Arduino - https://github.com/esp8266/Arduino + + 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 PIN_WIRE_SDA (2) +#define PIN_WIRE_SCL (14) + +static const uint8_t SDA = PIN_WIRE_SDA; +static const uint8_t SCL = PIN_WIRE_SCL; + +#define LED_BUILTIN 5 +#define LED_RED 12 +#define LED_GREEN 13 + +#include "../generic/common.h" + +#endif /* Pins_Arduino_h */