lxvtag 发表于 2021-2-9 23:35:31

[尝鲜]墨水屏开发环境搭建,修改wifi信息

本帖最后由 lxvtag 于 2021-2-10 16:27 编辑

版主看起来比较忙,大家等的上手教程迟迟还没来。
今天放假了,手痒就先开始折腾了,也当做个笔记。有一样手痒的可以参考下,后面还是以版主整理的为准。
环境装起来比预想的要麻烦点,主要是因为ESP32不在官方直接支持的板子列表里,不熟悉的会走些弯路。
初次玩Arduino和ESP32,说的不对的地方请指正。

1.首先安装 Arduino IDE:
https://www.arduino.cc/en/software
我截图都是英文,其实有中文的。其中涉及到的路径都以软件默认的为准。

2.装完IDE之后需要安装几个库

分别输入下列关键字搜索并安装(其中Adafruit_BusIO非必须的):
Adafruit_BusIO
Arduino_MKRMEM
ArduinoJson
arduino-sht
I2C_BM8563_RTC

3.添加ESP32板子
a.File->Preferences中添加自定义板子管理器地址:
https://dl.espressif.com/dl/package_esp32_index.json


b.接着就可以在Boards Manager中找到ESP32了

点击安装


4.修改flash分区数据
a.打开这个路径(其中AppData默认是隐藏的)

复制一份default_16MB.csv文件命名为default_EDP.csv
当然也可以取其它名字,跟后面的配置对应就行

b.打开刚复制来的default_EDP.csv文件,按照版主给的分区数据修改保存


c.打开这个路径打开boards.txt文件相应位置添加下图中选中的几行

esp32.menu.PartitionScheme.default_EDP=16M Flash (EDP use)
esp32.menu.PartitionScheme.default_EDP.build.partitions=default_EDP
esp32.menu.PartitionScheme.default_EDP.upload.maximum_size=1310720

(其中1310720即0x140000, 一个app的size, 不太确定是不是这样填)

5.设置一些下载/分区参数

波特率可能要视情况改低些,CPU Frequency 选26MHz, 最好不要去尝试别的。

到这里就可以去尝试下能不能编译了,打开版主提供的.ino文件(其他关联的文件会一起打开)
点下菜单栏那个 "✔" , 看看编译有没有错误。

没问题就可以去写bug了。。。emm,是写代码{:lol:}
打开 HttpNews.h, 搜索TP-link, 改成自己的路由ssid和密码
顺便加个timeOut检测,20秒后退出,防止连不上wifi就傻在这里...


int addap(void)
{
int timeOut = 40;
WiFi.begin("your ssid", "your passwd");        //SSID PASSWD
delay(200);
while (!WiFi.isConnected())
{
    Serial.print(".");
    delay(500);
    if (--timeOut < 0)
    {
      Serial.print("Wifi timeout.");
      return -1;
    }
}
Serial.println("Wifi connected ok!");
return 0;
}

点击菜单栏的 "→" 按钮编译并上传(大家更喜欢说成下载)
这里需要人工干预下: 按住距离microUSB口最近的按键(GPIO0)不放,然后按一下然后放开复位按键,等IDE检测到板子后就可以放开了


到这里下载完毕了,需要人工按下复位键重启


之后就可以测试是不是能连上WiFi了: 按下key2(复位键旁)同步时间。

可以用自带的串口显示器一边查看打印数据


改了点显示留个印记:


lxvtag 发表于 2021-2-9 23:45:16

好像不用担心刷成砖,除非把flash刷坏掉。

这个工具刷回测试固件
https://www.espressif.com/en/support/download/other-tools


qtechzdh 发表于 2021-2-9 23:45:42

本帖最后由 qtechzdh 于 2021-2-9 23:51 编辑

very good{:titter:}
昨天刚搬完家,今天把最后一批发出去了。刚刚增加了WEB配置功能,先不发出来了,争取明天和小程序链接起来再发一个版本。

yyts 发表于 2021-2-10 08:19:39

我也装好Arduino IDE在等着了,顺手找出原来一块esp32的nodemcu的板子,刷成arduino先玩起来。

qtechzdh 发表于 2021-2-10 08:27:08

yyts 发表于 2021-2-10 08:19
我也装好Arduino IDE在等着了,顺手找出原来一块esp32的nodemcu的板子,刷成arduino先玩起来。 ...

测试代码已经在论坛里面了,驱动基本是完整的了

liang_work 发表于 2021-2-10 14:19:19

这个得顶.....

yangwm2012 发表于 2021-2-10 14:26:36

顶.............

网络孤客 发表于 2021-2-10 14:37:34

以前没玩过Arduino,感谢楼主这么详细的教程,成功更换了wifi。请问如何更新天气?

eiglxl 发表于 2021-2-10 14:44:30

感谢楼主的教程。

lxvtag 发表于 2021-2-10 15:41:55

网络孤客 发表于 2021-2-10 14:37
以前没玩过Arduino,感谢楼主这么详细的教程,成功更换了wifi。请问如何更新天气? ...

天气没研究,等等版主的大招吧。

yyts 发表于 2021-2-10 21:06:31

lxvtag 发表于 2021-2-10 15:41
天气没研究,等等版主的大招吧。



我的提示没有这个头文件,是什么问题?

qtechzdh 发表于 2021-2-10 21:13:58

yyts 发表于 2021-2-10 21:06
我的提示没有这个头文件,是什么问题?

你缺少库啊,没添加库

lxvtag 发表于 2021-2-10 21:24:46

yyts 发表于 2021-2-10 21:06
我的提示没有这个头文件,是什么问题?

少装了个
I2C_BM8563_RTC

yyts 发表于 2021-2-10 21:57:18

lxvtag 发表于 2021-2-10 21:24
少装了个
I2C_BM8563_RTC

嗯嗯,已经可以了,除了这个还有其它两个库。

yyts 发表于 2021-2-10 21:57:43

qtechzdh 发表于 2021-2-10 21:13
你缺少库啊,没添加库

嗯,已经可以了。

yangwm2012 发表于 2021-2-10 22:26:54

本帖最后由 yangwm2012 于 2021-2-10 22:27 编辑

首先谢谢楼主的教程, 挺详细的 。中间出了点问题,能否给解疑一下 ,谢谢

按照楼主的教程 一步一步 折腾, 最后下载时, 连接不上串口。 请问一下, 教程中的COM7  是 把墨水屏终端 连接到 电脑上 虚拟出来的串口吧?  我的没有虚拟串口?

lxvtag 发表于 2021-2-10 22:48:52

yangwm2012 发表于 2021-2-10 22:26
首先谢谢楼主的教程, 挺详细的 。中间出了点问题,能否给解疑一下 ,谢谢

按照楼主的教程 一步一步 折 ...

墨水屏上有个CH340,不是虚拟的。你可能得先装驱动。

yangwm2012 发表于 2021-2-10 22:58:20

lxvtag 发表于 2021-2-10 22:48
墨水屏上有个CH340,不是虚拟的。你可能得先装驱动。

这下知道了, 谢谢啊  这么晚  还给回复 ,顺祝 新年快乐

yangwm2012 发表于 2021-2-11 09:00:07

先祝愿坛友们 新年快乐,万事如意, 身体健康,万事如意。


现在遇到了这种情况,系统是 win10 ltsc,禁止数字签名 后 ,装ch341驱动成功了, 但是在设备管理器中一直没有发现串口, 连带黄色问号的提示 都没有,有那位碰到过这种情况 ?谢谢啊

lxvtag 发表于 2021-2-11 10:01:30

yangwm2012 发表于 2021-2-11 09:00
先祝愿坛友们 新年快乐,万事如意, 身体健康,万事如意。




新年快乐

1换条数据线试试
2换台电脑试试
如果都没有发现新硬件的声音可能是硬件有故障

yangwm2012 发表于 2021-2-11 13:08:57

换了4根线, 在笔记本上也试了 ,还是不能枚举。

感觉不应该硬件有故障,都是测试完发出的啊

看看别人是否也有这种情况? 如果就我自己这样,那就不是硬件的问题。

yyts 发表于 2021-2-11 13:59:30

qtechzdh 发表于 2021-2-11 14:17:42

yangwm2012 发表于 2021-2-11 13:08
换了4根线, 在笔记本上也试了 ,还是不能枚举。

感觉不应该硬件有故障,都是测试完发出的啊


说不定,也有可能USB虚焊,我是裸板测试没问题,烧写程序的。可能装配的时候USB磕碰了。

