Skip to content

Commit 3906ee4

Browse files
KillingJackydevyte
authored andcommitted
Add support for Seeed Wio Link board (#4943)
1 parent 3f6be5e commit 3906ee4

File tree

5 files changed

+225
-0
lines changed

5 files changed

+225
-0
lines changed

boards.txt

+154
Original file line numberDiff line numberDiff line change
@@ -4665,3 +4665,157 @@ wifi_slot.menu.UploadSpeed.512000.upload.speed=512000
46654665
wifi_slot.menu.UploadSpeed.921600=921600
46664666
wifi_slot.menu.UploadSpeed.921600.upload.speed=921600
46674667

4668+
##############################################################
4669+
wiolink.name=Seeed Wio Link
4670+
wiolink.build.board=ESP8266_WIO_LINK
4671+
wiolink.build.variant=wiolink
4672+
wiolink.upload.tool=esptool
4673+
wiolink.upload.maximum_data_size=81920
4674+
wiolink.upload.wait_for_upload_port=true
4675+
wiolink.upload.erase_cmd=
4676+
wiolink.serial.disableDTR=true
4677+
wiolink.serial.disableRTS=true
4678+
wiolink.build.mcu=esp8266
4679+
wiolink.build.core=esp8266
4680+
wiolink.build.spiffs_pagesize=256
4681+
wiolink.build.debug_port=
4682+
wiolink.build.debug_level=
4683+
wiolink.menu.CpuFrequency.80=80 MHz
4684+
wiolink.menu.CpuFrequency.80.build.f_cpu=80000000L
4685+
wiolink.menu.CpuFrequency.160=160 MHz
4686+
wiolink.menu.CpuFrequency.160.build.f_cpu=160000000L
4687+
wiolink.menu.VTable.flash=Flash
4688+
wiolink.menu.VTable.flash.build.vtable_flags=-DVTABLES_IN_FLASH
4689+
wiolink.menu.VTable.heap=Heap
4690+
wiolink.menu.VTable.heap.build.vtable_flags=-DVTABLES_IN_DRAM
4691+
wiolink.menu.VTable.iram=IRAM
4692+
wiolink.menu.VTable.iram.build.vtable_flags=-DVTABLES_IN_IRAM
4693+
wiolink.upload.resetmethod=nodemcu
4694+
wiolink.build.flash_mode=qio
4695+
wiolink.build.flash_freq=40
4696+
wiolink.menu.FlashSize.4M1M=4M (1M SPIFFS)
4697+
wiolink.menu.FlashSize.4M1M.build.flash_size=4M
4698+
wiolink.menu.FlashSize.4M1M.build.flash_size_bytes=0x400000
4699+
wiolink.menu.FlashSize.4M1M.build.flash_ld=eagle.flash.4m1m.ld
4700+
wiolink.menu.FlashSize.4M1M.build.spiffs_pagesize=256
4701+
wiolink.menu.FlashSize.4M1M.upload.maximum_size=1044464
4702+
wiolink.menu.FlashSize.4M1M.build.rfcal_addr=0x3FC000
4703+
wiolink.menu.FlashSize.4M1M.build.spiffs_start=0x300000
4704+
wiolink.menu.FlashSize.4M1M.build.spiffs_end=0x3FB000
4705+
wiolink.menu.FlashSize.4M1M.build.spiffs_blocksize=8192
4706+
wiolink.menu.FlashSize.4M2M=4M (2M SPIFFS)
4707+
wiolink.menu.FlashSize.4M2M.build.flash_size=4M
4708+
wiolink.menu.FlashSize.4M2M.build.flash_size_bytes=0x400000
4709+
wiolink.menu.FlashSize.4M2M.build.flash_ld=eagle.flash.4m2m.ld
4710+
wiolink.menu.FlashSize.4M2M.build.spiffs_pagesize=256
4711+
wiolink.menu.FlashSize.4M2M.upload.maximum_size=1044464
4712+
wiolink.menu.FlashSize.4M2M.build.rfcal_addr=0x3FC000
4713+
wiolink.menu.FlashSize.4M2M.build.spiffs_start=0x200000
4714+
wiolink.menu.FlashSize.4M2M.build.spiffs_end=0x3FB000
4715+
wiolink.menu.FlashSize.4M2M.build.spiffs_blocksize=8192
4716+
wiolink.menu.FlashSize.4M3M=4M (3M SPIFFS)
4717+
wiolink.menu.FlashSize.4M3M.build.flash_size=4M
4718+
wiolink.menu.FlashSize.4M3M.build.flash_size_bytes=0x400000
4719+
wiolink.menu.FlashSize.4M3M.build.flash_ld=eagle.flash.4m.ld
4720+
wiolink.menu.FlashSize.4M3M.build.spiffs_pagesize=256
4721+
wiolink.menu.FlashSize.4M3M.upload.maximum_size=1044464
4722+
wiolink.menu.FlashSize.4M3M.build.rfcal_addr=0x3FC000
4723+
wiolink.menu.FlashSize.4M3M.build.spiffs_start=0x100000
4724+
wiolink.menu.FlashSize.4M3M.build.spiffs_end=0x3FB000
4725+
wiolink.menu.FlashSize.4M3M.build.spiffs_blocksize=8192
4726+
wiolink.menu.LwIPVariant.v2mss536=v2 Lower Memory
4727+
wiolink.menu.LwIPVariant.v2mss536.build.lwip_include=lwip2/include
4728+
wiolink.menu.LwIPVariant.v2mss536.build.lwip_lib=-llwip2
4729+
wiolink.menu.LwIPVariant.v2mss536.build.lwip_flags=-DLWIP_OPEN_SRC -DTCP_MSS=536
4730+
wiolink.menu.LwIPVariant.v2mss1460=v2 Higher Bandwidth
4731+
wiolink.menu.LwIPVariant.v2mss1460.build.lwip_include=lwip2/include
4732+
wiolink.menu.LwIPVariant.v2mss1460.build.lwip_lib=-llwip2_1460
4733+
wiolink.menu.LwIPVariant.v2mss1460.build.lwip_flags=-DLWIP_OPEN_SRC -DTCP_MSS=1460
4734+
wiolink.menu.LwIPVariant.Prebuilt=v1.4 Higher Bandwidth
4735+
wiolink.menu.LwIPVariant.Prebuilt.build.lwip_lib=-llwip_gcc
4736+
wiolink.menu.LwIPVariant.Prebuilt.build.lwip_flags=-DLWIP_OPEN_SRC
4737+
wiolink.menu.LwIPVariant.OpenSource=v1.4 Compile from source
4738+
wiolink.menu.LwIPVariant.OpenSource.build.lwip_lib=-llwip_src
4739+
wiolink.menu.LwIPVariant.OpenSource.build.lwip_flags=-DLWIP_OPEN_SRC
4740+
wiolink.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-"
4741+
wiolink.menu.Debug.Disabled=Disabled
4742+
wiolink.menu.Debug.Disabled.build.debug_port=
4743+
wiolink.menu.Debug.Serial=Serial
4744+
wiolink.menu.Debug.Serial.build.debug_port=-DDEBUG_ESP_PORT=Serial
4745+
wiolink.menu.Debug.Serial1=Serial1
4746+
wiolink.menu.Debug.Serial1.build.debug_port=-DDEBUG_ESP_PORT=Serial1
4747+
wiolink.menu.DebugLevel.None____=None
4748+
wiolink.menu.DebugLevel.None____.build.debug_level=
4749+
wiolink.menu.DebugLevel.SSL=SSL
4750+
wiolink.menu.DebugLevel.SSL.build.debug_level= -DDEBUG_ESP_SSL
4751+
wiolink.menu.DebugLevel.TLS_MEM=TLS_MEM
4752+
wiolink.menu.DebugLevel.TLS_MEM.build.debug_level= -DDEBUG_ESP_TLS_MEM
4753+
wiolink.menu.DebugLevel.HTTP_CLIENT=HTTP_CLIENT
4754+
wiolink.menu.DebugLevel.HTTP_CLIENT.build.debug_level= -DDEBUG_ESP_HTTP_CLIENT
4755+
wiolink.menu.DebugLevel.HTTP_SERVER=HTTP_SERVER
4756+
wiolink.menu.DebugLevel.HTTP_SERVER.build.debug_level= -DDEBUG_ESP_HTTP_SERVER
4757+
wiolink.menu.DebugLevel.SSLTLS_MEM=SSL+TLS_MEM
4758+
wiolink.menu.DebugLevel.SSLTLS_MEM.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM
4759+
wiolink.menu.DebugLevel.SSLHTTP_CLIENT=SSL+HTTP_CLIENT
4760+
wiolink.menu.DebugLevel.SSLHTTP_CLIENT.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_HTTP_CLIENT
4761+
wiolink.menu.DebugLevel.SSLHTTP_SERVER=SSL+HTTP_SERVER
4762+
wiolink.menu.DebugLevel.SSLHTTP_SERVER.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_HTTP_SERVER
4763+
wiolink.menu.DebugLevel.TLS_MEMHTTP_CLIENT=TLS_MEM+HTTP_CLIENT
4764+
wiolink.menu.DebugLevel.TLS_MEMHTTP_CLIENT.build.debug_level= -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT
4765+
wiolink.menu.DebugLevel.TLS_MEMHTTP_SERVER=TLS_MEM+HTTP_SERVER
4766+
wiolink.menu.DebugLevel.TLS_MEMHTTP_SERVER.build.debug_level= -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_SERVER
4767+
wiolink.menu.DebugLevel.HTTP_CLIENTHTTP_SERVER=HTTP_CLIENT+HTTP_SERVER
4768+
wiolink.menu.DebugLevel.HTTP_CLIENTHTTP_SERVER.build.debug_level= -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER
4769+
wiolink.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENT=SSL+TLS_MEM+HTTP_CLIENT
4770+
wiolink.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENT.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT
4771+
wiolink.menu.DebugLevel.SSLTLS_MEMHTTP_SERVER=SSL+TLS_MEM+HTTP_SERVER
4772+
wiolink.menu.DebugLevel.SSLTLS_MEMHTTP_SERVER.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_SERVER
4773+
wiolink.menu.DebugLevel.SSLHTTP_CLIENTHTTP_SERVER=SSL+HTTP_CLIENT+HTTP_SERVER
4774+
wiolink.menu.DebugLevel.SSLHTTP_CLIENTHTTP_SERVER.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER
4775+
wiolink.menu.DebugLevel.TLS_MEMHTTP_CLIENTHTTP_SERVER=TLS_MEM+HTTP_CLIENT+HTTP_SERVER
4776+
wiolink.menu.DebugLevel.TLS_MEMHTTP_CLIENTHTTP_SERVER.build.debug_level= -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER
4777+
wiolink.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENTHTTP_SERVER=SSL+TLS_MEM+HTTP_CLIENT+HTTP_SERVER
4778+
wiolink.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENTHTTP_SERVER.build.debug_level= -DDEBUG_ESP_SSL -DDEBUG_ESP_TLS_MEM -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_SERVER
4779+
wiolink.menu.DebugLevel.CORE=CORE
4780+
wiolink.menu.DebugLevel.CORE.build.debug_level= -DDEBUG_ESP_CORE
4781+
wiolink.menu.DebugLevel.WIFI=WIFI
4782+
wiolink.menu.DebugLevel.WIFI.build.debug_level= -DDEBUG_ESP_WIFI
4783+
wiolink.menu.DebugLevel.HTTP_UPDATE=HTTP_UPDATE
4784+
wiolink.menu.DebugLevel.HTTP_UPDATE.build.debug_level= -DDEBUG_ESP_HTTP_UPDATE
4785+
wiolink.menu.DebugLevel.UPDATER=UPDATER
4786+
wiolink.menu.DebugLevel.UPDATER.build.debug_level= -DDEBUG_ESP_UPDATER
4787+
wiolink.menu.DebugLevel.OTA=OTA
4788+
wiolink.menu.DebugLevel.OTA.build.debug_level= -DDEBUG_ESP_OTA
4789+
wiolink.menu.DebugLevel.OOM=OOM
4790+
wiolink.menu.DebugLevel.OOM.build.debug_level= -DDEBUG_ESP_OOM
4791+
wiolink.menu.DebugLevel.COREWIFIHTTP_UPDATEUPDATEROTAOOM=CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM
4792+
wiolink.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
4793+
wiolink.menu.DebugLevel.SSLTLS_MEMHTTP_CLIENTHTTP_SERVERCOREWIFIHTTP_UPDATEUPDATEROTAOOM=SSL+TLS_MEM+HTTP_CLIENT+HTTP_SERVER+CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM
4794+
wiolink.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
4795+
wiolink.menu.DebugLevel.NoAssert-NDEBUG=NoAssert-NDEBUG
4796+
wiolink.menu.DebugLevel.NoAssert-NDEBUG.build.debug_level= -DNDEBUG
4797+
wiolink.menu.FlashErase.none=Only Sketch
4798+
wiolink.menu.FlashErase.none.upload.erase_cmd=
4799+
wiolink.menu.FlashErase.sdk=Sketch + WiFi Settings
4800+
wiolink.menu.FlashErase.sdk.upload.erase_cmd=-ca "{build.rfcal_addr}" -cz 0x4000
4801+
wiolink.menu.FlashErase.all=All Flash Contents
4802+
wiolink.menu.FlashErase.all.upload.erase_cmd=-ca 0x0 -cz "{build.flash_size_bytes}"
4803+
wiolink.menu.UploadSpeed.115200=115200
4804+
wiolink.menu.UploadSpeed.115200.upload.speed=115200
4805+
wiolink.menu.UploadSpeed.9600=9600
4806+
wiolink.menu.UploadSpeed.9600.upload.speed=9600
4807+
wiolink.menu.UploadSpeed.57600=57600
4808+
wiolink.menu.UploadSpeed.57600.upload.speed=57600
4809+
wiolink.menu.UploadSpeed.230400.linux=230400
4810+
wiolink.menu.UploadSpeed.230400.macosx=230400
4811+
wiolink.menu.UploadSpeed.230400.upload.speed=230400
4812+
wiolink.menu.UploadSpeed.256000.windows=256000
4813+
wiolink.menu.UploadSpeed.256000.upload.speed=256000
4814+
wiolink.menu.UploadSpeed.460800.linux=460800
4815+
wiolink.menu.UploadSpeed.460800.macosx=460800
4816+
wiolink.menu.UploadSpeed.460800.upload.speed=460800
4817+
wiolink.menu.UploadSpeed.512000.windows=512000
4818+
wiolink.menu.UploadSpeed.512000.upload.speed=512000
4819+
wiolink.menu.UploadSpeed.921600=921600
4820+
wiolink.menu.UploadSpeed.921600.upload.speed=921600
4821+

doc/boards.rst

+9
Original file line numberDiff line numberDiff line change
@@ -423,3 +423,12 @@ Amperka WiFi Slot
423423

424424
Product page: http://wiki.amperka.ru/wifi-slot
425425

426+
Seeed Wio Link
427+
--------------
428+
429+
Wio Link is designed to simplify your IoT development. It is an ESP8266 based open-source Wi-Fi development board to create IoT applications by virtualizing plug-n-play modules to RESTful APIs with mobile APPs. Wio Link is also compatible with the Arduino IDE.
430+
431+
Please DO NOTICE that you MUST pull up pin 15 to enable the power for Grove ports, the board is designed like this for the purpose of peripherals power management.
432+
433+
Product page: https://www.seeedstudio.com/Wio-Link-p-2604.html
434+

package/package_esp8266com_index.template.json

+3
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,9 @@
100100
},
101101
{
102102
"name": "Amperka WiFi Slot"
103+
},
104+
{
105+
"name": "Seeed Wio Link"
103106
}
104107
],
105108
"toolsDependencies": [

tools/boards.txt.py

+19
Original file line numberDiff line numberDiff line change
@@ -784,6 +784,25 @@
784784
],
785785
'desc': [ 'Product page: http://wiki.amperka.ru/wifi-slot' ],
786786
}),
787+
( 'wiolink', {
788+
'name': 'Seeed Wio Link',
789+
'opts': {
790+
'.build.board': 'ESP8266_WIO_LINK',
791+
'.build.variant': 'wiolink',
792+
},
793+
'macro': [
794+
'resetmethod_nodemcu',
795+
'flashmode_qio',
796+
'flashfreq_40',
797+
'4M',
798+
],
799+
'desc': [ 'Wio Link is designed to simplify your IoT development. It is an ESP8266 based open-source Wi-Fi development board to create IoT applications by virtualizing plug-n-play modules to RESTful APIs with mobile APPs. Wio Link is also compatible with the Arduino IDE.',
800+
'',
801+
'Please DO NOTICE that you MUST pull up pin 15 to enable the power for Grove ports, the board is designed like this for the purpose of peripherals power management.',
802+
'',
803+
'Product page: https://www.seeedstudio.com/Wio-Link-p-2604.html'
804+
],
805+
})
787806
])
788807

