开源改变世界!!

Grbl_Esp32_Utility:用于初始设置的图形用户界面 #957

推推 grbl 2年前 (2023-01-30) 494次浏览
打开
ajquick 打开了这个问题 2021 年 8 月 17 日 · 4条评论
打开

Grbl_Esp32_Utility:用于初始设置的图形用户界面#957

ajquick 打开了这个问题 2021 年 8 月 17 日 · 4条评论

注释

Grbl_Esp32_Utility:用于初始设置的图形用户界面 #957
快手 评论了 2021 年 8 月 17 日  

周末我为 Grbl_Esp32 的初始配置编写了一个 GUI 应用程序。

https://github.com/CNCxyz/Grbl_Esp32_Utility

https://github.com/CNCxyz/Grbl_Esp32_Utility/blob/413be3f3cc22dce576eae775f2783ea39b9e4efb/GEU-Screenshot.png

这个想法是最终用户可能会购买预装设备而无需自己编译和安装,因此拥有一个可以轻松设置初始 Wi-Fi 和接入点设置的程序将是一个好主意。我没有包含所有设置,但可以返回并添加它们。显然,一旦连接到网络,就可以在 WebUI 中配置主要设置。

该程序是使用 Qt 开源社区软件构建的。从理论上讲,该程序可以为 MacOS 和 Linux 编译,但目前我只有 Windows 可以测试。如果有人想帮忙,改进代码,添加功能或帮助进行一些交叉编译,我将不胜感激!

Grbl_Esp32_Utility:用于初始设置的图形用户界面 #957

另一种选择是向 WebUI 添加一个屏幕,如下所示:如果 WebUI 以 AP 模式连接或以其他方式确定固件没有正确的 STA 配置,它会显示一个简化的屏幕来设置 STA 配置。这个想法是使用您的手机连接到 AP 并进行初始设置。Qt 解决方案的困难在于它是用户必须安装而开发人员必须维护的另一个程序。该程序在某种程度上相对简单,但处理复杂框架之上的不同代码库、在三个不同平台上编译、维护它以及支持不可避免的用户问题绝非易事。每个新组件,尤其是在不同环境中的组件,总是伴随着大量繁重的工作。

使用手机进行设置的优点 – 假设有一个页面是为了在小屏幕上易于使用 – 几乎每个人都随时都有一个方便,而且将 wifi 切换到ESP32 AP 和背面。由于失去互联网连接,切换计算机可能会更加复杂;手机在这方面往往更容易,因为它们假设 wifi 访问不同的网络会来来去去 – 你可能有蜂窝数据作为替代互联网访问。

电话方法的另一个优点是您不需要 USB 电缆或 USB 串行芯片的驱动程序。

Grbl_Esp32_Utility:用于初始设置的图形用户界面 #957
作者

在我看来,只要不需要添加其他功能,该项目就不需要在其基本功能之外进行更新。我可能还想做一些调整,也许是添加蓝牙支持和 DNS/网关设置,仅此而已。您说的可以使用 Web 浏览器是正确的,但是如果从手机使用,仍然需要上传 Index.html 文件,这在手机上很难做到。当然,安装固件的人是否已经完成这并不重要。

GEU 程序是可移植的(无需安装)。应该可以将其压缩为一个可以从任何地方运行的 EXE 文件。只是一个整洁的项目,可以存储在 SD 卡(如果配备)上并在需要进行更改时运行(例如,如果您的 Wi-Fi 密码更改并且您停留在 STA 模式)。

电话方法的另一个优点是您不需要 USB 电缆或 USB 串行芯片的驱动程序。

虽然我理想的 ESP32 设置应该有多个电源选项、桶形插孔、螺丝端子、POE 和 USB,但我认为很多设置都会让它们的控制器通过 USB 供电,任何比 Windows XP 更新的操作系统都应该自动安装串行驱动程序。

Grbl_Esp32_Utility:用于初始设置的图形用户界面 #957

