Hi Eric
Unfortunately not. Discovery using M115 is the only command
that must be used with zero knowledge about the controller.
Chicken and Egg situation.
Note, the system should run without M115. The insights
gained from M115 are only used for some extra firmware awareness
on the part of Issues
& Solutions i.e. it can then generate specific G-code
dialect and some optimized settings. Otherwise it will generate
the "most common" G-code and settings.
Once you have figured out the best settings for your custom Grbl and assuming you manage to implement the minimal feature set described here, you can send me the machine.xml and I will then add support for it to Issues & Solutions...
... while you can add some lines in the Wiki here to document and
link the source code etc. here ;-)
https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares
_Mark
--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/b6fc11f3-b52d-46f0-a44d-49792627f8ben%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/368a33ff-458e-fbb0-9ade-b141d4f71e43%40makr.zone.
Hi Eric,
So you don't want to make your custom Grbl a "good citizen" of
OpenPnP?
;-)
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEfPpXxkJ%2BB06eqd02ZhiaVna68PQwkZy7DZeFfvGav01ob1wg%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/7ededd1d-b14b-22fb-ab6e-0f8d4dbd2d96%40makr.zone.
Cool!
> you tell me the exact string I need to send to open pnp I'll incorporate the change tonight and let you know if it works :-)...
There is no real standard (as far as I know), just conventions.
There is this
https://reprap.org/wiki/M115_Keywords
but it seems nobody really adheres to it or maintains it.
These are known responses:
FIRMWARE_NAME:Smoothieware, FIRMWARE_URL:http%3A//smoothieware.org, X-SOURCE_CODE_URL:https%3A//github.com/markmaker/Smoothieware/tree/feature/best-for-pnp, FIRMWARE_VERSION:feature/best-for-pnp-c82d0b45, X-FIRMWARE_BUILD_DATE:Oct 22 2020 21:21:58, X-SYSTEM_CLOCK:120MHz, X-AXES:5, X-PAXES:5, X-GRBL_MODE:0, X-CNC:0, X-MSD:1
FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.2-RC1+1 ELECTRONICS: Duet 3 MB6HC v1.01 or later FIRMWARE_DATE: 2020-12-23
FIRMWARE_NAME:TinyG, FIRMWARE_URL:https%3A//github.com/synthetos/TinyG, FIRMWARE_VERSION:0.97, FIRMWARE_BUILD:440.21, HARDWARE_PLATFORM:1.00, HARDWARE_VERSION:8.00
Note: as the ":" is used as a delimiter, you can't use it inside values. Therefore encode those as "%3A".
I guess you get the idea. There are essential properties such as FIRMWARE_NAME and FIRMWARE_VERSION that Issues & Solutions uses. Other than that, you're pretty free. If there are important compile time defines or configuration options, it would be cool to communicate these through custom properties (tell me how to interpret). As an example Issues & Solutions interprets the X-AXES and X-PAXES properties on Smoothie as explained here, plus X-GRBL_MODE, because it affects the homing command.
Don't forget to implement M114 too ;-)
Can you tell us more about your Grbl port?
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEfPpXzddkQrxEaVKhXCp4%3DTDhi1cZZ%2BNfUVVf65y2CtmxREKA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/395cb5b7-a27f-9892-8801-c9414e3dd578%40makr.zone.
Hi Eric
> at the minimum FIRMWARE_NAME: XXXX and FIRMWARE_VERSION:
X.XXX is this correct?
Yes.
> Now that you mention M114 how does that get handled in Open PnP? Do you have a sample GET POSITION string that Open PnP expects to see so I can write a custom output string?
X:0.0000 Y:0.0000 Z:160.0000 A:0.0000
B:0.0000 C:0.0000
For a more general command/response documentation, I recommend using these two references:
https://www.reprap.org/wiki/G-code
http://linuxcnc.org/docs/2.7/html/gcode/g-code.html
+
http://linuxcnc.org/docs/2.7/html/gcode/m-code.html
Or for the most often-used controller for OpenPnP:
https://smoothieware.org/supported-g-codes
You can also set your driver to tcp and the use
"GcodeSever" as the IP address (without the quotes). This will
simulate a "common controller" inside OpenPnP. So you can play
around with that. Just switch back to serial when you want to
connect to the real Grbl controller.
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEfPpXyjzYcxdAqnRK3b7wOtQvBmUwAn_agPFuxMEuBP1%2B5Qng%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/7d421965-b347-704e-d827-88b256bb38e5%40makr.zone.
Hi Eric
This is a misunderstanding. Your efforts are for the future, for
the next guy using your custom Grbl.
Once you have everything in place you can send me the machine.xml
and I will then implement Issues & Solutions it into OpenPnP.
There's no AI in there, it can't learn how to handle a new
controller "automagically". ;-)
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEfPpXxGT29KD%3DSJ3RKfR4iuQ6tC8eTfzE9hV324n0es%3DZhv9g%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/3ad24e9c-3531-22c1-0c2c-ee6b610dbe0e%40makr.zone.