Tuesday, January 10, 2017

Consulting Work


Subscribe by Email! (via FeedBurner)
Page Written: 10 Jan 2017
Last Updated: 10 Jan 2017

Gabriel Staples
Electric RC Aircraft Guy, LLC

  • Click here if you're looking for my Contact Me page.
  • Click here if you're looking for my About Me page.
  • Read here to be inspired:
  • If you're looking to hire me into your company full-time, see my introduction, resume, and LinkedIn profile on my About Me page, and contact me.

Otherwise, if you're looking for some private consulting and custom engineering work, you've come to the right place.

Bluetooth-enabled touch lamp
I am a custom electronics and embedded systems private consultant and developer. I design and build custom digital circuits, write code, and use micro-controllers to meet custom electronics needs.

If you are using an Arduino for your project, and want your engineers to be able to do the same, I am a perfect fit for the job, as this is my go-to tool of choice.

Projects I have completed are listed below.

If you’d like to hire me for private consulting services for custom electronics projects, my going rate is $150/hr (keep reading--more on this below in bold italics). If I commit to your project, I guarantee 10 hrs per week dedicated to your project, though I may be able to do more, time permitting. Estimate the size of your project in hours, and divide by 10 in order to come up with the number of weeks it might take me to complete it. Ex: 200 hr project / 10 = 20 weeks. This is important, as it will help you decide whether or not I am the right choice for you. Allow significant time overhead, as custom projects are very difficult to estimate. Note that I reserve the discretion to refuse some projects in order to dedicate the proper amount of time and attention to the projects I do take on.

Since charging by the hour, however, is disadvantageous to both you and I, I don’t actually charge by the hour. Rather, I give you a fixed-price or monthly-retainer fee proposal. If we agree on the proposal, I take on the project for the agreed-upon price. Charging by the hour negatively incentivizes developers to be slow, and it negatively incentivizes you to nit pick my time and constantly think about money each time we discuss your project. I'd rather have you thinking about your needs and how I can best make you successful instead of you worrying about making an investment decision every time my assistance is needed.

Before I take on any project, please carefully consider exactly what it is you need to accomplish, and how I can help. Why me? Why this? Why now? Before making any commitments, I first like to have an online Google Hangouts video chat to discuss, face to face, what it is you need and what I can do to fulfill that need. We may discover you do not properly understand the problem, I am not the right person for the job, or there is an alternate and better solution that doesn’t require me—ex: perhaps a commercially-available solution already exists. My goal is to make you, the customer, happy, by mutually doing what is best for each of us. 

After I begin a project I will work to complete it to meet your needs. My work is guaranteed. If at any point in our first 30 days you decide that I am not meeting the standards described in my proposal, just request a refund and I'll send your money back, no hassle, and we can move on to bigger and better things.

Hire me:

Begin the conversation by sending an email to me at the email in the image below, with the phrase "Consulting Work--name of project" in the subject line. Ex: "Consulting work--custom wireless control of camera sled." We can then begin the discussion. After the initial emails, as previously stated, I like to begin a more thorough discussion via a video chat on Google Hangouts. Phone numbers of course can be exchanged with those I work with. Here's my email:

Why me?
I have experience in a variety of disciplines. I am a keen engineer and an avid learner, always seeking to expand my horizons and take on the next challenge. Some of my past, present, and future experience is listed below.

Previous Custom Projects:
  • Quadcopter MATLAB flight controller with "lead point" vector field navigation algorithm and MATLAB GUI (video)
  • MATLAB GUI and radio control (RC) transmitter PPM output signal interpreter and plotter (video)
  • Piezo-electric high precision (0.01mm), closed-loop linear servo driver, including quadrature encoder decoding, with command-line interface (videos x 3)
  • Sensorless brushless RC motor rotations per minute (RPM) decoder/datalogger and command-line motor throttle control interface for laboratory bench top testing (photos & unedited demo videos)
  • Barometric pressure sensor altimeter data-logger
  • CineMoves Hollywood action camera wireless control board interface to 2.4GHz RC Rx (bench-top demo video from CineMoves); among other things, this board has been used to help film the red carpet portion of the 2014 Emmy Awards, as well as scenes from Mission Impossible 5
  • High speed PC to RC Radio C++ software API serial interface and microcontroller firmware for off-board unmanned vehicle control-algorithm development and testing
  • 60W speaker driver/amplifier and custom siren sound generation (info & videos)

Current Projects In-Work:
  • Burchfield positioner-based rocket (space launch vehicle) tracking and filming system
  • "Computa Pranksta" USB prank device (to be sold on Amazon.com)
  • Bluetooth-enabled touch lamp circuit board educational and solder kit (including the PCB design) (prototype photos)
  • Economical multi-thermocouple driver/sensor board for inexpensive home, school, university, and laboratory use--will easily allow live thermocouple temperature measurements and datalogging