789808
################################################################

variants/wiolink/pins_arduino.h

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
pins_arduino.h - Pin definition functions for Arduino
3+
Part of ESP8266 core for Arduino - https://github.com/esp8266/Arduino
4+
5+
Copyright (c) 2007 David A. Mellis
6+
Modified for ESP8266 platform by Ivan Grokhotkov, 2014-2015.
7+
8+
This library is free software; you can redistribute it and/or
9+
modify it under the terms of the GNU Lesser General Public
10+
License as published by the Free Software Foundation; either
11+
version 2.1 of the License, or (at your option) any later version.
12+
13+
This library is distributed in the hope that it will be useful,
14+
but WITHOUT ANY WARRANTY; without even the implied warranty of
15+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16+
Lesser General Public License for more details.
17+
18+
You should have received a copy of the GNU Lesser General
19+
Public License along with this library; if not, write to the
20+
Free Software Foundation, Inc., 59 Temple Place, Suite 330,
21+
Boston, MA 02111-1307 USA
22+
23+
$Id: wiring.h 249 2007-02-03 16:52:51Z mellis $
24+
*/
25+
26+
#ifndef Pins_Arduino_h
27+
#define Pins_Arduino_h
28+
29+
#define PIN_WIRE_SDA (4)
30+
#define PIN_WIRE_SCL (5)
31+
32+
static const uint8_t SDA = PIN_WIRE_SDA;
33+
static const uint8_t SCL = PIN_WIRE_SCL;
34+
35+
#define LED_BUILTIN 2 //blue
36+
#define PIN_GROVE_POWER 15 //must pull this pin up to enable the power ring for the Grove ports, red led will light up
37+
38+
#include "../generic/common.h"
39+
40+
#endif /* Pins_Arduino_h */

0 commit comments

Comments
 (0)