Miscellaneous

Quadcopter update

I’ve been on Vacation in Puerto Vallarta the last week and now I’m working my way home. I’m kicking myself for not bringing a quadcopter and filming a few aerial shots of the beach, the zipline tour, or the turtles laying eggs outside our hotel. Not that I’m unhappy – while I was gone a total of EIGHTEEN people signed up for the quadcopter build night at the VHS, eight more than we expected. Fantastic! Now we’re working on getting all the parts. Apparently shipping one box with 18 copies of parts is a LOT more than 18x shipping one kit, even if we ship it as 18 separate boxes. Weird, huh? So we’re on the phone with them trying to sort this out and make is come in on budget.

I really just want to let you know I’m not dead and I’m sorry I haven’t posted anything lately.

Please don’t feel bad that you’re not on vacation. Take a break and watch this, instead.

Uncategorized

Update: GCodeCNCDemo 6 & StewartPlatformV2 11.1

GCodeCNCDemo6 has a new sample, GCodeCNCDemo6AxisRumbaTimerInterrupt. Both programs now include timer interrupt logic so they can receive gcode commands while moving motors. Doing two jobs at once makes movement extra smooth. The source for both programs is available on github. Let me know what you think!

BTW, anyone who improves a project – even by asking a smart question – gets their name in the credits. You deserve to be recognized for your help.

Uncategorized

How to use the Arduino Timer Interrupt

https://github.com/MarginallyClever/ArduinoTimerInterrupt has what you need on github. Call a single function to set the timer interrupt frequency, in hertz. The INO file also includes a test suite in the loop() method that will set many different frequencies. Each time the counter is called it will blink a light. Replace that with whatever non-blocking code you want. (That means calling Serial.print is a bad idea.)

Now that I’ve got this timer working correctly I’m going to reuse it in many places, starting with CNC machines – I can use the timer to move the motors while the main thread is still receiving instructions and queueing them into the system. That means no “hiccup” between steps. It also means the machine can “look ahead” several steps and plan speeds better.