I haven't contributed to the list for a long while but I still read the traffic ;-)
I have been playing with GRBL and it has possibilities. Arduino hardware costs make for some interesting options and possibilities.
The recent conversations about breaking up TCNC and cross compiling got me to re-open a dormant project of mine which is a C based version of TCNC.
My starting point was the V3 Pascal source which I passed through a Pascal->C converter. Now we all know that the converted result was not usable but it gave me a starting point.
I broke the whole thing up into modules so the user interface has an API, the motion has an API and the hardware interface uses a HAL-like approach. The changes to the hardware module also allowed my to use any interface between the motion controller and the actual stepper hardware. This included a serial interface which I initially wanted but added USB, Bluetooth and Ethernet are also possible. I know there are timer issues but I added tome "tick" information so that constant velocity intentions could be honoured.
I was looking to use one of the larger PIC's to do the motion work with a PC-based GUI. I then got deflected by some Android projects and have looked at using Android for the user interface using a Bluetooth interface. The whole idea was to make a GUI with wizards where you could create basic CNC jobs using the GUI without requiring CAD.
As part of a paid-for project, I now have some ARM-based Linux boards (Ledato) to play with. Don't get me wrong, I like Arduino's but I love Linux. With some of the latest kernel patches I think the motion code will work well on an ARM platform. Since my motion code is now in C rather than Pascal I don't have to worry about Pascal -> ARM compilers so it looks like an easy (ish) experiment to pursue.
Then the real world burps in your face and, like Dave, we need to top up our pensions so all toy projects were halted until now.
Hopefully my free time will increase soon so I propose to re-start the project. In a way it is no longer a TCNC project but it's roots are firmly there so it is probably still relevant. And, judging by the recent message traffic, a few of us are playing with other ideas too.
Unlike TCNC I might look at open-sourcing it which may create it's own momentum. I fully understand why TCNC might not be open-sourced but I can also see that, as time progresses, TCNC will slowly die anyway as other platforms become available.
Although I have never tried it, FreePascal does compile to ARM as well as x86 so those with aspirations (and source access) in that direction do have an option to try and create TCNC on ARM. I'm too far down the C route now to change course but I would consider it it I were not. My other regret is not starting with TCNC V4 as back-porting the changes is not something to even contemplate.
David in North Wales, who says "if in doubt, measure everything"