网络孤客 发表于 2021-2-11 18:30:28

yangwm2012 发表于 2021-2-11 13:08
换了4根线, 在笔记本上也试了 ,还是不能枚举。

感觉不应该硬件有故障,都是测试完发出的啊


microUSB线很多只有充电功能,没有传输数据功能。你确认你的线是数据线而不是充电线?

网络孤客 发表于 2021-2-11 18:31:06

yyts 发表于 2021-2-11 13:59


怎么弄的?

yangwm2012 发表于 2021-2-11 19:32:23

网络孤客 发表于 2021-2-11 18:30
microUSB线很多只有充电功能,没有传输数据功能。你确认你的线是数据线而不是充电线? ...

什么问题我也说不上,我尝试用了四根线都不能枚举。但好像能够充电

yangwm2012 发表于 2021-2-11 19:34:30

也是我对这东西不熟,操作不当,所以才问题连连

lxvtag 发表于 2021-2-11 19:41:29

yangwm2012 发表于 2021-2-11 19:34
也是我对这东西不熟,操作不当,所以才问题连连

就用附带的那根短线试试就好了,插上电脑一点反应没有的话大概率是硬件有些问题了。

lxvtag 发表于 2021-2-11 19:47:08

yyts 发表于 2021-2-11 13:59


不错不错,接的哪个网站?

yyts 发表于 2021-2-11 19:58:47

lxvtag 发表于 2021-2-11 19:47
不错不错,接的哪个网站?

就是这个坛友提供的呀。

wlmwwx 发表于 2021-2-13 23:04:23

我连串口,速率选择115200 能看到log输出,但是用刷写工具刷入程序失败,速率选择1152000和921600都不行,显示sync failed。请问有可能是什么问题?

lxvtag 发表于 2021-2-13 23:18:34

wlmwwx 发表于 2021-2-13 23:04
我连串口,速率选择115200 能看到log输出,但是用刷写工具刷入程序失败,速率选择1152000和921600都不行, ...

降到115200试试?

wlmwwx 发表于 2021-2-13 23:28:56

用115200试过也是同样的现象,请问刷机时点完start按钮再按reset正常就应该可以刷了吧?

lxvtag 发表于 2021-2-14 00:07:45

还要按离reset最远那个,仔细看1L步骤

magiczero 发表于 2021-2-14 01:14:02

本帖最后由 magiczero 于 2021-2-14 02:11 编辑

连接后提示如图的信息。。。

然后就一直停在这里了,这个是什么问题

这时机器也没有任何反应了,等了几分钟后还是没有反应,然后按了复位按钮没有反应,然后重新断电后再开机也不行了,固件估计挂掉了

magiczero 发表于 2021-2-14 01:20:29

完整的信息如下:

