A Look at My Portable Embedded Toolkit

Embedded systems developers rely on a variety of tools: debug adapters, power supplies, multimeters, oscilloscopes, logic analyzers, spectrum analyzers, and more.

Much of the equipment we use lives in our offices or labs, since it’s too bulky to move around. But for engineers who travel frequently, it’s quite helpful to have a portable toolkit. You never know when you’ll be stuck in an emergency debugging situation, and having familiar tools on hand is a blessing.

If you’re an engineer who travels frequently, or if you’re just simply looking for useful tools, I hope you can find inspiration from my kit.

My Portable Embedded Toolkit

I’ve slowly built my portable embedded toolkit over the past ten years, and I’ve managed to pack a lot of debugging power into a small load. My kit is always on hand when I’m visiting a client, and its travelled with me to multiple manufacturing builds in China.

My kit consists of the following:

  • Digital multimeter
  • Aardvark I2C/SPI Host Adapter
  • Saleae Logic Analyzer
  • TIAO USB Multi-Protocol Adapter
  • USB Hub
  • A grab bag of wires and clamps
  • Spare jumpers

Most of the kit packs down into a first-edition Saleae Logic 8 case, which was made with a much sturdier shell. I carry the DMM and Aardvark adapter separately in my bag.

Let’s take a deeper look at each piece of my kit and the roles they serve.

 The major pieces of my embedded toolkit, packed for transport.
The major pieces of my embedded toolkit, packed for transport.
 The unpacked contents of my Saleae case.
The unpacked contents of my Saleae case.

DIGITAL MULTIMETER

Digital multimeters (DMMs) are an essential tool for anyone working with electronics. I regularly need to measure voltage/current/resistance/capacitance and check continuity between signals.

My portable DMM of choice is the Mastech MS8288, which costs around 30 USD. I purchased my multimeter ten years ago and have yet to find a single cause for complaint.

For low-power tasks, the Mastech MS8288 performs admirably and produces accurate measurements. Once voltages and currents start to rise, you’ll notice inaccuracy (I’ve seen 3% error while measuring a 48V power supply). With that in mind, this isn’t a DMM you’d use for tuning your power settings. For tasks which require precise measurements, you’ll need to turn to a higher-precision DMM.

When selecting your own multimeter, make sure it has the following features:

  • Measurement Capabilities:

    • DC voltage

    • AC voltage

    • Current

    • Resistance

    • Capacitance

  • Continuity check with audible beep

  • Selectable measurement range

  • Kickstand

  • Screen backlight

 Everybody needs a multimeter, but you don’t need the most expensive one available.
Everybody needs a multimeter, but you don’t need the most expensive one available.

Aardvark I2C/SPI Host Adapter

The Aardvark I2C/SPI Host Adapter is the newest addition to my toolkit. The Aardvark has been tremendously helpful in tracking down I2C/SPI problems and validating I2C/SPI interfaces. The adapter can operate as both a master and slave, and you can script sequences of commands to send to the device.

Total Phase also supplies libraries that you can use to interact with the adapter programatically. I’ve written I2C and SPI drivers for the Aardvark adapter, which enables me to write device drivers from the comfort of my host machine. Once the drivers are working, I can quickly port them to the target platform.

 The newest addition to the toolkit. Useful for debugging I2C/SPI problems and for writing drivers on your host machine.
The newest addition to the toolkit. Useful for debugging I2C/SPI problems and for writing drivers on your host machine.

Saleae Logic Analyzer

When I first started my career, logic analyzers were giant pieces of equipment which lived permanently in the lab. You would spend hours carefully getting set up and configuring the device, and you were chained to the analyzer until you were finished.

When Saleae released their amazingly compact USB logic analyzer, I immediately jumped on board. The Saleae Logic 8 is my favorite tool in my kit. Saleae’s logic analyzer software supports a variety of trigger conditions and data resolutions, and it can also decode a common communication protocols such as JTAG, SPI, I2C, CAN, and UART.

I’m still using my first edition Saleae Logic 8, but they’ve since overhauled their design and released both 4-channel and 16-channel versions.

I think that eight channels is the sweet spot for a portable analyzer. I’ve rarely needed to monitor more than eight channels at once, and in those rare cases I can usually work through signal groups in stages. I also find that I regularly use more than four channels, especially when I need to analyze both control signals and a bus (e.g. SPI).

 The  Saleae Logic 8  is my favorite tool in the toolkit.
