注释
嗨巴特, 我认为这是一个很棒的点子。我会想到 Nextion 的东西。这样,如果像我这样的菜鸟想要更大的屏幕或不同的东西,我们可以配置它。 |
我已经测试了 Nextion 并且对我来说它不适应它使用串行,特定协议, – 并且屏幕反应性不如 ILI9143 + xtp2046 在 spi 模式下 – 我放弃了它的开发用于 esp3d nextion 使用 I2C oled 128×64 很容易集成,几个库为 ESP32 工作,另一种可能性是 TFT 和 SPI,它使用 CS + DC + MISO/SCK/MOSI 并且有适合它们的库和 ESP32 我现在正在为 ESP3D 开发触摸屏,所以我做了几个工作台和测试。 |
@LUC-Github 很高兴知道。我正准备去买一个哈哈。 |
我有几个——甚至是带有 rtc 和 gpio 的那个,你需要为每个分辨率做一个 FW,所以最后没有真正的收获——而且它们并不便宜 |
有非常好的库来获得相同级别的 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 端口,并且应用程序正在运行,它会看到“菜单:”并抓取标题,然后查找数字项目并从中制作按钮,然后抓取“输入:”之后的文本,如果用户按下“Jog”按钮,它会将“模式 2”喷射回 ESP32。 希望我传达的是总体思路:开发一种适用于标准终端上的人机交互的语法,以及在应用程序中制作控制面板的线索。这具有(重要的)优势,即不需要在 ESP32 上添加一堆额外的 GUI 代码。并且…允许用户自定义控制面板的外观和大小。 还有很多其他方法可以做到这一点。例如,当应用程序启动时,它可以向 ESP32(或其他设备)发出信息请求。例如“echo $PANEL_SETTINGS”并期望返回一系列描述符,这些描述符定义了控制面板的布局。 嵌入其中的是菜单的描述以及应该为每个菜单选择发送什么字符串。如上例。 以及状态字段和要查找的字符串以获取值以更新 GUI 上的状态。例如,如果 ESP32 发送:“LIMIT SWITCH 1 PRESSED”然后打开“X LIMIT”图标。这可能是 PANEL_SETTINGS 中的一个字符串,例如 任何数量的其他标准 GUI 界面项目:滑块、增量/减量、文本输入、文本输出等… 是的,这听起来像是自己的项目,但我认为它可以从非常简单的控件开始。只有几个按钮和状态字段。然后它可以自己生长。我很乐意提供帮助,我现在还不能开始。 |
我长期以来一直抵制有线显示器的主要原因是我一直觉得平板电脑、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未提及所有者许可证 |
屏幕输入可以改成下面的pin吗? |
使用 serial 将允许使用 gcode 命令进行慢跑,家庭等……并且 grbl 通过 serial 报告它的状态和 pos 以供显示。 仅用于慢跑的另一个最小选择是通过 i2c 的 Wii 双节棍。它有一个用于 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 机器,无需在任何其他机器/设备上进行配置。 |
我正在考虑添加对本地显示的支持。我正在研究可能有意义的硬件和布线选项。我欢迎任何建议。
我认为这个有线接口应该支持显示器、一些按钮和可能的 SD 卡。这将允许一个全功能的本地控制或吊坠。
我判断解决方案的标准之一是对 ESP32 的 I/O 要求最少。理想情况下,它是单个 I2C 或 SPI 连接。这排除了很多现有的 RepRap 解决方案。