Sketch uses 948402 bytes (72%) of program storage space. Maximum is 1310720 bytes.
Global variables use 53288 bytes (16%) of dynamic memory, leaving 274392 bytes for local variables. Maximum is 327680 bytes.
esptool.py v2.6
Serial port COM5
Connecting........_____....._____....._____....._____....._____....._____.....__
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: 7c:9e:bd:f8:17:54
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 512000
Changed.
Configuring flash size...
Auto-detected Flash size: 16MB
Compressed 8192 bytes to 47...
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 10922.6 kbit/s)...
Hash of data verified.
Flash params set to 0x024f
Compressed 17392 bytes to 11186...
Wrote 17392 bytes (11186 compressed) at 0x00001000 in 0.2 seconds (effective 594.6 kbit/s)...
Hash of data verified.
Compressed 948672 bytes to 535488...
Wrote 948672 bytes (535488 compressed) at 0x00010000 in 12.3 seconds (effective 617.7 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 130...
Wrote 3072 bytes (130 compressed) at 0x00008000 in 0.0 seconds (effective 4096.0 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

magiczero 发表于 2021-2-14 01:25:16

然后看串口一直在重复输出下面的信息


01:23:44.469 ->
01:23:44.469 -> rst:0x3 (SW_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
01:23:44.517 -> configsip: 0, SPIWP:0xee
01:23:44.517 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
01:23:44.517 -> mode:DIO, clock div:1
01:23:44.517 -> load:0x3fff0018,len:4
01:23:44.517 -> load:0x3fff001c,len:1216
01:23:44.517 -> ho 0 tail 12 room 4
01:23:44.517 -> load:0x40078000,len:9720
01:23:44.517 -> ho 0 tail 12 room 4
01:23:44.517 -> load:0x40080400,len:6352
01:23:44.517 -> entry 0x400806b8
01:23:44.517 -> ets Jun8 2016 00:22:57
01:23:44.517 ->

lxvtag 发表于 2021-2-14 09:28:34

magiczero 发表于 2021-2-14 01:20
完整的信息如下:

Sketch uses 948402 bytes (72%) of program storage space. Maximum is 1310720 bytes. ...

这里都没问题,是不会自动重启



正常启动串口打印是这样:

ets Jun8 2016 00:22:57

rst:0x6 (SDIO_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:8896
load:0x40080400,len:5816
entry 0x400806ac

System Start up

你用2L那个工具刷回原版试试吧,应该不会坏。

qtechzdh 发表于 2021-2-14 10:36:17

lxvtag 发表于 2021-2-14 09:28
这里都没问题,是不会自动重启




试试这个 ,尚未完成。

magiczero 发表于 2021-2-14 11:37:02

谢谢,我再去试试

qtechzdh 发表于 2021-2-14 12:00:53

qtechzdh 发表于 2021-2-14 10:36
试试这个 ,尚未完成。

长按KEY2进入配置模式

magiczero 发表于 2021-2-14 12:11:43

这个用2楼的可以刷进去,工作正常。配置好了,WiFi也连上了。感谢{:smile:}

wlmwwx 发表于 2021-2-18 09:28:38

lxvtag 发表于 2021-2-14 00:07
还要按离reset最远那个,仔细看1L步骤

谢谢,看的不仔细,没注意这一句。

yellowpet 发表于 2021-2-18 11:51:54

qrcode.h: No such file or directory
提示没有qrcode.h文件,请问下这个头文件是需要添加哪个库呢?

lxvtag 发表于 2021-2-18 11:56:19

yellowpet 发表于 2021-2-18 11:51
qrcode.h: No such file or directory
提示没有qrcode.h文件,请问下这个头文件是需要添加哪个库呢? ...

加这个

yellowpet 发表于 2021-2-18 12:02:13

lxvtag 发表于 2021-2-18 11:56
加这个

谢谢,添加进去,编译过了。

qtechzdh 发表于 2021-2-18 12:31:12

注意分区和字库文件

lxvtag 发表于 2021-2-18 13:15:50

本帖最后由 lxvtag 于 2021-2-18 13:17 编辑

整理下(适用V2.07):

1. 需要的库:
Adafruit_BusIO
Arduino_MKRMEM
ArduinoJson
arduino-sht
I2C_BM8563_RTC
QRCode

2. 分区文件使用源码附带的 default_EDP.csv 文件替换1L修改的对应文件

3. boards.txt文件在1L的基础上修改(maximum_size=1310720改为2621440):
esp32.menu.PartitionScheme.default_EDP=16M Flash (EDP use)
esp32.menu.PartitionScheme.default_EDP.build.partitions=default_EDP
esp32.menu.PartitionScheme.default_EDP.upload.maximum_size=2621440


4.刷机步骤:

a. 用2L工具烧录完整固件 epd207.bin    (目的是对 flash 分区、写入字库和程序,如果不需要修改代码,烧完直接使用就可以了,不需要安装Arduino IDE)
   这里很耗时间,波特率可以设置高一些,不限于115200.

b. Arduino IDE 修改代码并"上传"      (程序和字库分离,字库通常不需修改,这样就可以只更新代码,节约编译和下载时间)

xuxi2009 发表于 2021-2-20 12:56:11

b.接着就可以在Boards Manager中找到ESP32了,这个一部不用点手段,下载还是挺慢的,电信网

fbwcpu 发表于 2021-3-7 22:54:53

default_EDP.csv   这个在哪找? 我是win10 64bit的没有楼主说的那路径呀

qtechzdh 发表于 2021-3-7 23:47:36

fbwcpu 发表于 2021-3-7 22:54
default_EDP.csv   这个在哪找? 我是win10 64bit的没有楼主说的那路径呀

自己建的
页: [1]
查看完整版本: [尝鲜]墨水屏开发环境搭建,修改wifi信息