You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have been working on an open source Handheld CNC Router project for a couple years now. When I first started this project, I made the gCode interpreter and most of the base firmware from scratch because it seemed less complicated than modifying a pre-existing interpreter to fit my needs. Now that I want to do more complex operations, though, it is starting to make more and more sense to just start with a pre-made, reliable gCode interpreter. Given that, grblHAL seems like an awesome choice.
Anywho, I was wondering if I could get some guidance to point me in the right direction for integrating my firmware into grblHAL. These are my main questions/considerations (apologies for any oversights):
I need to collect sensor readings at a fixed frequency, optimally asynchronously, while all of the other motion control and path planning stuff is happening. I am trying to figure out where the best place to implement this sensing would be. Would it make sense to put it in somewhere in the protocol_execute_realtime function? The sensor readings are happening at around 1000Hz
Because this CNC machine is "handheld", the effective coordinate system will be constantly changing. There needs to be another layer between the planner and motor control that maps the global coordinates to the device's coordinate system. I am guessing the best way to do this would be to make another kinematics implementation with mapping and motor control functions?
Does the current SD card plugin allow for data writing as well? It would be nice to be able to log data for debugging
Other things that might be useful to know:
I'm using a Teensy 4.1
The sensors are PMW3360 optical flow mouse sensors
The current device is 2D, but I am planning on implementing grblHAL on the new 3D coreXY version that I'm currently working on
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Hello! Glad to be here.
I have been working on an open source Handheld CNC Router project for a couple years now. When I first started this project, I made the gCode interpreter and most of the base firmware from scratch because it seemed less complicated than modifying a pre-existing interpreter to fit my needs. Now that I want to do more complex operations, though, it is starting to make more and more sense to just start with a pre-made, reliable gCode interpreter. Given that, grblHAL seems like an awesome choice.
Anywho, I was wondering if I could get some guidance to point me in the right direction for integrating my firmware into grblHAL. These are my main questions/considerations (apologies for any oversights):
protocol_execute_realtime
function? The sensor readings are happening at around 1000HzOther things that might be useful to know:
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions