Sienci-Labs / gsender

Connect to and control Grbl-based CNCs with ease
https://sienci.com/gsender/
Other
182 stars 41 forks source link

gsender 1.3.10 EDGE misidentifies certain COM ports as grblHAL #452

Closed kbulgrien closed 7 months ago

kbulgrien commented 8 months ago

I have an HP MP9 G2 Retail System loaded with Windows 10 Pro 22H2.

DeviceManager

There is no device that I have connected to a serial port on the system. COM3 appears to be some sort of internal device. In fact, there is no physical serial port available on the outside of the chassis.

If one starts gSender 1.3.10 EDGE in this configuration, upon startup, when one pulls down "Connect to Machine", there are listed:

2grblHALDevices

Clicking (->) reveals additional details:

2grblHALDevicesDetail

If one "connects" to COM3, the UI says "Connected COM3/grblHAL" at the top of the screen, but in the visualizer, is shows "Disconnected".

ConnectedDisconnected

This is seemingly somewhat undesirable. I can provide additional information about this system or run additional tests as directed.

kglovern commented 7 months ago

This is working as expected.

There is no way to determine which com ports are actually controllers without connecting to them in turn and checking.

Our solution, and what you're seeing, is filtering based on recognized device product and vendor IDs since the # of subsets of available Arduinos/STM microcontrollers is small. So devices we know could be grbl devices appear as recognized, and anything else (such as your internal device) is show as unrecognized.

Unrecognized devices has to exist because theoretically people could be connecting to a GRBL/hal-adjacent machine that we don't currently have in the filter - and if they didn't have a way to see it if unrecognized they'd never actually be able to connect to it.

The connection widget shows connected as to a serial port (because it is, serial connection isn't dependent on what the device is) while the machine status shows disconnect (because there is not a valid firmware on whatever you're connected to).

You'll see in a number of senders just a list of all available com ports and it's up to the user to connect to the correct device. It's the same thing here except we've taking some steps to highlight the devices that we know could be GRBL/hal devices which usually makes the choice obvious (not too many people have multiple arduinos plugged in)

kbulgrien commented 7 months ago

Ok, that sounds reasonable, except that I still question the grblHAL indication. To me, it makes it sound as if it WAS connected to and WAS identified as grblHAL. That is how this issue came up. I connected to it to see if it was a mirror of my COM4, because it made me think a second device was actually created for the controller. OTOH, I guess one might see it as "Go ahead and use COM3 as a grblHAL device even though it is unknown", but then since there is no other "choice" is it really even necessary to indicate grblHAL?

kglovern commented 7 months ago

grbl/grblHAL indicates which controller type to connect using - hence the "Use" part. It's just an indication of which controller type to connect to which port. You'll notice is swaps based on the selected firmware flavour toggle consistently across both types.