Ultra-Energy-Efficient ARM Cortex-M0+ STM32L0 Microcontrollers

STMicroelectronics recently announced volume production of its ultra-energy-efficient ARM Cortex-M0+ STM32L0 microcontrollers, which are well suited for applications including wearables, medical monitors, industrial sensors, and smart-living devices. Three new product lines are:

  • STM32L0x1 Access Line
  • STM32L0x2 USB Line with crystal-less USB2.0 Full Speed
  • HMI-ready STM32L0x3 USB/LCD Line

The memory densities range from  8- to 192-KB flash memory, up to 20-KB SRAM, and up to 6-KB true EEPROM. The devices’ energy-saving features include:

  • Low-power ADC that draws only 41 µA at 12-bit resolution and 10 kilosamples per second
  • Energy-saving modes including 340-nA Stop with full RAM retention and auto wake-up
  • Low-power pulse counter (16-bit timer) that remains available in ultra-low power mode
  • 3.5-µs wake-up from Stop
  • An interconnect matrix allows data handling to continue while the CPU is idle

Software development is supported by STM32CubeMX and the STM32CubeL0 middleware and firmware suite. The former’s initialization code generator and MCU configurator has easy-to-use wizards, including a power-consumption calculator. STM32CubeL0 includes a Hardware Abstraction Layer (HAL) that simplifies porting to other devices within the pin- and code-compatible STM32 family. STM32Snippets provides optimized code samples. STM32Cube provides over 200 free code examples. All STM32Cube tools are available free of charge, as are the ST-Link debugger and the DfuSe and Flash Loader tools that simplify using and testing the ROM bootloader.

Pricing for the STM32L0 series starts at $0.37 for the STM32L011 with 8-KB flash memory, 2-KB SRAM, and 512 bytes of true EEPROM for high-volume orders.

Source: STMicroelectronics

STMicroclectronics Offers Free Dev Tools to Linux Users

STMicroelectronics now offers free high-productivity tools to Linux users interested in working with STM32 microcontrollers. The STM32CubeMX configurator and initialization tool and the System Workbench for STM32—which is an IDE created by Ac6 Tools and supported by the openSTM32.org community—are now both available to run on Linux OS. Thus, Linux users can work on embedded projects with STM32 devices without leaving their favorite desktop environment.

System Workbench for STM32 supports the ST-LINK/V2 debugging tool under Linux through an adapted version of the OpenOCD community project. You can use the tools STMicro hardware such as STM32 Nucleo boards, Discovery kits, and Evaluation boards, as well as microcontroller firmware within the STM32Cube embedded-software packages or Standard Peripheral Library.

Source: STMicroelectronics

New Digital Power Amplifiers for Car Audio

STMicroelectronics recently announced its second-generation digital audio amplifiers with internal 24-bit DAC conversion. The FDA801 and FDA801B four-channel class-D components are intended to simplify system design and lower cost for car-radio suppliers. Offering 40% power savings compared to standard class-D amplifiers, the new FDA801 and FDA801B four-channel class-D amplifiers with digital input convert the digital audio source directly into high-quality, cabin-filling sound. The digital input gives immunity to GSM noise, improves sound quality, saves component costs, and simplifies system design.STMicro - DFDA801

STMicro’s new power amplifiers combine superior audio quality and increased energy efficiency, as well as the unique real-time measurement of speaker impedance via the Digital Impedance Meter (FDA801B). The amplifiers are rated with 115-dB signal-to-noise ratio (SNR) and 110-dB dynamic range. The simplified digital input eliminates external DAC and external decoupling capacitor. The built-in Digital Impedance Meter (DIM, in FDA801B) automatically recognizes the connected speaker’s magnitude and phase and communicates it by digital bus (I2C). The FDA801 and FDA801B are now available in the LQFP64 Exposed Pad Up package.

Source: STMicroelectronics

STMicro’s New Advanced 32-Bit Secure Microcontroller

STMicroelectronics has introduced the first member of the third generation of its ST33 series of secure microcontrollers based on the 32-bit ARM SecurCore SC300 processor. The ST33J2M0, which provides 2-MB flash program memory, is intended for secure applications including embedded Secure Element (eSE), Single Wire Protocol (SWP) SIMs for NFC applications, and embedded Universal Integrated Circuit Card (UICC). The secure microcontroller includes the highest performance and integrated crypto-accelerators that together with the industry’s fastest clock speed in a secure microcontroller enable the highest performance for fast application execution. It also features a new hardware architecture with strong and multiple fault-protection mechanisms covering the CPU, memories, and buses to facilitate the development of highly secure software.s.

The ST33J2M0 features multiple hardware accelerators for advanced cryptographic functions. The EDES peripheral provides a secure Data Encryption Standard (DES) algorithm implementation, while the NESCRYPT crypto-processor efficiently supports the public key algorithm. The AES peripheral ensures secure and fast AES algorithm implementation.

ST33J2M0 samples are available as wafers or housed in VQFN and WLCSP packages.

STM32 Family Enabled for the ARM mbed IoT Device Platform

STMicroelectronics has announced that the STM32 family of ARM Cortex-M based microcontrollers is now enabled for the ARM mbed IoT Device Platform with the latest public version of the ARM mbed OS. The mbed platform adds a standard OS, cloud services, and development tools for creating new IoT applications.

By adding mbed to its handy design ecosystem, STMicro is encouraging more productivity and collaboration in IoT development. Using the mbed OS with STM32 development hardware enables you to innovate while reducing your product’s time to market. You can easily incorporate STM32 microcontrollers with STMicro’s sensor and power-management products to deploy “smart,” secure IoT designs.

Source: STMicroelectronics

New Power Supply Chip Attacks “Vampire Power”

STMicroelectronics recently announced a new power supply chip intended to minimize “vampire power.” Meeting the international specification for zero standby power, the new chip offers an intelligent way of of managing the wake-up function in appliances, industrial, and lighting equipment.

STmicro’s new VIPer0P IC helps reduce wasted power and CO2 emissions by enabling effective zero-power standby in appliances. With its patented smart-management capability, the VIPer0P enables an appliance to be woken up from standby via a touchscreen or remote control. In addition, the IC consumes less than 5 mW in idle mode (at 230-VAC supply).

An off-line power-converter IC, VIPer0P—which can be configured as a flyback, buck, or buck-boost switched-mode power supply (SMPS)—is the latest member of STMicro’s VIPerPlus series. Additional features include integrated high-voltage startup circuitry, error amplifier with 1.2-V reference and separate ground for direct feedback connection, and a sense-FET for energy-efficient current sensing. These simplify design and minimize external components thereby saving bill-of-materials costs and board space. In addition, VIPer0P’s self-supply design simplifies transformer selection by eliminating any need for an auxiliary winding.

Source: STMicroelectronics

STMicro Introduces STM32F7 MCUs with Advanced ARM Cortex-M7 Core

STMicroelectronics has begun producing microcontrollers with the new ARM Cortex-M7 processor, which is the newest Cortex-M core for advanced consumer, industrial, and Internet-of-Things (IoT) devices. The new STM32F7 microcontrollers combine the Cortex-M7 core with advanced peripherals. STMicro_STM32_Volume_Disc_Kit

The STM32F7 Discovery Kit includes the STM32Cube firmware library along with support from software-development tool partners and the ARM mbed online community. The $49 Discovery Kit includes a WQVGA touchscreen color display, stereo audio, multi-sensor support, security, and high-speed connectivity. In addition to an integrated ST-Link debugger/programmer (you don’t need a separate probe), you get unlimited expansion capability via the Arduino Uno connectivity support and immediate access to a wide variety of specialized add-on boards.

STM32F7 devices are available in a range of package options from a 14 mm × 14 mm LQFP100 to 28 mm × 28 mm LQFP208, plus 10 mm × 10 mm 0.65-mm-pitch UFBGA176, 13 mm × 13 mm 0.8 mm-pitch TFBGA216, and 5.9 mm × 4.6 mm WLCSP143. Prices start at $6.73 for the STM32F745VE in 100-pin LQFP with 512-KB on-chip flash memory (in 1,000-unit orders).

The STM32F7 development ecosystem includes both the Discovery Kit and two evaluation boards (STM32746G-EVAL2 and STM32756G-EVAL2) that cost $560 each. The STM32F7 Discovery Kit (STM32F746G-DISCO) gives full flexibility to fine-tune hardware and software at any time. You also benefit from the associated STM32CubeF7 firmware, and the ability to re-use all STM32F4 software assets due to code compatibility.

Source: STMicroelectronics

New STM32 Micrcontrollers in Small Memory Sizes

STMicroelectronics’s new STM32F446 microcontrollers feature ARM Cortex-M4 based processing combined with 256- or 512-KB on-chip flash memory options. In addition to using STMicro’s ART Accelerator, the microcontrollers feature smart architecture, advanced flash technology, and an embedded ARM Cortex-M4 core to achieve a performance of 225 DMIPS and 608 CoreMark at 180 MHz executing from embedded flash.

Source: STMicroelectronics

Source: STMicroelectronics

Key features include:

  • At 180 MHz, the STM32F446 delivers 225 DMIPS/608 CoreMark performance executing from flash memory with 0-wait states. The DSP instructions and the floating-point unit expand the range of addressable applications.
  • Using a 90-nm process, the current consumption in Run mode and executing from flash memory is as low as 200 µA/MHz at 180 MHz. In Stop mode, the power consumption is 50 µA typical.
  • Two dedicated audio PLL, SPDIF input, three half-duplex I²S, and two serial audio interfaces (SAI) supporting full-duplex I²S as well as time division multiplex (TDM) mode.
  • Up to 20 communication interfaces (including 4x USARTs plus 2x UARTs running at up to 11.25 Mbps, 4x SPI running at up to 45 Mbps, 3x I²C with a new optional digital filter capability, 2x CAN, SDIO, HDMI CEC and camera interface)
  • Two 12-bit DACs, three 12-bit ADCs reaching 2.4 MSPS or 7.2 MSPS in interleaved mode up to 17 timers: 16- and 32-bit running at up to 180 MHz
  • Easily extendable memory range using the flexible 90-MHz memory controller with a 32-bit parallel interface, and supporting Compact Flash, SRAM, PSRAM, NOR, NAND and SDRAM memories
  • Cost-effective NOR flash extension with the 90-MHz Dual quadSPI interface supporting memory-mapped mode
  • STM32F446 samples are now available for lead customers. Volume production is scheduled for Q1 2015 in packages from a tiny WLCSP81 measuring 3.728 × 3.85 mm to a 20 × 20 mm LQFP144 with 256- or 512-KB flash memory, all with 128-KB SRAM. Pricing starts at $3.75 for the STM32F446RC in a 64-pin LQFP64 package with 256-KB flash memory and 128-KB SRAM for orders of 10,000 units.

Source: STMicroelectronics

STMicro Reduces Time to Development with Open.MEMS Licensing

STMicroelectronics recently announced the launch of the Open.MEMS licensing program. Its purpose is to encourage broad use of its MEMS and sensors among open-community developers. Open.MEMS licensees can access free drivers, middleware, and application software, beginning with “sensor fusion for 3-axis accelerometer, 3-axis gyroscope, and 3-axis magnetometer, considered vital for many portable and wearable applications.”

STMicro’s STM32 Open Development platform supports Open.MEMS, which went live on November 11, 2014, and will continue to be expanded regularly with additional low-level drivers, middleware/libraries, and application-layer code.


DIY Network-Ready Polyphonic Music Controller

Hans Peter Portner’s Chimaera project is a touch-less, expressive, network-ready, polyphonic music controller released as open source hardware. It is a mixed analog/digital offspring of the Theremin. An array of analog, linear Hall effect sensors make up a continuous 2-D interaction space. The sensors are excited with Neodymium magnets worn on fingers.

Portner's Chimaera project

Portner’s Chimaera project

The device continuously tracks and interpolates position and vicinity of multiple present magnets along the sensor array to produce corresponding low-latency event signals. Those are encoded as Open Sound Control bundles and transmitted via UDP/TCP to a software synthesizer. The DSP unit is a mixed-signal board and handles sensor read out, event detection and host communication. It is based on an ARM Cortex M4 microcontroller in combination with WIZnet W5500 chip, which takes care of all low-level networking protocols via UDP/TCP.

First Prize — Chimaera: The Poly-Magneto-Phonic Theremin, Hans Peter Portner (Switzerland)

The poly-magneto-phonic Theremin

In his project write-up, Portner explains:

With its touch-less control (no friction), high update rates (2-4 kHz), its quasi-continuous spatial resolution and its low-latency (<1 ms), the Chimaera can react to most subtle motions instantaneously and allows for a highly dynamic and expressive play. Its open source design additionally gives the user all possibilities to further tune hardware and firmware to his or her needs. The Chimaera is network-oriented and configured with and communicated by Open Sound Control, which makes it straight-forward to integrate into any setup.

The hardware of the Chimaera consists of two types of printed circuit boards and an enclosure. Multiple sensor units are daisy-chained to form the sensor array and connected to a single digital signal processing (DSP) unit.

Sensor unit

Sensor unit

A single sensor unit consists of 16 linear hall-effect sensors spaced 5mm apart and routed to a single output through a 16:1 multiplexer which is switched by the DSP unit. Downstream the multiplexer, the analog signal runs through an amplification circuitry.

A modular hardware design consisting of identical sensor units and a single DSP unit embedded in a wooden case allows building devices with array sizes of 16-160 sensors.
A modular hardware design consisting of identical sensor units and a single DSP unit embedded in a wooden case allows building devices with array sizes of 16-160 sensors.

The DSP unit is a mixed-signal board and handles sensor read out, event detection and host communication. It is based on an STM32F303Cx ARM Cortex M4 microcontroller in combination with WIZnet W5500, a hardwired 100Mbit IPv4/PHY chip taking care of all low-level networking protocols via UDP/TCP. The board’s analog part features 10 analog inputs providing connection points for the sensor units, leading to a maximally possible array of 160 sensors. Those analog inputs connect directly to three in parallel running 12bit analog-to-digital converters.

Schematic of the DSP unit (STM32F303Cx part)

Schematic of the DSP unit (STM32F303Cx part)

Networking technology in a zero configuration setup has advantages in respect to long-distance transmission, operating system independence and inherent ability for network performances. We thus use the Open Sound Control (OSC) specification via UDP/TCP as low-level communication layer.

Schematic of the DSP unit (WIZnet W5500 part)

Schematic of the DSP unit (WIZnet W5500 part)

Portner’s project won First Prize in the WIZnet Connect the Magic 2014 Design Challenge. The entire project and its associated files are now available.

Q&A: Electrical Engineer & FPGA Enthusiast

Chris Zeh is a San Jose, CA-based hardware design engineer who enjoys working with FPGA development boards, application-specific integrated circuits, and logic analyzers. He recently told us about the projects he is involved with at STMicroelectronics and explained what he’s working on in his free time.

CIRCUIT CELLAR: Tell us about Idle-Logic.com. Why and when did you decide to start a blog?

ZehCHRIS: I started blogging in the winter of 2009, a little more than a year after I graduated Colorado State University with a BSEE. I realized that after graduating it was important to continue working on various projects to keep my mind and skills sharp. I figured the best way to chronicle and show off my projects was to start a blog—my little corner of the Internet.

CIRCUIT CELLAR: What types of projects do you feature on your site?

CHRIS: I like working on a wide range of different types of projects, varying from software development to digital and analog design. I’ve found that most of my projects highlighted on Idle-Logic.com have been ones focusing on FPGAs. I find these little reprogrammable, multipurpose ICs both immensely powerful and fascinating to work with.

My initial plan for the blog was to start a development project to create an FPGA equivalent to the Arduino. I wanted to build a main board with all the basic hardware to run an Altera Cyclone II FPGA and then create add-on PCBs with various sensors and interfaces. My main FPGA board was to be named the Saturn board, and the subsequent add-on “wings” were to be named after the various moons of Saturn.

a—Chris’s Saturn board prototype includes an Altera Cyclone II FPGA and JTAG FPGA programmer, two linear regulators, a 5-V breadboard power supply, and a 24-MHz clock. b—A side view of the board

a—Chris’s Saturn board prototype includes an Altera Cyclone II FPGA and JTAG FPGA programmer, two linear regulators, a 5-V breadboard power supply, and a 24-MHz clock. b—A side view of the board

The project proceeded nicely. I spent some time brushing up on my Photoshop skills to put together a logo and came up with a minimized BOM solution to provide power to the nine different voltage supplies, both linear regulators and switched-mode supplies. One aspect of FPGAs that can make them costly for hobbyist is that the programming JTAG cable was on the order of $300. Fortunately, there are a few more affordable off-brand versions, which I used at first. After many weeks of work, I finally had the total solution for the main FPGA board. The total cost of the prototype system was about $150. Eventually I came up with a way to bit bang the FPGA’s programming bitstream using a simple $15 USB-to-UART IC breakout board driven by a tiny Python application, eliminating the need for the pricey cable. This Future Technology Devices International FT232RL USB-to-UART IC also provided a clock output enabling me to further reduce the component count.

The project was a success in that I was compelled to completely digest the FPGA’s 470-page handbook, giving me a solid grasp of how to work with FPGAs such as the Cyclone II. The project was a failure in that the FPGA breakout board I wanted to use for the project was discontinued by the manufacturer. Creating and fabricating my own four-layer board and hand soldering the 208-pin package was both prohibitively expensive and also a little daunting.

Fortunately, at that time Terasic Technologies introduced its DE0-Nano, a $79 commercial, $59 academic, feature-packed FPGA evaluation board. The board comes with two 40-pin general I/O plus power headers, which has become a perfect alternative base platform for FPGA development. I now intend to develop add-on “wings” to work with this evaluation board.

CIRCUIT CELLAR: Tell us more about how you’ve been using Terasic Technologies’s DE0-Nano development and education board.

CHRIS: The main project I’ve been working on lately with the DE0-Nano is creating and adding support for a full-color 4.3” (480 × 272 pixel) thin- film transistor (TFT) touchscreen LCD. Because of the large pin count available and reconfigurable logic, the DE0-Nano can easily support the display. I used a Waveshare Electronics $20 display, which includes a 40-pin header that is almost but not quite compatible with the DE0-Nano’s 40-pin header. Using a 40-pin IDC gray cable, I was able to do some creative rewiring (cutting and swapping eight or so pins) to enable the two to mate with minimal effort. Eventually, once all the features are tested, I’ll fabricate a PCB in place of the cable.

There are many libraries available to drive the display, but for this project I want to develop the hardware accelerators and video pipeline from the ground up, purely though digital logic in the FPGA. I recently picked up an SD card breakout board and a small camera breakout board. Using these I would like to start playing around with image processing and object recognition algorithms.

CIRCUIT CELLAR: What do you do at STMicroelectronics and what types of projects are you working on?

CHRIS: My official title is Senior Hardware Design Engineer. This title mainly comes thanks to the first project I worked on for the company, which is ongoing—an FPGA-based serial port capture and decoding tool named the HyperSniffer. However, my main role is that of an application engineer.

I spend most of my time testing and debugging our prototype mixed-signal ASICs prior to mass production. These ASICs are built for the hard disk drive industry. They provide several switch-mode power supplies, linear regulators, brushless DC motor controllers, voice coil motor actuation, and a shock sensor digital processing chain, along with the various DACs, ADCs, and monitoring circuits all integrated into a single IC.

Our ASIC’s huge feature set requires me to stay sharp on a wide variety of topics, both analog and digital. A typical day has me down in the lab writing scripts in Python or Visual Studio, creating stimuli, and taking measurements using my 1-GHz, 10-GSPS LeCroy WavePro 7100A oscilloscope, several 6.5-digit multimeters, dynamic signal analyzers, and noise injection power supplies among other instruments. I work closely with our international design team and our customers to help discover and document bugs and streamline the system integration.

A few years back I was able to join my colleagues in writing “Power Electronics Control to Reduce Hard Disk Drive Acoustics Pure Tones,” an Institute of Electrical and Electronics Engineers (IEEE) paper published for the Control and Modeling for Power Electronics (COMPEL) 2010 conference. I presented the paper, poster, and demonstration at the conference discussing a novel technique to reduce acoustic noise generated by a spindle motor.

Chris designed the HyperSniffer logic analyzer, which is shown with the HyperDrive main board. (The PCB was designed by Vincent Himpe and Albino Miglialo.)

Chris designed the HyperSniffer logic analyzer, which is shown with the HyperDrive main board. (The PCB was designed by Vincent
Himpe and Albino Miglialo.)

CIRCUIT CELLAR: Tell us more about the HyperSniffer project.

CHRIS: The HyperSniffer project is an FPGA- based digital design project I first created right out of college. (My colleagues Vincent Himpe and Albino Miglialo did the board design and layout.) The tool is basically an application-specific logic analyzer. It enables us to help our customers troubleshoot problems that arise from serial port transmissions between their system-on-a-chip (SoC) and our ASIC. Through various triggering options it can collect and decode the two or three wire data transmissions, store them on on- board memory, and wait for retrieval and further processing by the application running on the PC. One of this tool’s nice features is that it is capable of synchronizing and communicating with an oscilloscope, enabling us to track down problems that happen in the analog domain that arise due to commands sent digitally.

You can read the entire interview in Circuit Cellar 290 (September 2014).

New JANSR+ 100krad Transistors for Radiative Environments

STMicroelectronics recently announced it is bringing into the JANS system the innovation released last year within the European Space Components Coordination (ESCC) program. Called JANSR+, the innovation consists of a series of 100krad JANSR high-dose-rate bipolar transistors with an additional 100krad low-dose-rate (100 mrad/s) test performed on each wafer.rad_hard_bipolar_trans

Furthermore, ST has announced it will complete its JANSR+ offer with data from very-low-dose-rate (10 mrad/s) tests, demonstrating the outstanding robustness to radiation effect of its technology.

As a result, ST’s JANSR+ series gives access to products with superior performance in radiative environments, with complete test data to support the claim. These products can be used without any up-screen cost and lead time, thus dramatically raising the bar in the industry.

All parts are housed in advanced hermetic UB packages and are available in sample and volume quantities.

[Via STMicroelectronics]

New DSP “Lab-in-a-Box” for ARM-Based Audio Systems

Cambridge, UK-based, ARM and its partners will start shipping a DSP “Lab-in-a-Box” (LiB) to universities worldwide to help boost practical skills development and the creation of new ARM-based audio systems. This will include products such as high-definition home media and voice-controlled home automation systems. The LiB kits contain ARM Cortex-M4-based microcontroller boards by STMicroelectronics and audio cards from Wolfson Microelectronics and Farnell element14.ARMDSPLiBWeb

As the centerpiece of the ARM University Program, LiB packages offer ARM-based technology and high-quality teaching and training materials that support electronics and computer engineering courses. DSP courses have traditionally used software simulation packages, or hands-on labs using relatively expensive development kits costing around $300 per student. By comparison, this new DSP LiB will cost around $50 and will allow students to practice theory with advanced hardware sourced from widely-available products.

“Our Lab-in-a-Box offerings are proving hugely popular in universities because of the low-cost access to state-of-the-art technology,” said Khaled Benkrid, manager of the Worldwide University Program, ARM. “The DSP kits, powered by ARM Cortex-M4-based processors, enable high performance yet energy-efficient digital signal processing at a very affordable price. We expect to see them being used by students to create commercially-viable audio applications and it’s another great example of our partnership supporting engineers in training and beyond.”

The DSP LiB will begin shipping to universities in July 2014. It is the latest in a series of initiatives led by ARM which span multiple academic topics including embedded systems design, programming and SoC design. The DSP kits will also be offered to developers outside academia at a later date.

[via audioXpress.com]

High Dynamic-Range Audio Processor

STMicroelectronics recently introduced a new digital audio processor with greater than 100-dB SNR and Dynamic Range. The device can process most digital input formats including 6.1/7.1 channel and 192-kHz, 24-bit DVD audio and DSD/SACD. When configured in a 5.1 application, its additional two channels can be used to supply audio line-out or headphone drive.

Source: STMicroelectronics

Source: STMicroelectronics

The STA311B is a single chip solution for digital audio processing and control in multichannel applications, providing FFXTM (Full Flexible Amplification) compatible outputs. Together with a FFXTM power amplifier it can provide high-quality, high-efficiency, all-digital amplification.

The chip accepts digitized audio input information in either I2S (left or right justified), LSB or MSB first, with word lengths of 16, 18, 20 and 24 bits. Its pop-noise removal feature does not discriminate against the music genre but instead prevents any audible transients or pops finding their way through to the power amp where they may damage the speakers. Device control is via an I2C interface. The STA311B embeds eight audio-processing channels with up to 10 independent user-selectable bi-quadratic filters per channel to allow easy implementation of tone and music genre equalization templates. It is capable of input and output mixing with multi-band dynamic range compression. The chip also has input sampling frequency auto-detection, input/output RMS metering and employs pulse-width modulated output channels.

The STA311B is supplied in an 8.0 × 8.0 × 0.9 mm VFQFPN package.

[via Elektor]

Q&A: Embedded Systems Consultant

Elecia White is an embedded systems engineer, consultant, author, and innovator. She has worked on a variety of projects: DNA scanners, health-care monitors, learning toys, and fingerprint recognition.—Nan Price, Associate Editor


NAN: Tell us about your company Logical Elegance. When and why did you start the company? What types of services do you provide?

ELECIA: Logical Elegance is a small San Jose, CA-based consulting firm specializing in embedded systems. We do system analysis, architecture, and software implementation for a variety of devices.

Elecia White

Elecia White

I started the company in 2004, after leaving a job I liked for a job that turned out to be horrible. Afterward, I wasn’t ready to commit to another full-time job; I wanted to dip my toe in before becoming permanent again.

I did eventually take another full-time job at ShotSpotter, where I made a gunshot location system. Logical Elegance continued when my husband, Chris, took it over. After ShotSpotter, I returned to join him. While we have incorporated and may take on a summer intern, for the most part Logical Elegance is only my husband and me.

I like consulting, it lets me balance my life better with my career. It also gives me time to work on my own projects: writing a book and articles, playing with new devices, learning new technologies. On the other hand, I could not have started consulting without spending some time at traditional companies. Almost all of our work comes from people we’ve worked with in the past, either people we met at companies where we worked full time or people who worked for past clients.

Here is Elecia’s home lab bench. She conveniently provided notes.

Here is Elecia’s home lab bench. She conveniently provided notes.

NAN: Logical Elegance has a diverse portfolio. Your clients have ranged from Cisco Systems to LeapFrog Enterprises. Tell us about some of your more interesting projects.

ELECIA: We are incredibly fortunate that embedded systems are diverse, yet based on similar bedrock. Once you can work with control loops and signal processing, the applications are endless. Understanding methodologies for concepts such as state machines, interrupts, circular buffers, and working with peripherals allows us to put the building blocks together a different way to suit a particular product’s need.

For example, for a while there, it seemed like some of my early work learning how to optimize systems to make big algorithms work on little processors would fall to the depths of unnecessary knowledge. Processors kept getting more and more powerful. However, as I work on wearables, with their need to optimize cycles to extend their battery life, it all is relevant again.

We’ve had many interesting projects. Chris is an expert in optical coherence tomography (OCT). Imagine a camera that can go on the end of a catheter to help a doctor remove plaque from a clogged artery or to aid in eye surgery. Chris is also the networking expert. He works on networking protocols such as Locator/ID Separation Protocol (LISP) and multicast.

I’m currently working for a tiny company that hopes to build an exoskeleton to help stroke patients relearn how to walk. I am incredibly enthusiastic about both the application and the technology.

That has been a theme in my career, which is how I’ve got this list of awesome things I’ve worked on: DNA scanners, race cars and airplanes, children’s toys, and a gunshot location system. The things I leave off the list are more difficult to describe but no less interesting to have worked on: a chemical database that used hydrophobicity to model uptake rates, a medical device for the operating room and ICU, and methods for deterring fraud using fingerprint recognition on a credit card.

Elecia says one of the great things about the explosion of boards and kits available is being able to quickly build a system. However, she explains, once the components work together, it is time to spin a board. (This system may be past that point.)

Elecia says one of the great things about the explosion of boards and kits available is being able to quickly build a system. However, she explains, once the components work together, it is time to spin a board. (This system may be past that point.)

In the last few years, Chris and I have both worked for Fitbit on different projects. If you have a One pedometer, you have some of my bits in your pocket.

The feeling of people using my code is wonderful. I get a big kick seeing my products on store shelves. I enjoyed working with Fitbit. When I started, it was a small company expanding its market; definitely the underdog. Now it is a success story for the entire microelectromechanical systems (MEMS) industry.

Not everything is rosy all the time though. For one start-up, the algorithms were neat, the people were great, and the technology was a little clunky but still interesting. However, the client failed and didn’t pay me (and a bunch of other people).

When I started consulting, I asked a more experienced friend about the most important part. I expected to hear that I’d have to make myself more extroverted, that I’d have to be able to find more contracts and do marketing, and that I’d be involved in the drudgery of accounting. The answer I got was the truth: the most important part of consulting is accounts receivable. Working for myself—especially with small companies—is great fun, but there is a risk.

NAN: How did you get from “Point A” to Logical Elegance?

ELECIA: ”Point A” was Harvey Mudd College in Claremont, CA. While there, I worked as a UNIX system administrator, then later worked with a chemistry professor on his computational software. After graduation, I went to Hewlett Packard (HP), doing standard software, then a little management. I was lured to another division to do embedded software (though we called it firmware).

Next, a start-up let me learn how to be a tech lead and architect in the standard start-up sink-or-swim methodology. A mid-size company gave me exposure to consumer products and a taste for seeing my devices on retailer’s shelves.

From there, I tried out consulting, learned to run a small business, and wrote a Circuit Cellar Ink article “Open Source Code Guide” (Issue 175, 2005). I joined another tiny start-up where I did embedded software, architecture, management, and even directorship before burning out. Now, I’m happy to be an embedded software consultant, author, and podcast host.

NAN: You wrote Making Embedded Systems: Design Patterns for Great Software (O’Reilly Media, 2011). What can readers expect to learn from the book?

ELECIA: While having some industry experience in hardware or software will make my book easier to understand, it is also suitable for a computer science or electrical engineering college student.

It is a technical book for software engineers who want to get closer to the hardware or electrical engineers who want to write good software. It covers many types of embedded information: hardware, software design patterns, interview questions, and a lot of real-world wisdom about shipping products.

Elecia White's BookMaking Embedded Systems is intended for engineers who are in transition: the hardware engineer who ends up writing software or the software engineer who suddenly needs to understand how the embedded world is different from pure software.

Unfortunately, most college degrees are either computer science or electrical engineering. Neither truly prepares for the half-and-half world of an embedded software engineer. Computer science teaches algorithms and software design methodology. Electrical engineering misses both of those topics but provides a practical tool kit for doing low-level development on small processors. Whichever collegiate (or early career) path, an embedded software engineer needs to have familiarity with both.

I did a non-traditional major that was a combination of computer science and engineering systems. I was prepared for all sorts of math (e.g., control systems and signal processing) and plenty of programming. All in all, I learned about half of the skills I needed to do firmware. I was never quite sure what was correct and what I was making up as I went along.

As a manager, I found most everyone was in the same boat: solid foundations on one side and shaky stilts on the other. The goal of the book is to take whichever foundation you have and cantilever a good groundwork to the other half. It shouldn’t be 100% new information. In addition to the information presented, I’m hoping most people walk away with more confidence about what they know (and what they don’t know).

Elecia was a judge at the MEMS Elevator Pitch Session at the 2013 MEMS Executive Congress in Napa, CA.

Elecia was a judge at the MEMS Elevator Pitch Session at the 2013 MEMS Executive Congress in Napa, CA.

NAN: How long have you been designing embedded systems? When did you become interested?

ELECIA: I was a software engineer at the NetServer division at HP. I kept doing lower-level software, drivers mostly, but for big OSes: WinNT, OS/2, Novell NetWare, and SCO UNIX (a list that dates my time there).

HP kept trying to put me in management but I wasn’t ready for that path, so I went to HP Labs’s newly spun-out HP BioScience to make DNA scanners, figuring the application would be more interesting. I had no idea.

I lit a board on fire on my very first day as an embedded software engineer. Soon after, a motor moved because my code told it to. I was hooked. That edge of software, where the software touches the physical, captured my imagination and I’ve never looked back.

NAN: Tell us about the first embedded system you designed. Where were you at the time? What did you learn from the project?

ELECIA: Wow, this one is hard. The first embedded system I designed depends on your definition of “designed.” Going from designing subsystems to the whole system to the whole product was a very gradual shift, coinciding with going to smaller and smaller companies until suddenly I was part of the team not only choosing processors but choosing users as well.

After I left the cushy world of HP Labs with a team of firmware engineers, several electrical engineers, and a large team of software engineers who were willing to help design and debug, I went to a start-up with fewer than 50 people. There was no electrical engineer (except for the EE who followed from HP). There was a brilliant algorithms guy but his software skills were more MATLAB-based than embedded C. I was the only software/firmware engineer. This was the sort of company that didn’t have source version control (until after my first day). It was terrifying being on my own and working without a net.

I recently did a podcast about how to deal with code problems that feel insurmountable. While the examples were all from recent work, the memories of how to push through when there is no one else who can help came from this job.

Elecia is shown recording a Making Embedded Systems episode with the founders of electronics educational start-up Light Up. From left to right: Elecia’s husband and producer Christopher White, host Elecia White, and guests Josh Chan and Tarun Pondicherry.

Elecia is shown recording a Making Embedded Systems episode with the founders of electronics educational start-up Light Up. From left to right: Elecia’s husband and producer Christopher White, host Elecia White, and guests Josh Chan and Tarun Pondicherry.

NAN: Are you currently working on or planning any projects?

ELECIA: I have a few personal projects I’m working on: a T-shirt that monitors my posture and a stuffed animal that sends me a “check on Lois” text if an elderly neighbor doesn’t pat it every day. These don’t get nearly enough of my attention these days as I’ve been very focused on my podcast: Making Embedded Systems on iTunes, Instacast, Stitcher, or direct from http://embedded.fm.

The podcast started as a way to learn something new. I was going to do a half-dozen shows so I could understand how recording worked. It was a replacement for my normal community center classes on stained glass, soldering, clay, hula hooping, laser cutting, woodshop, bookbinding, and so forth.

However, we’re way beyond six shows and I find I quite enjoy it. I like engineering and building things. I want other people to come and play in this lovely sandbox. I do the show because people continue to share their passion, enthusiasm, amusement, happiness, spark of ingenuity, whatever it is, with me.

To sum up why I do a podcast, in order of importance: to talk to people who love their jobs, to share my passion for engineering, to promote the visibility of women in engineering, and to advertise for Logical Elegance (this reason is just in case our accountant reads this since we keep writing off expenses).

NAN: What are your go-to embedded platforms? Do you have favorites, or do you use a variety of different products?

ELECIA: I suppose I do have favorites but I have a lot of favorites. At any given time, my current favorite is the one that is sitting on my desk. (Hint!)

I love Arduino although I don’t use it much except to get other people excited. I appreciate that at the heart of this beginner’s board (and development system) is a wonderful, useful processor that I’m happy to work on.

I like having a few Arduino boards around, figuring that I can always get rid of the bootloader and use the Atmel ATmega328 on its own. In the meantime, I can give them to people who have an idea they want to try out.

For beginners, I think mbed’s boards are the next step after Arduino. I like them but they still have training wheels: nice, whizzy training wheels but still training wheels. I have a few of those around for when friends’ projects grow out of Arduinos. While I’ve used them for my own projects, their price precludes the small-scale production I usually want to do.

Professionally, I spend a lot of time with Cortex-M3s, especially those from STMicroelectronics and NXP Semiconductors. They seem ubiquitous right now. These are processors that are definitely big enough to run an RTOS but small enough that you don’t have to. I keep hearing that Cortex-M0s are coming but the price-to-performance-to-power ratio means my clients keep going to the M3s.

Finally, I suppose I’ll always have a soft spot for Texas Instruments’s C2000 line, which is currently in the Piccolo and Delfino incarnations. The 16-bit byte is horrible (especially if you need to port code to another processor), but somehow everything else about the DSP does just what I want. Although, it may not be about the processor itself: if I’m using a DSP, I must be doing something mathy and I like math.

NAN: Do you have any predictions for upcoming “hot topics?”

ELECIA: I’m most excited about health monitoring. I’m surprised that Star Trek and other science fiction sources got tricorders right but missed the constant health monitoring we are heading toward with the rise of wearables and the interest in quantified self.
I’m most concerned about connectivity. The Internet of Things (IoT) is definitely coming, but many of these devices seem to be more about applying technology to any device that can stand the price hit, whether it makes sense or not.

Worse, the methods for getting devices connected keeps fracturing as the drive toward low-cost and high functionality leads the industry in different directions. And even worse, the ongoing battle between security and ease of use manages to give us things that are neither usable nor secure. There isn’t a good solution (yet). To make progress we need to consider the application, the user, and what they need instead of applying what we have and hoping for the best.