我从未见过不需要定期更新的项目。

手机不会用来上传index.html.gz,只能上真实网络。上传 index.html.gz 将通过普通的 WebUI 方法完成。

单个 .EXE 文件仅适用于 Windows。当然,MacOS 和 Linux 有不同的打包问题。由于许多不同的发行版和 PC vs Raspberry Pi 轴,Linux 尤其令人讨厌。如果您愿意在不同平台上拥有该项目,那就去做吧——但您已经表明您目前没有为除 Windows 之外的任何设置。

Grbl_Esp32 通常不会卡在 STA 模式;如果在几次尝试后无法以 STA 模式连接,它将退回到 AP 模式。

仅通过 USB 为 Grbl_ESP32 供电是可能的,但几乎不可能。Bart 的控制器都依赖于大部分电路板的外部电源。您可以从 USB 为 ESP32 供电,但一旦添加任何其他东西,您就会接近标准 USB 端口可以提供的限制。与一些外部驱动器通信的电路板可能只需要 USB 电源就可以摆脱困境,但这并不是我们目前所见的大部分市场。USB 电源足以进行初始设置。

在 Facebook 的 CNCjs 用户组中,我们经常回答那些不知道使用哪个串口的人的问题。这不是一个大问题,但确实会占用支持时间。

Grbl_Esp32_Utility:用于初始设置的图形用户界面 #957
作者
快手 评论了 2021 年 9 月 2 日  

感谢您的反馈米奇。

我相信该程序的路线图以及 FluidNC 在不久的将来将需要更专业的 GUI 类型设置。帮助满足这种需求是我创建这个开源项目以支持 Grbl_Esp32 用户的目标。

我不确定我是否要求用户协助开发和定期更新,我只是说代码可以为 Linux 和 Mac 编译。我已经在 Linux 和 Mac 上加载了 Qt,并创建了新的 Windows (exe)、MacOS (dmg) 和 Linux GUI (appimage)。除非有任何错误修复(或直到 FluidNC 出现),程序应该可以正常工作。我不确定我是否给人的印象是该项目在发布后立即被放弃,这不是我的本意。

我有自己的计划,使用固件来创建一个实际上不使用 USB 的控制器。它没有内置步进驱动器,因此功耗不是问题。最终用户将能够使用 USB 直连或 USB 仅作为电源并通过 Wi-Fi 运行。我在这里使用 GUI 的目的是创建一些东西,当最终用户不是编译固件的人时可以直接使用。这有助于那些可能不了解如何打开串行端口和发送命令的用户,就像您使用 CNCjs 时遇到的那样。这个简单的程序旨在有点简单,因为它能够在尝试更改设置之前检查 ESP32 上是否安装了 Grbl。如果第一个端口不起作用,希望最终用户会切换到下一个可用端口进行尝试。

话虽这么说,运行 EXE、DMG 或 Appimage(即使是便携式的)对最终用户来说也是一种烦恼。这就是为什么我将我在 Qt 中编写的内容间接移植到完全在线存在的 Web 串行程序的原因。现在,您可以使用最新版本的 Chrome、Edge 和 Opera 通过串行方式更新您的设置,而无需下载任何内容。

这是一个概念证明。需要做额外的工作来处理错误,提供更多信息,并且通常对有疑问的任何最终用户更有帮助。这里的好处是文件可以在本地运行,无需安装 NodeJs,也可以通过 Github 的托管页面在网络上运行。我需要检查并清理我的(写得不好的)Javascript,但它目前正在运行:

资料来源:https ://github.com/CNCxyz/Grbl_Esp32_Web_Utility

网址:https ://cncxyz.github.io/Grbl_Esp32_Web_Utility/

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

还没有

发展

没有分支机构或拉取请求

2名参加者
Grbl_Esp32_Utility:用于初始设置的图形用户界面 #957Grbl_Esp32_Utility:用于初始设置的图形用户界面 #957

喜欢 (0)