评论
它应该使用正确的波特率设置。并且 statup 字符串应该是相同的 grbl |
你好@zeevy 波特率设置正确,但我应该为启动字符串设置什么,你能解释一下吗?我不明白启动字符串的含义。 感谢您的快速回复。 |
尝试并没有什么坏处。浏览此发件人的问题似乎可以配置消息以便 |
你好@terjeio 好的,我会尝试不同的级别,然后回到这里。 |
您是否有可用于检查蓝牙连接的计算机或应用程序。通过终端窗口(例如 Windows 的 PuTTY)连接并手动发送命令, 原因之一可能是控制器中配置了错误的串行端口,或者 RX/TX 引脚未正确接线(未交叉)。您连接的引脚与 USB 编程端口共享,不知道这是否是个问题,也许尝试 |
它可以像将 USB 电缆插入编程端口一样简单,因为您将模块连接到 (RX/TX) 的引脚与此共享。也许它可以在拔下 USB 电缆并将外部电源连接到桶形插孔的情况下工作?或者切换到使用这些引脚的串行设备 2:
|
你好@zeevy 是的应用程序与 usb otg 完美配合。 |
好的,那么作为@terjeio上述问题可能出在蓝牙模块的物理连接或模块的波特率上。
|
您必须编辑grbl/serial.c – 第 46 行。 我检查了我的 Due,USB 和 UART 模式可以同时使用(!)引脚 0 和 1 连接到 USB <> RS232 芯片,所以它们并行工作,我不知道。由于 USB 正在通信,那么是否可能是您的 Due 出现了某种故障?我有一个原始的 Arduino Due,你的是一个克隆?如果您有电压表,请检查引脚 0 和 1 上的电压是否为 3.3V。 |
@arlimbad222我已经检查了其他端口的串行代码,但它们不起作用,我将尽快提交修复程序,允许从my_machine.h中选择端口。 在测试默认端口(引脚 0 和 1)时,我发现它对负载很敏感,即使连接示波器探头有时也会使其停止工作。也许蓝牙模块也会干扰它?测试此方法的一种方法是在连接蓝牙模块时尝试通过 USB 端口进行通信,如果这不起作用,则蓝牙模块正在阻止通信。 另一个可能在起作用的问题是 Due 是一个 3.3V 设备,如果蓝牙模块是 5V(从上图中看起来是这样)那么这可能是它不起作用的原因。如果连接 5V 设备,您还有损坏 Due 的风险! |
你好@terjeio 我正在使用 hc-05 蓝牙模块,它是 3.3v 模块,所以电子设备不是问题,我用 Android 应用程序测试了 usb,它工作正常,但不知何故蓝牙产生了问题,我花了几个小时来解决这个问题,但我做不到这可能使用另一个 TX-RX 引脚进行通信。 感谢您的快速回复。 |
Due 驱动程序现在更新了我上面提到的修复程序。 连接蓝牙模块后,您是否尝试过 USB 通信?如果可以,是否可行? |
你好@terjeio 我不明白你在说什么,因为我知道我使用 PC 的 USB 连接,然后连接蓝牙,然后再次检查,我是对的。 您在 TX-RX 引脚的代码中更新了什么以及如何更改通信引脚? |
是 – 当连接蓝牙模块时 USB 通信应该工作,因为它们并行连接到相同的处理器引脚。如果 USB 通信不再可能,那么蓝牙模块会阻止它,我认为它也无法工作。
其他端口根本不起作用,因此修复是针对它们的。可以通过编辑my_machine.h来选择其他端口,该文件中有它们使用哪些引脚的信息。 |
你好@terjeio 好的,我会在早上之前更改该引脚并再次测试并返回这里 感谢您的快速回复 |
新的 repo 使用子模块,因此请参阅此页面,该页面也链接到驱动程序页面。 |
我从我这边尝试了一切可能,结果是我可以通过使用串行蓝牙 Android 应用程序从蓝牙模块 hc-05 读取输出,但是每当我将代码发送到板上时,没有任何解决方案发生。 我在 (115200,1,0) 处使用 hc-05 停止位是 1 是蓝牙配置有什么问题吗? Android 应用程序 – https://play.google.com/store/apps/details?id=de.kai_morich.serial_bluetooth_terminal |
你好@zeevy 我现在不在办公室,我会在早上分享。但我可以将应用程序与 USB 连接,并且应用程序可以完美运行,但是当涉及到蓝牙时,它会产生一些问题。 我的想法是,如果它适用于 USB,那么这不是 grbl 问题。 感谢您的快速回复 |
连接蓝牙后,我们应该会在控制台选项卡中看到一些内容。
|
那么您是否尝试过所有可用的串口?请注意,如果板图正在使用某些功能,则无法使用。最安全的尝试是将 SERIAL_DEVICE 设置为 2,因为这些引脚未被任何板图 (IIRC) 分配用于其他目的。
不。 我已经用最新的代码测试了所有端口,但是用的是 FTDI 分线模块而不是蓝牙模块,因为我没有,无论如何,它们的行为应该与从控制器看到的一样。 |
看起来蓝牙 Tx 到 CNC 板 Rx 线断开或不工作。 你的启动字符串是什么?如果您有不同的启动字符串,那么应用程序可能无法运行,它应该是“Grbl 1.1f” |
首先,不要将 5V 板(Arduino Uno)连接到 3.3V 板(Due),否则您可能会损坏 Due 引脚甚至整个 MCU!我从经验中知道这是个坏主意…… 你有没有通过切换到串行 2 来尝试蓝牙模块? 像这样更改my_machine.h: //#define USB_SERIAL_CDC 1 // 使用本机 USB 端口进行通信。 并将 RX/TX 连接到这些引脚: // 串行设备 未设置兼容级别或为 0时的启动字符串: GrblHAL 1.1f [‘$’ 或 ‘$HELP’ 寻求帮助] 和 > 0(这与香草 Grbl 完全相同): Grbl 1.1f [‘$’寻求帮助] 通过蓝牙模块连接时需要注意的一个问题是控制器在连接时不会重置,因此控制器无法知道它应该发送启动字符串。USB 连接使用虚拟 RTS(或 DTR)线来重置处理器,顾名思义,启动字符串作为启动序列的一部分发送。不发送启动字符串与许多其他 ARM 控制器的行为类似,在此处讨论。因此,要在通过蓝牙连接时获取启动消息,必须发出软重置命令, 这里还有一些关于输入的信息,这可能是相关的,因为你的板子没有连接到机器上。 |
你好@zeevy @terjeio
我正在将 grbl 切换到 grbl hal 是否可以将 grbl hal 与我正在尝试使用蓝牙的这个应用程序连接,但它不起作用但是使用 ugs 我可以通过 grbl hal 连接 arduino。
https://github.com/terjeio/grblHAL