Personal Projects Temporarily On Hold (due to time constraints):
  • Ultra efficient high precision ultrasonic ping sensor library for Arduino
  • Altitude hold and flip mode for Buzz the BattleBot
  • 16-Ch RC Rx reader/multiplexer library for Arduino
  • Arduino robot car (miscellaneous custom algorithms)
  • High power (100A+ at 12~24V+) power meter and car battery saver
  • Atlas V wireless mesh network Mobile Launch Platform (MLP) distance telemetry parking aid (utilizing Arduino, Xbee radios, & Raspberry Pi)
  • Analog IR remote control (incl PCB design) and library for Arduino
  • Redesign of my MOSFET gate driver for my 60W siren in order to actively drive the gate voltage high and low--to minimize time in the ohmic region of the MOSFET, thereby reducing heating--instead of driving high and pulling low
Note that if you want my services you need to convince me to put your project at the top of my list. Please contact me and let's discuss your needs.


***Subscribe by Email! (via FeedBurner)***

Monday, November 21, 2016

MAX5481 10-bit Digital Potentiometer Arduino Code


Subscribe by Email! (via FeedBurner)
By Gabriel Staples
Written: 21 Nov 2016
Last Updated: 21 Nov 2016

Here is a sample code I wrote a couple years ago to command and control a MAX5481 digital potentiometer using SPI commands, including storing commands in the chip's on-board EEPROM (to save the last value written), or not.

In this example you have to type commands into the Arduino Serial Monitor to set the digital potentiometer. I then interpret your serial command you typed, then I send it to the MAX5481 via its defined serial SPI API.

The circuit and hookup is described in full in my comments at the top of my code. If you have any questions please post a comment below and I'll be sure to try and get back to you.


***Subscribe by Email! (via FeedBurner)***

Tuesday, November 8, 2016

Eagle PCB CAD - How to copy a part from one schematic to another


Subscribe by Email! (via FeedBurner)
Gabriel Staples
8 Nov 2016

Learning EagleCAD? Here's how to copy a part from one schematic or board layout to another.
  1. Open up an Eagle Control Panel, and the board and schematic you are working on.
  2. Open up a *second* Eagle Control Panel, and the board and schematic you want to copy from.
  3. Use the group tool to make a selection of a part to copy.
  4. Click the copy tool, then ctrl + right click to copy the *grouped* selection to the clipboard. Press Esc now to not paste it anywhere in this project. 
    1. Note that you *must* use the group tool followed by ctrl + right click even if only copying a single object, since that's the only way to get it to your PC's clipboard.
  5. Go back to the schematic you'd like to paste into, and click the "paste" tool. Left-click anywhere to paste what's in the clipboard. 


Helpful References:
...among many others.

***Subscribe by Email! (via FeedBurner)***

Monday, October 24, 2016

Learning More About Power Electronics


Subscribe by Email! (via FeedBurner)
By Gabriel Staples
Written: 24 Oct. 2016
Last Updated: 24 Oct. 2016

Other Articles:
So, recently I was introduced to www.PowerElectronicsNews.com by SixtySecondTech, a website which aims to become somewhat of a "website directory that lists quality websites they find valuable and resourceful for the Technology community" (source). As SixtySecondTech grows their database, I hope they can become a good resource to the electronics, maker, Arduino, Raspberry Pi, and other communities.

PowerElectronicsNews is a brand new company who offers "electrical engineering news focused on power and power solutions," including highlighting "solutions and products featuring the latest innovations" in power design.  As I continue to grow my skills I hope to be able to apply some of the background knowledge I glean from their articles, so I can use it in real, hands-on projects I can then share and apply instead of just reading a high-level description of it. A few interesting-looking articles of theirs include the following. I have marked with asterisks the articles that particularly interest me. The more asterisks, the better.

***Subscribe by Email! (via FeedBurner)***

Friday, October 21, 2016

Adding & Customizing Nicely-formatted Blocks of Source Code on Your Website using SyntaxHighlighter


Subscribe by Email! (via FeedBurner)
By Gabriel Staples
Written: 21 Oct. 2016
Last Updated: 21 Oct. 2016

Related Articles:
Other Articles:
For quite some time now I've needed a nice, clean way to post snippets of source code, such as C++, Python, or HTML, on my website here. Finally I decided to figure it out. Here's how it's done. Note that my website is hosted on Google Blogger, but your website on Wordpress or anywhere else should also work just fine with this "SyntaxHighlighter" tool by Alex Gorbatchev that I'm about to present.

***Subscribe by Email! (via FeedBurner)***