Tag Archives: arduino

Teaching a Robotics Class

I spend my Saturdays volunteering at a public library makerspace, the South San Francisco Public Library. I help people operate a few 3D printers, a CNC mill, vinyl cutter, etc. While preparing for my annual RoboGames entry, I thought it’d be cool to teach the library’s patrons about robotics.

I designed a robot kit, partly 3D printed, with electronics that has to be soldered, and running with an Arduino Nano. The three classes are for 3D CAD modelling, soldering, and programming.

The robots are designed to be cheap enough for the library to actually give away. All of my courseware is open source, hosted on GitHub. A lot of the tools and parts were donated by people I know in my professional circles.

Here’s a link to the class content: click here

This blog post is about what I observed, what I did right, what I did wrong.

Continue reading

Car Heads Up Display Using LED Strip

This is the next step in my mission to make my car function 7 years newer and feel like a jet cockpit.

(click here if the above video isn’t loading)

I wanted a HUD, Heads Up Display to my car. The main purpose is to let me keep my eyes on the road and still be aware of my speed without looking down, hence “heads up”. This idea has been used in fighter jets for decades now.

I do not like any of the other ones on the market today, they all try to do “too much”. I wanted something more simple and elegant.

My design is a simple RGB capable individually controllable LED strip that reflect off my windshield.

I used the “DotStar” from Adafruit Industries, which uses APA102 LEDs. The brain is a Teensy 3.2, which is connected to my car’s CAN bus via a OBD-II connector (the diagnostic port that you can read the engine computer from).

It is programmed to have three different modes: voltmeter, tachometer, and speedometer. The mode switching is “context aware”: When the car is moving, the mode changes to speedometer. If I rev the engine Continue reading

SD Card Bootloader by Backdoor Code Injection

For various reasons, I decided to try writing a SD card bootloader for my Ultimaker2.

The project is open source and on my GitHub here.

My goal was to install this new bootloader without having physical access to the circuitry. Thus I cannot use a ISP tool and must be done through the bootloader that is already present on the Ultimaker2. The only way to do this is to partition off a portion of application memory region for a secondary bootloader that executes after the original bootloader. But the ATmega2560 has a restriction that prevents anything in the application memory region from modifying the flash memory at all. Overcoming this restriction is what this hack is all about, continue reading if you are interested in learning more.

Continue reading

Arduino library to bring USB serial to XMEGA

https://github.com/frank26080115/LufaXmegaSerial/

I’m working on a XMEGA-A3BU Xplained board, along with Arduino IDE. (normally I’d stay away from anything related to Arduino but this time I’m forced). I connecting a FT232 for debugging is a pain so I modified LUFA and turned it into an Arduino library, so I can use print and println for debugging.