Say “Hello” to the SparkFun Artemis

Tiny models, but this time on tiny modules!

Alasdair Allan
7 min readJun 21, 2019

Just over three months ago we saw the arrival of the SparkFun Edge. Built around the ultra-low-powered Ambiq Micro Apollo 3 processor, and powered by a single coin cell battery, it let you run machine learning models locally. No cloud needed. Today sees the launch of the SparkFun Artemis, all the same goodness as the Edge, but this time wrapped in a much smaller package and with much better software support.

The new SparkFun Artemis Module. (📷: SparkFun)

Measuring just 10.5×15.5 mm including antenna, the SparkFun Artemis module is intended to bridge the gap from “maker to market,” and from prototype to product. The module has all of the support circuitry needed to make use of the Apollo 3 processor, but has been designed so that routing to the module can be done with lower-cost 2-layer PCBs with an 8 mil trace clearance. That means it can be easily integrated into maker projects, with a short run of circuit boards sourced from somewhere like OSH Park, or picked up in tape and reel quantities used in a production product.

“Our goal is to enable anyone to integrate low-power machine learning into their designs and projects without being locked into a specific toolchain. The Artemis module is the first product to bridge the gap between hobbyists and consumer products, providing a single module from prototype to production.” — Nathan Seidle, SparkFun founder

Today’s release is the ‘engineering’ version of the module and comes without FCC approval or a CE mark, however a fully FCC/CE approved version of the module with an RF shield is set to ship in tape and reel quantities as soon as next month.

Product Showcase: SparkFun Artemis Module Engineering Version. (📹: SparkFun Electronics)

Traditionally known as a hobbyist supplier, the new Artemis Module is a big departure for SparkFun. This is the first time they’ve built and shipped an embedded module intended to scale to production of consumer product volumes. However somewhat intriguingly, they’ve gone and done things in a traditionally SparkFun way, the module is fully open source—including schematics and PCB design files you’d need to build one yourself if you’re crazy enough to try and do that. Or if you want to build a project or a product with the module, how to go ahead and do that.

The SparkFun Artemis Module next to a US Quarter for size. (📷: SparkFun)

The module itself is built around the same Ambiq Apollo 3 processor as the SparkFun Edge. An Arm Cortex-M4F running at 48MHz, the Apollo 3 offers up to 48 GPIO pins, 1MB of Flash memory, 384KB of RAM, and integrated Bluetooth 5 support.

Artemis Module specifications. (📈: SparkFun)

Consuming around 0.3mA running flat out at 48MHz, or 0.6mA running in 96MHz burst mode, and just 1 µA in deep sleep mode with Bluetooth turned off, the Apollo 3 processor’s power budget when running is less than many micro-controllers draw in deep sleep mode. That means you can do real-time machine learning on a micro-controller board powered by a single CR2032 coin cell battery that should last for months.

The Arduino Core for Apollo 3

When the SparkFun Edge launched a few months back the only way to do anything with the board was using Ambiq Apollo 3 SDK. That wasn’t exactly the most maker friendly way of doing things, which probably explains why SparkFun went ahead and built an Arduino Core for the Apollo 3.

The new Arduino core for the Apollo 3 was written in-house at SparkFun, and while not quite ready to be distributed using the Arduino Boards Manager—for now installation is going to be manual—you can program and use the Artemis just like any other Arduino. However because their Arduino core is built on top of the Ambiq Hardware Abstraction Layer (HAL) you can dig deeper and call the HAL functions directly giving you a lot more power over the chip.

Retro’ed support for the SparkFun Edge is also in the works.

Support for Machine Learning

Machine learning development is done in two stages. An algorithm is initially trained on a large set of sample data on a fast powerful machine or cluster, then the trained network is deployed into an application that needs to interpret real data. This deployment, or ‘inference,’ stage is where the new SparkFun Artemis module is useful.

The pre-trained TensorFlow “Yes” demo running on the SparkFun Edge. (📹: Alasdair Allan)

