I’ve found that one of the hardest aspect of my job has been to explain what exactly it is that I do for 8, 9, 10 hours a day to those coming from a not so technical background. For the past five years, I’ve been an application engineer for Mixed Signal Products here at LTC, and a large portion of my work has been to help customers write firmware for our products. I often joke to my less technical friends that in the best of times I end up being a marriage counselor of sorts, sitting between the feuding hardware and software ends of the world, trying to make sure everyone talks to one another. In the worst of times I’m the divorce attorney.
The reality is, even if you build a wonderful part, say a screaming fast 18 bit DAC with 2.1us settling time, the hardware doesn’t do you much good without good firmware to pipe all that data into the microprocessor. Brilliant hardware people don’t necessarily understand why their Int8 is overflowing and brilliant software people don’t necessarily understand what the big difference between a 5k passive pullup vs. a 20k passive pull-up is.
Enter Linduino. Linduino is Linear Technology’s Arduino compatible development platform. Linduino is a package; it is a complete solution. Linduino has a board, the Linduino One. The Linduino One is a Arduino Uno compatible development board, with a twist, it comes with a LTM2884 µModule that provides full USB isolation. Even more importantly the board also comes with a 14 pin QuikEval connector that allows the Linduino One to directly connect to hundreds of LTC QuickEval compatible demo boards, already in existence.
However, the board is only part of Linduino. The real meat of Linduino is not the demo board but the library of example firmware that comes backing the One. The main goal of the Linduino program is to provide customers with example firmware to help them interact with Linear Tech’s parts. The Linduino One is merely there to provide a consistent development platform for the end customer. This library of code is intended to compile in any standard C compiler, we have taken steps to try to make the examples as portable as possible. As a matter of fact, the code is fully Arduino compatible, so if you have a spare Arduino Uno and the will to solder a couple of connections, you’re already ready to play. The goal of this entire package of goodies that we’ve built is to save time.
The idea is that a hardware engineer trying to interface a 24 bit ADC such as the LTC2449 into his circuit is a couple clicks away from loading the running, tested code into a microcontroller and talking to the part. Once the engineer is done with their testing, the example code snippets that were used can be ported over to the processor they are using for their end product. This should greatly shorten their development time.
On the flip side, a software guy wanting to add a voltage and temperature monitor such as the LTC2991 to their system now has a consistent, known working, hardware platform to test their code. They too can use the example firmware to get it up and running, allowing them to reach their end goal using simple modifications to the existing base code, instead of starting from scratch, thereby shortening their development time as well.
Whether you’re a hardware guru or you’re a software genius, or even if none of the words that preceded the comma apply to you, Linduino is meant to help. Think of Linduino as another tool, it’s the helpful step ladder to get you a couple feet higher, closer to your goal. The code library is something that Linear is doing for the first time, and something that we’re really proud of.