Arduino’s Pluggable Discovery Programs With Any Protocol

The first Arduino was serial, and over the decade and a half, this has been the default way to upload code to an Arduino board. In 2008, support for in-circuit programmers was added, and later port detection was added. The latest version of the Arduino IDE adds something new: pluggable discovery. Now any protocol is supported by the Arduino IDE.

This feature is the brainchild of [Paul Stoffregen], creator of the Teensy. If you’ve ever used a Teensy, you’ll remember the Teensyduino application used to upload code to the board. The Teensy uses HID protocol instead of serial for uploading. After working to improve the integration between the Teensy and Arduino IDE, [Paul] stated extending the DiscoveryManager. After some discussion with the Arduino developers, this feature was then added to Arduino 1.8.9, released a month or so ago.

There are some issues with Pluggable Discovery, most importantly that it doesn’t yet exist in the Arduino Command Line Interface (yeah, that exists too). If you’re looking to contribute to Open Source, that would be a nice project to pick up.

With the right JSON, and configuration, it is now theoretically possible to extend the Arduino IDE to any sort of protocol. This means (again, theoretically), it’s possible to update the firmware in your DIY MIDI synth over SysEx message, or a parallel port, maybe. Someone is going to upload to an Arduino board over PCIe, eventually.

Portable Pi Teensy Thumboard

Even on the go, there is no substitute for a physical keyboard with buttons that move and click. Sure, you could solder a bunch of tactile switches to some perfboard, but how about going all out and making something robust as [Anthony DiGirolamo] did for his Teensy Thumboard. Everything is insertion-mount so it is an approachable project for anyone who knows the dangerous end of a soldering iron, and that also makes it easy to hack on.

Each pin of the Teensy has an adjacent empty hole tied to it for easy access, and the serial data pins are exposed at the top of the board. All the holes use standard 0.1″ (2.54mm) spacing. The I/O points used by the keyboard are labeled, and the rest of them can use the space under the controller where proto-board style holes add some extra space for an IMU or whatever sensors suit your slant.

Most impressive is the shell, which is freely available on Thingiverse, where you can also find a bill of materials with links to everything you will need in case you don’t have drawers full of those tactile switches.

If this looks familiar, you have probably seen the PocketCHIP, and it is no secret that this project is an homage to that versatile pocket computer. We appreciate this kind of love for PocketCHIP, especially since they are now a limited commodity.

Teensy Gets A Prop Shield

God of microcontrollers and king of electrons [Paul Stoffregen] is famous for his Teensy microcontroller dev boards, and for good reason. If you have a project that does more than blink a few pins, but doesn’t need to run a full Linux build, any one of the Teensy dev boards are a great option. As a dev board, [Paul] has released a few ‘shields’ that add various functionality – for example the audio adapter board that is able to play CD quality audio and perform DSP and FFT operations. Now, [Paul] has launched a new shield designed for interactive light and sound effects on art installations and for the rest of the crew at Burning Man. It’s called the Prop Shield, and adds more sensors, audio amps, and blinkies than a Teensy has ever had.

The Teensy Prop shield is equipped with 10DOF motion sensors, including a FXOS8700 accelerometer/magnetometer, a FXAS21002 gyroscope, and an MPL3115 altimeter and temperature sensor. A two Watt LM48310 audio amplifier can drive 4 or 8 ohm speakers, and 8 Megabytes of Flash memory can hold all the data for audio or a very long string of APA102 individually addressable LEDs.

The combination of motion sensors, audio amplifiers, and LED drivers may seem like an odd combination, but this is a shield for very odd projects. Stage effect, wearables, and handheld props become very easy with this board, and haunted houses are about to get really cool. With the on-board Flash, this board makes for a very capable data logger, and although the altitude sensor only reads pressure up to about 40,000 feet, this could be a very handy board for high altitude balloons.

The Prop Shield is available now in [Paul]’s shop. There are two versions, one ‘wit’ the motion sensors for $19.50, and the other ‘witout’ motion sensors for $8.40. The distinction is based on the Philly Cheesesteak protocol.

For the last few weeks, [Paul] has put the prop shield in the hands of a few dozen beta testers. Their impressions are in a forum thread, and like all of [Paul]’s projects, the response has been very good.

TFT LCDs Hit Warp Speed With Teensy 3.1

[Paul Stoffregen], known as father of the Teensy, has leveraged the Teensy 3.1’s hardware to obtain some serious speed gains with SPI driven TFT LCDs. Low cost serial TFT LCDs have become commonplace these days. Many of us have used Adafruit’s TFT LCD library  to drive these displays on an Arduino. The Adafruit library gives us a simple API to work with these LCDs, and saves us from having to learn the intricacies of various driver chips.

[Paul] has turbocharged the library by using hardware available on Teensy 3.1’s 32 Freescale Kinetis K20 microcontroller. The first bump is raw speed. The Arduino’s ATmega328 can drive the SPI bus at 8MHz, while the Teensy’s Kinetis can ramp things up to 24MHz.

Speed isn’t everything though. [Paul] also used the Freescale’s 4 level FIFO to buffer transfers. By using a “Write first, then block until the FIFO isn’t full” algorithm, [Paul] ensured that new data always gets to the LCD as fast as possible.

Another huge bump was SPI chip select. The Kinetis can drive up to 5 SPI chip select pins from hardware. The ATmega328 doesn’t support chip selects. so they must be implemented with GPIO pins, which takes even more time.

The final result is rather impressive. Click past the break to see the ATmega based Arduno race against the Kinetis K20 powered Teensy 3.1.

Paul’s library is open source and available on Github.

Continue reading “TFT LCDs Hit Warp Speed With Teensy 3.1”