Maslow Home Maslow Community Garden

Ground Control QoL additions?


#1

Hey,

I wanted to propose some GC quality of life additions, just off the top of my head in no particular order (there might be similar requests in the repo already, if so, excuse me)

  1. Text alert, warning, comments, errors via full screen ‘flash’ + large popup window. something that can’t be missed, big clear messages, but still easily dismissed.

1b) Full Screen flash/pulse (still easily disabled) if position/intended position falls behind some amount.

  1. More Macros! at least 8, with larger buttons to write a phrase (ex: “Sled to Stowed Position”, “Sled to Tool Change”, “to Work Offset (position#)”) (maybe a macro popup window? maybe some ‘special-danger’ macros have an exclusive ability to ask the sled to move beyond the workspace?)

  2. MacOS: has anyone else been able to get GC to remember folder locations? or add shortcuts/favorites? I cannot, and have to dive in from my homedir every. single. time.

  3. Nice PDF Keyboard Commands Cheat Sheet, suitable for framing.

cheers,


#2

I find that GC remembers the location of the .nc file that you have open, and starts from that folder. If it can’t find that file, then it starts from the home folder. The Kivy file chooser is suboptimal, though :smile:


#3

:slight_smile: I second this (8 is probably more than I need, but I am sure I could figure out how to fill them)


#4

What are the keyboard commands? I was told there were none!

I’d love the numeric keyboard to have the same action as the mouseable arrow buttons


#5

What if we had keyboard driven macros? That way the UI wouldn’t get too cluttered with buttons and we could have 8 macros easily available.

These are the keyboard commands currently supported:

They are under Ground Control Settings.

My todo list is lengthy right now so I might not get to this right away, but I fully support it!


#6

One issue is that the keypad numbers get used for numeric inpuyt as well, see here. Haven’t come up eith a way to tell which way they should respond in different parts of the program, yet.


#7

I still see the Macro window most easily as a pop-up window, with labels/names large enough to display at least 24 chars or so, most of our menus are similar, and we need some interface to input and display at least a few lines (~6-10?) of G-Code.

for Keyboard Shortcuts, the Macro Menu above should be mapped to a Fn key and then accept numerical input (1-8) as to select the macro, Enter to execute, and esc to close…

It would free up the 2 existing macro buttons too, (into a single small button because it no longer has to display anything but ‘Macro’ or ‘M’)


#8

you aren’t responding to keypad numbers in different ways, respond to numbers
one way and arrow keys the other way and let the user hit numlock as needed
(assuming they don’t have a keyboard with separate arrow keys)


#9

Also need to work with keyboards that lack ‘numlock’…


#10

I disagree, if a keyboard doesn’t have arrow keys, we should not try to outsmart
the computer by changing numbers to arrows. If it lacks numlock, it probably
doesn’t have a separate number pad


#11

Many keyboards have the cardinal arrows but lack the diagonals.

Numeric keypads with numlock are not uncommon in the Apple realm. The issue isn’t assigning a key or combination to select the mode, but a way to indicate the current mode. Some low-end keyboards that do have numlock don’t provide an LED to indicate mode; they are integrated same boat.


#12

Many keyboards have the cardinal arrows but lack the diagonals.

I actually don’t have any keyboardsthat have diagonals, they all havee
home/end/pgup/pgdn for 7/1/9/3

Numeric keypads with numlock are not uncommon in the Apple realm. The issue isn’t assigning a key or combination to select the mode, but a way to indicate the current mode. Some low-end keyboards that do have numlock don’t provide an LED to indicate mode; they are integrated same boat.

my point is that every computer has arrow keys, every computer has numbers
(although sometimes you really have to fight to get at them, like on mobile
devices)

arrow keys are different key codes than numbers, even when they share the same
physical key.

don’t try to outsmart the keyboard and the user, have functionality that depends
on arrows, and have functionality that depends on numbers. Don’t worry about
making it context sensitive to do different things in different parts of the
program when they press the same key, look for arrows and numbers. Leave it up
to the user to select appropriate hardware. If it doesn’t give them an
indication of if hitting a button will generate an arrow or a number, that’s up
to them. Don’t cripple everyone else with unexpected behavior to try and
accomodate broken-by-design hardware.

No other software trys to out-guess the hardware. Just don’t go there.


#13

Did anything ever happen with increasing the number of available Macro slots?


#14

Not that i know, a terminal ‘slot’ to type commands in (or copy paste) would delete the need for 1000 macros.


#15

Thanks. I was just about to implement aux 1 and aux 4 for automated zeroing and spindle power control. I have a macro set up for zeroing, but would also like one for each of M03 and M05. Keyboard shortcuts would be fine with me, but I think you are right that a terminal for direct input would be very valuable.

I suppose for now M05 is most important for me (in case I need to stop the spindle mid program for some reason)


#16

For linux i found a crude but simple method to send commands to the serial port with a separate terminal:
echo ‘$$’ > /dev/ttyACM0 (lists all settings only in the log.txt)
echo ‘B05’ > /dev/ttyACM0 (lists FW/GC version in GC and log.txt)

and g-code works as well
echo ‘G91 G0 X-3.94 G90’ > /dev/ttyACM0 (“the left arrow” moves the sled 3.94" to the left)

Careful, as I really don’t know what i’m doing, however, i could not be fast enough sending commands in a row to notice any disruption with the GC connection.


#17

According to the firmware notes here there is a limit to the number of characters and number of lines you can send at once.


#18

I am fully in support of an addition to make this possible if anyone wants to take it on!