“SparkFun has always been about making emerging technologies Artemis module is no exception. Our goal is to blow the doors open for innovation in the area of machine learning with our open source hardware approach — the Artemis module moves us several steps in the right direction.”—Glenn Samala, SparkFun CEO

For now TensorFlow Lite support is still only available via the Ambiq SDK. But support for TensorFlow from the Arduino environment is coming, and is now expected in “weeks” rather than months. I’ve seen some ‘almost working’ code and have to agree, it’s almost there.

Making TensorFlow for Micro-controllers available from within the Arduino environment is a big deal, and will be a huge change in the accessibility of machine learning in the emerging edge computing market. Arguably perhaps one of the major factors that drove the success of the Espressif ESP8266 was Arduino compatibility, so it’s going to really be interesting to see if the same will happen with machine learning

BlackBoard Artemis

Alongside the release of the Artemis Module comes three carrier boards built around module. Like the module itself, these are entirely open source and intended to “…act as a starting point for [a] product.”

The BlackBoard Artemis. (📷: SparkFun)

Marketed under the SparkX “BlackBoard” brand for now, the first of these boards is the BlackBoard Artemis. With an Arduino Uno compatible form factor this is the most likely entry point for makers—it’s just another Arduino, but with Bluetooth LE, and a 1MB of flash.

Product Showcase: Artemis BlackBoards. (📹: SparkFun Electronics)

The board supports an Uno-like barrel jack for power, but also offers a USB C connector which can both power the board and is used for programming although the board also has a JTAG connector if you want to jump outside the Arduino environment. The board has a Qwiic connector, and a digital MEMs microphone for experimenting with always-on voice commands, TensorFlow Lite for Micro-controllers, and machine learning.

However because it has been constrained by the traditional Arduino form-factor not all the capabilities of the Artemis Module are exposed. So if you really want to get the most from the module, you’ll probably want to look at one of the other boards they released today.

BlackBoard Artemis Nano

The BlackBoard Artemis Nano, showing the front (top) and rear (bottom) of the board. (📷: SparkFun)

The Artemis Nano has a lot squeezed into its tiny footprint. This breadboard compatible module has an on-board LiPo battery connector, next to its USB C jack, which like the other boards in the range can be used for both power and programming. Like the other boards in the range, and despite the size, the board also has a Qwiic connector, JTAG header, and a MEMs microphone.

BlackBoard Artemis ATP

The SparkFun Artemis ATP. (📷: SparkFun)

Looking a lot like the old Arduino Mega, although it’s not pin compatible, the final board in the range is the Artemis ATP, which is short for “All The Pins.” This is the big brother of the range, and does exactly what it says on the tin—it breaks out all of the usable pins from the Ambiq Apollo 3 to easy to use header blocks. The Artemis module has 48 GPIO and this board breaks out absolutely every one of them. Interestingly the silkscreen labels on those pins are “all over the place” as they’re labelled as they are assigned on the Apollo3 processor itself. That’s going to make it a lot easier to use.

Just like the other boards in the range has a Qwiic connector, JTAG header, a MEMs microphone, and a USB C connector for power and programming.

If you need a lot of GPIO, or are intending to use the Artemis Module in a prototype for a product, this might well be the board you should buy as it will let you test out the full capabilities of the Artemis module.

In Closing

The engineering version of the SparkFun Artemis module, which comes without FCC approval, is available today and costs $8.95. However tape and reel quantities of a fully FCC/CE approved module, which will also have an additional RF enclosure to meet emissions standard, will be available as soon as next month. If you’re interested in knowing when the FCC/CE approved you can sign up to the Artemis mailing list for more information.

All three of the new boards available today are being released under the SparkX BlackBoard brand, although it’s pretty likely that after the Artemis Module receives its FCC approval all three boards will transition to the more usual SparkFun red livery.

If you’re interested in picking up one of the boards built around the engineering version of the module; the BlackBoard Artemis costs $19.95, the Artemis Nano costs $14.95, while the Artemis ATP costs $24.95. A new version 2 of the SparkFun Edge, rebuilt around the Artemis Module, will also be made available soon presumably around the same $14.95 price point.

--

--