Contact me: hankecnc@gmail.com

USB 连接问题。 #438

推推 grbl 3年前 (2023-01-30) 217次浏览
打开
blaisebarrette 打开了这个问题 2020 年 6 月 16 日 · 5 条评论
打开

USB 连接问题。#438

blaisebarrette 打开了这个问题 2020 年 6 月 16 日 · 5 条评论

注释

USB 连接问题。 #438

一切都通过 WiFi 完美运行。
使用 bCNC,我可以连接到 socket://esp32.local:23 并且一切似乎都运行良好。
唯一不工作的是 USB 连接。

我收到以下消息。

ets Jun  8 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x17 (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:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:8896
load:0x40080400,len:5828
entry 0x400806ac
'utf-8' codec can't decode byte 0xff in position 0: invalid start byte

这可能与 Windows 相关,因为我可以在我的 Mac 上通过 USB 连接 PlatformIO。
该问题仅在 mi Windows 10 上使用 bCNC 时出现。

我还应该提到它以前工作过。

也许有人以前见过这个并且知道该怎么做?

谢谢!

USB 连接问题。 #438

我会解释出了什么问题,但我不知道如何解决它,因为我没有加入 bCNC 社区。
当 Grbl_Esp32 从 ESP32 ROM 引导代码接管串行端口时,问题就开始了。正是该代码或 ESP32 系统深处的某些东西生成了以“条目 0x400806ac”结尾的消息。然后 Grbl_Esp32 开始运行并控制串口。这种“接管”导致串行线路出现故障,看起来像串行协议“起始位”。但是后面没有实际的串行数据,所以看起来好像发送了一个十六进制值为 0xff 的字符。0xff 不是 ASCII 字符集中的有效字符,大多数软件会忽略它。

但不是蟒蛇。根据 Python 程序设置串行线路的方式,解释数据的选择之一是 UTF-8,这是一种使用 8 位字符流对国际字符进行编码的方法。UTF-8 保留了一些 8 位的字符值作为“起始字节”,这意味着该字符使用了一个以上的字节。其他一些字节,尤其是值介于 0xf5 和 0xff 之间的字节,是无效的。

所以正在发生的事情是,用 Python 编写的 bCNC 看到了由线路切换故障引起的错误字符,根据 UTF-8 规则对其进行解释,然后吓坏了。也许有一些方法可以让 bCNC 使用不同的字符集。UTF-8 不是 Grbl_Esp32 的最佳选择,它的消息不使用国际字符。

USB 连接问题。 #438
所有者

如果您将某些引脚保持在低电平或高电平,它会消除 ESP32 引导文本。

USB 连接问题。 #438
作者

哇!看起来我打开了一罐蠕虫!我显然不像你们那样是高级编码员。我将根据您在此处提供的信息搜索网络,如果我发现了什么,请报告。

感谢您抽出宝贵的时间!

USB 连接问题。 #438
作者

坏消息!

我测试了在启动时下拉的 GPIO15,果然,它不再写那条消息了……除了那个时髦的 UTF8 字符!

这是 GPIO15 浮动的消息:

ets Jun  8 2016 00:22:57

rst:0x1 (POWERON_RESET),boot:0x13 (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:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:8896
load:0x40080400,len:5828
entry 0x400806ac
�
[MSG:Grbl_ESP32 Ver 1.2a Date 20200613]
[MSG:Compiled with ESP32 SDK:v3.2.3-14-gd3e562907]
[MSG:Using machine:Cyclone PCB Factory]
[MSG:Axis count 3]
[MSG:RMT Steps]
[MSG:PWM spindle Output:2, Enbl:-1, Dir:-1, Freq:5000Hz, Res:13bits]

...

这是 GPIO15 接地的消息:

�
[MSG:Grbl_ESP32 Ver 1.2a Date 20200613]
[MSG:Compiled with ESP32 SDK:v3.2.3-14-gd3e562907]
[MSG:Using machine:Cyclone PCB Factory]
[MSG:Axis count 3]
[MSG:RMT Steps]
[MSG:PWM spindle Output:2, Enbl:-1, Dir:-1, Freq:5000Hz, Res:13bits]

...

我试图将它连接到 bCNC 并拉低 GPIO15,而这个单一的罪魁祸首使连接无法发生。

我会继续找的!

USB 连接问题。 #438
作者

好消息!!!

我走运了!在我的 platform.ini 文件中,我添加了这一行:
board_build.f_flash = 40000000L ; Custom FLASH Frequency
因为我的同一块板一直在以 80Mhz 的频率重启其他草图,所以我认为该板在 40Mhz 下可能更稳定,所以我添加了该行。

但这是幸运的罢工……我试着把那条线
board_build.f_flash = 80000000L ; Custom FLASH Frequency
改成你猜怎么着?!?该 UTF8 字符不再显示。我恢复到 40Mhz 以确认回来是坏人!又是 80Mhz……没了!

所以我现在有了功能齐全的 GRBL_ESP32,我是一个快乐的露营者!

因此,如果有人带着同样的问题来找您,请他们检查一下闪光灯的速度!

多谢你们!将近凌晨两点!去睡觉了!

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

3人参加
USB 连接问题。 #438USB 连接问题。 #438USB 连接问题。 #438

喜欢 (0)