The Saleae Logic 8 is my favorite tool in the toolkit.

TIAO USB Multi-Protocol Adapter

The TIAO USB Multi-Protocol Adapter (TUMPA) has been another invaluable tool in my kit.

TUMPA is built around FTDI’s FT2232H chip. Between OpenOCD and FTDI libraries, you can use the TUMPA as an adapter for SWD, JTAG, SPI, I2C, UART, and digital I/O. The board also sports on-board voltage translation, which can be enabled/disabled through software or with a jumper.

TUMPA allows me to use a single debug adapter across most of my projects. If you work on a variety of projects, having a single debugging adapter can drastically simplify your development environment.

 The  TUMPA  board enables me to carry a single debug adapter for a variety of scenarios.
The TUMPA board enables me to carry a single debug adapter for a variety of scenarios.

USB Hub

My laptop doesn’t have enough ports to support all of my debugging devices, so I’m always carrying around a small USB hub.

I use Sabrent’s 4-port USB Hub without an external power supply, which I love for its small size and toggle buttons. If you’re working with high-current devices, I recommend purchasing the 4-port hub with a 5V power adapter.

You can use any USB hub you like, but I highly recommend picking one with toggle buttons. Being able to selectively enable and disable ports has been helpful when working with embedded devices. I frequently find myself cutting power to a USB device, using the buttons to reset devices, and to force USB disconnect/connect conditions.

 All these USB devices mean that I need to carry a hub in my kit.
All these USB devices mean that I need to carry a hub in my kit.

Wire Grab-Bag

All of these debug tools need to be hooked up to the target system, so I keep a mixed bag of wires and clips in my kit. I have a mix of male-male, female-male, and female-female jumper wires to handle any manner of connector. I also keep a few pieces of scrap wire for emergency soldering needs.

The clips you see come with the Saleae logic analyzers, but they are just generally useful for clipping pins and boards. You can find all manner of useful clips by searching for “test probe hook clip”.

 You can never have enough wires.
You can never have enough wires.

Spare Jumpers

Because I keep finding myself in situations where I don’t have enough jumpers, I decided to keep a little baggie of 2.54mm standard jumpers in my kit. These come in handy when you lose a jumper, or your local EE can’t seem to find enough for that new dev board.

 There are never enough jumpers when you need them.
There are never enough jumpers when you need them.

What’s in your kit?

I’d love to hear from my readers about the tools you frequently carry around. Leave me a note in the comments!

6 Replies to “A Look at My Portable Embedded Toolkit”

  1. Nice tools. I also carry Saleae, multimer, lot of cables and small usb scope which is sometimes also handy when investigating issues . Thanks for sharing.

  2. Very similar:

    Saleae 8 (did you know they offer a $200 discount coupon you can request as an "electronics enthusiast", student, or startup? Great deal on a great product!)
    Elenco LP-560 logic probe (less useful now that I have the Saleae, but useful for quick checks and pulse catches).
    Extech EX330 DMM.
    Anker USB hub.
    Spare jumpers with male and female pins, alligators, grabbers, mini-grabbers, and micro-grabbers.
    Double-ended straight/phillips screwdriver.
    Bent-tip ESD-safe tweezers.
    Radio Shack 5x/10x/15x magnifier.

    Ironically I was just using the Saleae to capture the I2C activity from an Aardvark I’m using at work, controlling it with Python, C, and C# via their API library.

  3. Love the article, started using an aardvark because of it and it’s saved me a ton of time! What components are in your desktop? I’ve actually been trying to do some really high speed saleae captures over USB3.0 and didn’t want anything else on the USB bus to interfere with the content. I’m using a Ryzen 1800X, ASROCK taichi, and a startech USB 3.0 card. I have problems with the USB card’s compatibility with the TAICHI chipset and it’s a major bummer. Once again a standard isn’t standard. I’m considering moving back to intel just to get better compatibility again though I suppose I could also just try a different motherboard.

  4. Great to hear that @ the aardvark. I use a 16″ MacBook Pro (2019 vintage), and before that I used a 2014 Mac Pro, so my USB specs are just fixed as Apple’s controllers (which are quite nice on paper, though I haven’t stressed them). I don’t think I’ve pushed my salae too hard with high speed captures, I’ll have to give that a try.

    Although, mine is limited to USB 2.0, guess it’s time for an upgrade?

Share Your Thoughts

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