注释
嗨,巴特, 我认为这是一个很棒的点子。我会想到 Nextion 的一些东西。这样,如果像我这样的菜鸟想要更大的屏幕或不同的东西,我们可以配置它。 |
我已经测试过 Nextion,对我来说,它不适合使用串行、特定协议,并且屏幕反应性不如 spi 模式下的 ILI9143 + xtp2046 好 – 我为 esp3d 放弃了它的 devt,nextion 使用 I2C oled 128×64 很容易集成,有几个库适用于 ESP32,另一种可能性是带有 SPI 的 TFT,它使用 CS + DC + MISO/SCK/MOSI,它们有很好的库,ESP32 也有 我现在正在为 ESP3D 开发触摸屏,所以我做了几个台架和测试。 |
@LUC-Github 很高兴知道。我正要去买一个哈哈。 |
我有几个——即使是一个带有 rtc 和 gpio 的,你需要为每个分辨率做一个固件,所以最后没有真正的收益——而且它们并不便宜 |
有非常好的库来获得相同级别的 UI – https://littlevgl.com/ 真的很棒 对于我使用的 TFT:https ://github.com/Bodmer/TFT_eSPI |
请考虑将 USB OTG 用于旧手机或廉价平板电脑。只需 10 美元的电缆,您就可以拥有一个带有您喜欢的任何功能的漂亮显示器,而无需占用额外的引脚。如果不想写app,可以用DroidScript之类的app,用JavaScript写app,插上USB OTG后自动在手机上运行。也可以编译成app(小额捐款) ) 如果你想做一个独立的。 根据您的成本,成本可能低至零,实际上不会超过 Nextion。手机在 eBay 上几乎一无所获,等等……例如 Galaxy S3 将花费您 20 美元。它有一个窍门:您必须使用一个既可以在一根 USB 电缆上充电又可以运行 OTG 的设备。列表和其他一些选项位于: 举个例子(请记住,可以支持任何图形/前面板外观,这种简约的布局正是我想要的) 我现在正在扩展该 DroidScript“应用程序”以支持无头 Linux 机器(又名 RasPi 零): 我真的很想看到一些通用的 /graphics/ 终端应用程序,比如 Nextron 的 UI 部分,但我目前没有时间专注于那个,老实说,我很无能为力来到 GUI 设计。但我可以想象一些既可以用作文本又可以用作 GUI 界面的东西。例如,ESP32 可以说:
这会在您的串行终端上显示得很好。但如果手机/平板电脑通过OTG连接到同一个USB端口,并且应用程序正在运行,它会看到“菜单:”并抓取标题,然后查找数字项并从中制作按钮,然后抓取“输入:”之后的文本,如果用户按下“慢跑”按钮,它会将“模式 2”喷回到 ESP32。 希望我传达的是总体思路:开发一种适用于标准终端上的人机交互的语法,以及在应用程序中制作控制面板的线索。这具有(严重的)优势,不需要在 ESP32 上使用一堆额外的 GUI 代码。并且…允许用户自定义控制面板的外观和感觉以及大小。 还有很多其他方法可以做到这一点。例如,当应用程序启动时,它可以向 ESP32(或其他设备)发出请求以获取信息。例如“echo $PANEL_SETTINGS”并期望返回一系列描述符,这些描述符定义了控制面板的布局。 嵌入其中将是菜单的描述以及应为每个菜单选择发送什么字符串。如上例。 状态字段和要查找的字符串以获取值以更新 GUI 上的状态。例如,如果 ESP32 发送:“LIMIT SWITCH 1 PRESSED”然后打开“X LIMIT”图标。这可能是 PANEL_SETTINGS 中的一个字符串,例如 任意数量的其他标准 GUI 界面项目:滑块、Inc/Dec、TextIn、TextOut 等… 是的,这听起来像是自己的项目,但我认为它可以从非常简单的控件开始。只需几个按钮和状态字段。然后它可以自己生长。我很乐意提供帮助,我现在无法启动它。 |
这么长时间以来我一直抵制有线显示器的主要原因是我一直觉得平板电脑、PC 或智能手机是更好的选择。 蓝牙已经得到支持并提供了非常高的性能。有几个非常好的应用程序已经兼容。 WebUI 也很好用。虽然更新速度比蓝牙慢,但无需为 Android、IOS、Windows 等开发应用程序。如果你有浏览器,它就可以工作。 像 ESP32 这样的设备上的 USB OTG 是一项艰巨的任务。我知道该系列的最新版本可能拥有它,但那是一个单核处理器,不太可能能够运行我们现在拥有的东西。 虽然我不是 100% 在有线显示器上销售,但我可以看到一个坚固且密封的吊坠,带有一个老式的急停装置,也许一个慢速滚轮有它的优势。这些功能在固件中,因此只需要一个代码库。 |
@bdring叹。你完全错过了我评论的重点。对不起,我没有像往常一样有效地沟通。 USB OTG 不适用于 ESP32,它适用于手机/平板电脑。它允许手机/平板电脑代替 PC 连接到 ESP 32,并以低得多的成本提供专用的显示器/界面。您不需要在…上实现 USB OTG 没关系。如果它不明显,就没有理由继续试图解释它。 |
@JamesNewton对不起,我让你叹了口气。您说“将 USB OTG 用于旧手机” 您对“to”的使用让我失望。 我之前在平板电脑上使用过 USB OTG 连接到 Grbl 很多次。对于 ESP32 开发模块附带的一些 USB 芯片,我在平板电脑的驱动程序可用性方面遇到了问题。 在这里,我有一个便宜的中国平板电脑通过 USB OTG 集成到 Inventables X-Controller 中。我也连接了视频慢跑控制器。我大约在 4 年前做过这个。 |
但是屏幕需要输入,所以也需要 i2c 键盘 – 对吧? |
如果我明白@JamesNewton建议正确,手机上运行的应用程序将发送串行命令,因此不需要 I2C。输入将通过 USB 串行到 ESP 完成。 该应用程序可以通过串行查询 ESP 以保持应用程序上的信息配置也更新。有点像 Candle 或 bCNC 等 PC 程序。 我猜这里使用 OTG 而不是蓝牙的目的也是为了给手机电池充电。否则,使用蓝牙的工作方式类似。 |
您现在可以在不更改固件的情况下进行 OTG。如果你想让它充电,你需要让控制器保持通电,即使在不使用时也是如此。这是硬件问题,不是固件问题。我建议使用带有单独充电插头的普通双电缆。 如果您有有线连接,只需将其连接为充电电源并使用蓝牙。 这两种方法都得到了充分的支持,性能很好。这个线程是关于一个可能的固件解决方案。 |
本地显示显示谁连接或连接情况?机械状态?可以帮助操作者解决使用中的一些问题。 |
@Engineer2Designer未提及所有者许可证 |
屏幕输入可以改成下面的针脚吗? |
使用串行将允许使用 gcode 命令进行慢跑、家庭等…并且 grbl 通过串行报告它的状态和位置以进行显示。 仅慢跑的另一个最小选择是通过 i2c 的 Wii nunchuk。它有一个用于 x/y 微动的小操纵杆和 2 个用于 z 向上/向下的按钮。 |
小提示:使用平板电脑或手机通过 OTG 进行显示的另一个优点(正如我上面建议的那样)是它们具有进行可视化的处理能力。例如,您可以放入许多开源 G-CODE 渲染 Javascript 中的任何一个,并根据位置报告(正如 derFrickler 提到的)进行实时更新的漂亮预览。而且由于它都是 JS,因此您可以对 Web 界面使用相同的开发工作。通过一些工作,您可以将 Web 界面重新用作前面板界面。如果您决定需要更适合较小屏幕的布局,或者重新使用其中的一部分。而且…一个好的 USB OTG 适配器可以支持/多个/设备,因此您可以插入鼠标、键盘、XBOX 控制器等… |
叹息我不明白为什么人们不能理解我在说什么。
我不会写英文吗? 关键点:ESP32 不需要额外的代码或 IO 引脚来支持“附加的另一件事”,因此它可以只专注于获取 G-CODE 和生成脉冲。 |
@JamesNewton是的,我们可以理解你。请尽量不要如此对抗。 你所说的已经被支持了。这个线程是关于完全不同的东西。这将是可选的,并且与您描述的方法不冲突。 |
抱歉,我不明白这个线程仅限于添加硬件并排除现有的 USB 接口。我会说我并没有真正获得这种方法的优势,但如果你想研究它,我会取消这个问题并停止纠缠。 |
@james抱歉,牛顿一定也错过了您在 OTG 上使用硬件控制器的部分。 使用 Grbl_Esp32,我真的很喜欢从 SD 卡运行作业并使用任何设备查看 Web 界面的想法。意味着拥有完整的 CNC 机器,无需在任何其他机器/设备上进行必要的配置。 |
是的!ssd1306 in spi 或 i2c (: PCF8574 或 MCP23008 over i2c 上的编码器或按钮(: |
在 My fork 中,我添加了一个 i2c oled 显示器,主要用于显示连接信息(ipaddress 等)。,我使用的是 heltec wifikit 32,它在封装上使用 i2c 在引脚 4 和 15 上显示。 连接蓝牙的手机怎么样?例如,周围有很多 android 应用程序可以对蓝牙进行 grbl 控制 https://github.com/zeevy/grblcontroller 它主要是为标准 AVR Grbl 设计的,HC05 蓝牙串行模块连接到其 rx/tx 引脚。但是考虑到 esp32 有板载蓝牙,增加对它的支持可能会让人有些痒痒。 @JamesNewton ,它也支持直接 otg usb,所以理论上你只需插入一个 otg 引线,插入一个 microusb 以在其中键入 A 并启动应用程序,它应该可以正常工作,这将解决你的要求。 |
我会喜欢这个设置上的原生 LCD!对我来说,一个 2004 年的 LCD 就足够了 |
嘿,我刚刚将此 GRBL ESP32 编译到 M5STACK 模块上。该模块有 3 个按钮和一个 I2C LCD 和一些 gpio 引脚。它可能是最好的现成控制器,非常整洁。我正在建造一台便携式 24 伏电池供电的机器,上面的液晶显示器是理想的。无论如何,伙计们值得深思。http://www.m5stack.com我刚拿到了基本的核心单元、一个电池模块和一些继电器,我印象深刻。我什至让 GRBL 伺服器使用 pwm 工作,在示波器上 pwm 看起来又漂亮又干净。做得很好,感谢所有人! |
我还想要一个 LCD 显示器,并且能够以独立模式(无头)控制 CNC。我在 3D 打印机上有这个,能够插入 SD 卡并告诉它运行真的很有帮助。从我在 GRBL 代码中可以看到,SD 阅读器代码有一个内置的 gcode 发送器,这使得这成为可能。 关注点: 建议: 总结: 问题:
提前致谢! |
有许多基于蓝牙的 grbl 控制加密狗应用程序可用于 android 手机和平板电脑,我使用了一个通过 otg usb 电缆广泛插入我的主装备。与其安装额外的显示器等,不如使用每个人口袋里都有的那个。我还可以在菲律宾以低至 30 美元的价格购买低规格的安卓智能手机,足以通过蓝牙/wifi 运行单个应用程序。即使是最便宜的智能手机也有扬声器和摄像头,它们也可以很好地使用。(想想在智能手机上运行的 Octoprint)如果现有的不切芥末,也许是时候打破 android studio 的副本并破解一个远程控制台应用程序了。
|
@mfarabee这或多或少正是我正在做的事情。我正在使用 ESP8266(带 TFT Shield 的 WEmos D1 Mini)作为小型 DRO 显示器。我将它连接到 GRBL_ESP32 控制器的 RX/TX,因为我没有使用 USB 端口。刚刚上传了我非常简单的代码,如果你想看看: 我已经为基于 ESP32 的第二个版本焊接了一些硬件,ILI9341 2.4″ TFT 触摸和旋转编码器,但没有时间为它编写一些代码……现在有很多项目。 |
@thawkins, 而不是 Android studio,你看过 MIT App Inventor 吗?非常棒,您可以使用 Scratch 编程非常快速地开发 Android 应用程序。我这样做是为了为高中机器人团队建造的一些 Arduino 汽车创建不同的驾驶应用程序。他们能够很快掌握并开发自己的应用程序。 |
我是一名 C++/Kotlin/Java/C# 程序员,Scratch 对我来说是一个陌生的国家,所以它不会是一个舒适的环境。
|
@thawkinsScratch 是块编程的一种形式。您拖动块并将它们连接起来以创建您的代码。他们用它来教孩子们,但即使是经验丰富的程序员也可以使用它:-) MIT App Inventor 非常强大,而且很容易做到。几个 youtube 视频,您将成为专家! |
如果您使用的是主机 PC,那么我建议使用快捷键编程的“pro micro”板,因为该板具有本机隐藏功能并且价格便宜。我使用了其中的 2 个并涵盖了几乎需要的 io。您甚至可以为进给率和主轴倍率的旋转编码器编程。顺便说一句,我在 rpi4 中使用 cncjs 与 grbl_esp32 和 USB 连接。 |
这就是您将位置报告给 Nextion 显示器所需添加的全部内容。(在 p373r 注释之间。)。 report.cpp report_util_axis_values(打印位置,温度);
// 返回规划器和串行读取缓冲区状态。 |
@xP373Rx, 有没有更多关于 Grbl_ESP32 所有使用 Nextion 的操作的开源和案例资料?我用的是Nextion,但是Grbl_ESP32有很多问题,希望有更多的资料丰富他。 |
考虑使用常见且便宜的 arduino uno tft shield: |
婚戒 评论 on 12 Sep 2019
我正在考虑添加对本地显示的支持。我正在研究可能有意义的硬件和接线选项。我欢迎任何建议。
我认为这个有线接口应该支持一个显示器、几个按钮,可能还有 SD 卡。这将允许一个功能齐全的本地控制或挂件。
我判断解决方案的标准之一是对 ESP32 的 I/O 要求最少。理想情况下,它是单个 I2C 或 SPI 连接。这排除了许多现有的 RepRap 解决方案。