Carvera-Community / Carvera_Controller

Community developed version of the Carvera Controller
GNU General Public License v2.0
3 stars 1 forks source link

MDI console consumes * characters, preventing simple math functions #34

Closed SergeBakharev closed 6 days ago

SergeBakharev commented 2 weeks ago

From Fae's commit message:

The console consumes * characters, preventing simple math functions in the community firmware.

The * character is used for diagnostic queries between the machine and the controller. It is not used by smoothieware and is a makera addition.

When a * is sent through the console to the machine, the machine immediately sends the diagnostic string back and removes it from the serial queue. This means it never reaches the gcode interpreter.

By consuming characters, the firmware prevents us from implementing multiplication as 11 returns 2 in gcode, but 11 in the console. (in our dev branch),

If the character were changed to '&' instead, there would be no conflicts.

SergeBakharev commented 1 week ago

Thinking about this, I think we can just replace the diag command for individual status commands eg get [pos|wcs|state|status|fk|ik] and switch name [value] This way it works with the stock and community firmware.

This unblocks us from #54 for this issue

SergeBakharev commented 1 week ago

get status doesn't work on the stock makera 0.9.8 firmware. It just drops the tcp connection, and get state doesn't have enough coverage to replace the diagnostic command *. But the diagnose command works as a good replacement that is compatible with both maker and community firmware