Gas station without pumps

2015 August 10

PteroDAQ boards

Filed under: Circuits course,Data acquisition — gasstationwithoutpumps @ 17:50
Tags: , , , , ,

I took a photograph this afternoon of three of the boards that can be used with the PteroDAQ data acquisition system:

On the left is the Arduino Leonardo, the slowest and most expensive of the boards here.  In the middle is the KL25Z, which I've been using in my class for a couple of years—it is the cheapest and most featureful of the boards.  On the right is the Teensy 3.1 (without headers yet), which is  the fastest and smallest of the supported boards.

On the left is the Arduino Leonardo, the slowest and most expensive of the boards here. In the middle is the KL25Z, which I’ve been using in my class for a couple of years—it is the cheapest and most featureful of the boards. On the right is the Teensy 3.1 (without headers yet), which is the fastest and smallest of the supported boards.

I’m considering switching to the Teensy 3.1 for the class, despite its higher price than the KL25Z board, because adding male headers to the bottom of the board makes it possible to plug the Teensy 3.1 into a bread board, which makes for more secure wiring than running separate wires to the KL25Z board.  We don’t really need the 64 pins of the KL25Z board, we’re not mounting Arduino shields, and we’re not using the accelerometer or the touch sensor, so the main question is whether it is better to have the data-acquisition board be standalone or be inserted into a bread board. The RGB light on the KL25Z board is a nice feature for providing feedback that is missing from the other boards (which only have a single-color LED).

I’ve also thought about usefulness to the students after the course, though few of the students will go on to do anything other than PteroDAQ with the boards.  The Arduino IDE is much easier to deal with for beginners than any of the development environments for the KL25Z, and Teensyduino is pretty easy to install on top of the Arduino environment.  So if students are going to go on to do hobbyist-level programming on the boards, then an Arduino board or the Teensy 3.1 might be a better choice. Given how much more powerful the Teensy 3.1 is than the old ATMega-based Arduinos, I see no reason to recommend buying Arduino boards (though clones from China have gotten down to about $3).

Erich Styger, in a comment, mentioned that he is frustrated by the Teensy’s lack of a SWD (serial wire debug) connector, which he is used to using for debugging. Since I’m from an older generation of programmers, I don’t miss it—I’ve not used the SWD connector on the KL25Z boards (though my son has, to use the OpenSDA chip as a programmer).  For me, it is a luxury to have a serial port for getting print messages from the board—I started microprocessor programming in the days when having one or two LEDs was about all the information you got back from the board. Having debuggers like GDB was a luxury available on computers that cost thousands of dollars.

Of course, the ARM processors on the Teensy 3.1 and the FRDM KL25Z boards are very much more complicated than the old 8080A, Z80, and 6800 8-bit processors I started with, and people are writing much larger programs for them, so I can see the advantage of having a debugger. But there is a large startup cost to learning to use a debugger and setting up the complicated software development tools they expect you to use, so I’m happy recommending the very limited, but easy-to-use Arduino interface for bioengineering students who want to go a bit further.

