Okay some time has passed and I finally got to assemble and test my prototype for the function keys.
It uses an ATMega32U4 controller to control the RGB LEDs, encoders and keys via USB-C.
The plan is to keep the main keyboard separate from the function keys and read them via the hal_input module.
This is only a simple prototype to test functionality, as I knew I'd be making some mistakes anyway. Footprints for the keys were mirrored, used 5V instead of GND for the inputs and some other minor mistakes.
I fixed those mistakes and already ordered an improved PCB + parts.
There is still some work to do to be able to connect a handwheel, but I don't have enough IOs left on the ATMega, so I will probably need an IO expander and connect that via I²C.
I'm also working on a new GUI concept to be used with the HMI. That's also part of the reason I went away from the "gmoccapy concept" with the buttons on the side.
While gmoccapy is very reliable and thought through, it also looks a bit outdated in my opinion. I know some people like the "functional approach" and I'm not really good at design myself, but here is a little preview of my implementation:
@spumco thank you very much for your feedback!
For the Estop you're right, but I guess I have to see it live to check if it really matters, changing it afterwards is not a big problem however.
The iKey keyboards look good, but 300€ for a used one is way to expensive for me. I could probably pour some silicone shell for my 10€ keyboard, but looking inside seems like it's not really prone to water damage anyway. Just some flexible PCB and a controller which is shielded pretty good.
For the mouse, I think it's just personal preference. I have one on my current setup and I really like it. Vibration has never been an issue for me but could cause problems on some other mills and lathes, I will keep that in mind.