Monday, July 11, 2016

Arduino-like millisecond (ms) and microsecond (us)-resolution timestamps in Python: millis(), micros(), delay(), & delayMicroseconds()

Subscribe by Email!
By Gabriel Staples
Written: 11 July 2016
Last Updated: 22 Oct 2016
History (newest on top):
-posted updated code (v0.2.1) with Linux functions too (not just Windows) - 22 Oct. 2016

Other Articles:
Below, I show some code for basic Python millisecond (ms) and microsecond (us)-resolution timing functions. I made these to resemble Arduino functions I am already familiar with. Since these functions use the Windows API's QueryPerformanceCounter and QueryPerformanceFrequency functions, as-written, they work for Python in Windows only. If you decide to adapt them to Linux, please share how you did it in the comments section. Update (19 Oct 2016): I have updated these functions to work with Python in Linux now too! See below.

Functions and code samples. Functions include:

***Subscribe by Email!***

Saturday, July 2, 2016

About Me

Subscribe by Email!
By Gabriel Staples
Electric RC Aircraft Guy, LLC
Written: 2 July 2016
Last Updated: 21 Jan. 2018
-20180121 - replaced 2016 resume with a 2017 version (still needs a little updating but is much more recent); also changed "Consulting Work" link to say "Custom Embedded Systems Work" instead, since that's a more accurate description
-20171014 - corrected "fluent in French" to "conversational in French," and added some detail about it
-20170429 - Added/Major updates to "Today" section
-20170318 - Updated links; added Consulting Work link, etc
-20170110 - Intro updated
-20160806 - More comments and notes added about my thesis Version 1; updated resume uploaded.

Other Links:

A Few Other Articles:
Table of Contents:

  • Introduction
  • Early Days
  • Today
  • Education
    • Master's thesis downloads
  • Resume
  • LinkedIn


My name is Gabriel Staples. I strive to make a positive difference in this world by means of robotics, programming, PCB design, small Unmanned Aerial Systems (SUAS) and Vehicles (UAVs), microcontrollers and embedded systems, flight controllers, sensors, electronics, mechatronics, and autonomous systems in general. I seek to be both a thinker and a doer on a daily basis, including at work and in my personal electronics and SUAS-related interests and endeavors at home.

I'm a passionate and enthusiastic engineer who loves to make things work and solve real-world problems. Some may wonder about who I am, my background and experience, etc, so here it is. I'm the owner of and engineer behind Electric RC Aircraft Guy, LLC. At the moment I'm just a one-man shop. I build the website, write the articles, do the projects, write the code, design the PCBs, answer the emails, do the marketing, etc--everything myself.

If you'd like me to come work for you as an engineer, contact me, as I'm separating from the US Air Force this fall (approx. Sept. 2017), after achieving both a B.S. and M.S. degree in engineering and serving 7 years as an officer-engineer. The military provided me a great education and foundation for success, and now I am thrilled to be separating in pursuit of my engineering dreams. I thrive on using my engineering and other skills I've built up, and I fully intend to utilize all of my design engineering skills at work too instead of just at home. I'm also fluent in Spanish and conversational in French (I took 6 months French language training for 4~6 hrs/day, originally intending to move to France, in 2015) and love meeting new peoples and cultures and developing and utilizing my language skills, in addition to my engineering skills. I hope to do engineering oversees when given the opportunity too--perhaps even in Toulouse, France, Munich, Germany, or Switzerland, for instance. I'd really like to move overseas and solidify my French someday. 

A link to download my resume is below. You can find my email by clicking the "Contact Me" tab at the top of this website. To see some of my passion and goals, read my short blurb titled "The Goal of a Lifetime." You should also read how important it is to me to "Aim High."

Early Days:

***Subscribe by Email!***