I’m curious what my readers think about the choice between a FRDM KL25Z board and a Teensy 3.1 board for the Applied Electronics class, given that most of the students will only use the boards for that class.  What tradeoffs might I have missed?  If you were in the class, which board would you rather work with?


  1. I bought a $17 teensy 3.1 which narrows the price gap vs. the KL25Z.

    Comment by Michael K Johnson — 2015 August 10 @ 18:26 | Reply

    • My son got one of those also—they are the pretty OSH Park purple, rather than the plain green of the standard Teensy 3.1 boards. I ended up getting mine through Sparkfun, as an add-on to an order I was making anyway, but if I were getting them for the class, I’d encourage the purchasing people to get them from PJRC,, to maximize revenue for the developer.

      The cheaper headers for the Teensy 3.1 also narrows the gap, especially if one put 14-pin male headers on the two long sides and just a 1×3 and a 1×5 female header for the extra through-hole connections. (I regard the surface-mount connections on the bottom of the board as essentially inaccessible.)

      Comment by gasstationwithoutpumps — 2015 August 10 @ 18:35 | Reply

      • Ah, since OSH Park said PJRC assembles their special units, I had been assuming that it was a way of using up otherwise blank board space on the daily board runs at OSH Park, and that Paul was getting roughly the same cut off the slightly less expensive board…

        Comment by Michael K Johnson — 2015 August 10 @ 19:38 | Reply

        • I know that OSH Park and PJRC have some deals with each other, and it is possible that PJRC gets as much from the OSH Park boards as from the ones he has made elsewhere, but I wouldn’t bet on it.

          Comment by gasstationwithoutpumps — 2015 August 10 @ 20:16 | Reply

  2. In my classes, students can use both the FRDM and the Teensy board, they are used as well in other student/project work. I do not have exact numbers, but my estimate is that more than 90% of the students use the Freescale FRDM board: it has more features, a built-in debugger (K20 with OpenSDA) plus they can use it to debug other boards if necessarey. But the biggest plus point to them according to their feedback is the price point: the FRDM is about half of the price of the Teensy board. I see the Teensy used in project where size matters (e.g. for wearable projects, or where the board has to fit into a tiny space), and here students add as well SWD debugging capabilities. I have to say that my students are EE and CS students, and they are used to to use ‘professional’ tools, and they have to solve hard problems with their software/hardware, so a SWD/JTAG debugger is a necessity. Like using an oscilloscope or logic analyzer for any inspection of signals: using printf() and LED style debugging if of course ok, but it is like using a voltmeter instead of an oscilloscope: it helps, and if this is all what you have then you have to use what you have, but definitely an oscilloscope/logic analyzer makes life easier. The other aspects of using SWD/JTAG debugging tools is: I want to learn them the tools they have to use in their jobs. At least for EE and CS students this is what they need and will need. That might be different for Bio-Engineers, so using something differently is probably ok too.

    Comment by Erich Styger — 2015 August 10 @ 21:33 | Reply

    • The Applied Electronics course has no programming or electronics prerequisites, and the students won’t be programming the boards in the course. They’ll be running the PteroDAQ software and one other program that I’ll provide (a frequency detector for the relaxation oscillator lab). I’m hoping to convince a few of them to choose bioelectronics (where they will take courses together with EE and computer engineering students, though probably not to the level where they are doing SWD debugging). I’m also trying to convince a few of the others to take up electronics as a hobby (did you see the Jameco blog post about the ridiculously advanced age—56—of the average electronics hobbyist?), and it is those students I’m thinking of when considering what board to get. Not many beginning hobbyists will want to invest the time that it takes to get up to speed on the systems you use. That’s why the Teensyduino approach is an attractive one—very much smaller start-up effort, in exchange for a somewhat lower ceiling on what can be achieved.

      For most of the students, this course will be the only electronics course they ever take, and the only programming they’ll do is in Java and Python, not for embedded systems. For them, I want the PteroDAQ system to be as easy to setup and use as I can reasonably make it, so that it becomes an easy-to-use tool for them. Setting up a Teensy 3.1 board is a lot less trouble than setting up a FRDM KL25Z board, especially if you don’t have an ancient Windows 7 machine sitting around.

      I agree that good tools are worth some expense and some trouble to learn, but my approach for this class is to minimize the cost of the tools and to spend time learning to design, rather than learning how to operate complicated tools (I find the digital oscilloscopes in the lab too confusing for most of the students—there is a lot of ritual magic going on as they set things up without really knowing what all the menus and knobs mean).

      In the rewrite of the book, I’m trying to reduce the need for an oscilloscope (using the PteroDAQ system instead) so that students and hobbyists can learn the material without needing expensive lab equipment. (Even a USB oscilloscope is over $100.) I’ve been experimenting with using super-cheap voltmeters, to see how cheap we can go on equipment, to make the book accessible to high-school students who have to buy all the equipment themselves out of part-time, minimum-wage jobs. So far, I’ve found a $10 multi-meter from China that can work with PteroDAQ and a $50 function generator to do just about everything needed in the way of test equipment for the course. I’d like to find a way to reduce the cost of the function generator also, but so far everything I’ve come up with introduces more problems than solutions.

      Comment by gasstationwithoutpumps — 2015 August 10 @ 22:00 | Reply

  3. … and talking about boards: I see that the FRDM-KL43Z ( is getting more popular. I might replace the FRDM-KL25Z with the FRDM-KL43Z in future course work.

    Comment by Erich Styger — 2015 August 10 @ 21:37 | Reply

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: