Skip to content
This repository has been archived by the owner on Jun 8, 2018. It is now read-only.
Neil Armstrong edited this page Apr 6, 2017 · 7 revisions

Welcome to the ACME wiki!

This page contains basic documentation for the BayLibre Another-Cute-Measurement-Equipment (ACME) software suite.

Please note, that the project itself is still work-in-progress and the software suite should be treated as a Proof-of-Concept.

Please visit the BayLibre Product Page for more Informations about the ACME capes and probes : http://baylibre.com/acme

What is it?

Part of the Baylibre Team has been dealing with power measurements and optimizations for many years, accumulating frustrations by all the limited and/or adhoc solutions that were available:

  • Windows-only / not Linux-friendly,
  • Proprietary drivers,
  • Limited/ not flexible proprietary application suite,
  • Limited automation capabilities,
  • Too expensive,
  • Too complicated to use,
  • Not accurate enough,
  • Lack of standard power measurement connector (adhoc solutions only),
  • HW tweaks required on development boards to get access to power rails

Hence the ACME initiative was launched, with the objective of getting rid of all these limitations and providing the community with the most flexible low-cost but high-perf solution!

The proposed solution comes as an extension for the BeagleBone Black (the ACME Cape), designed to provide multi-channel power and temperature measurements capabilities to the BeagleBone Black (BBB). It comes with power and temperature probes integrating a power switch (the ACME Probes), turning it into an advanced all-in-one power measurement solution.

The ACME initiative also proposes a new standard (free of charge) for power measurement connector (the ACME Power Connector), to solution the issue of development boards not being ready for power measurements.

The ACME initiative is completely open source, from HW to SW drivers and applications.

Key Features

  • Leverage BeagleBone Black for data processing (1GHz CPU)
  • Leverage TI INA226 to do voltage, current & power acquisition
    • 16-bit ADC, 7KHz max sampling rate, 10μV max offset
    • Upstream IIO Linux device driver
  • Multi-channel
    • 8, up to 16 with Cape stacking
  • All-in-one solution for power measuremen and power control
  • Flexible / Evolutive
    • Extension connector for use with other HW than BBB
    • New probes can be designed, w/o HW change required on ACME cape
  • Complete Open Source SW Suite
    • Works with upstream IIO Infrastructure
    • A IIO backed sigrok is available
    • Upstream linux drivers
    • Open-source Python GUI
    • Open-source command line utility
    • Standard ACME Probe Connector (free of charge)
    • Scalable HW design to reduce cost

Pre-Built SDCard Images

Download the latest release from : https://github.com/baylibre-acme/ACME/releases

Simply copy the image file onto the microSD Card, under Linux run :

$ xzcat acme-beaglebone-black_b2-sdcard-image.xz | sudo dd of=/dev/mmcblk0 bs=1M

Insert the microSD Card into the BeagleBone Black slot, (optionally) connect an Ethernet cable to a DHCP backed LAN network and power it through USB. When the LEDs blinks as an heartbeat, the system is up and running.

Using a system on the same local LAN network with Avahi or Bonjour installed, test the system connectivity by pinging the ACME board :

$ ping baylibre-acme.local

pyacmegraph Instructions

A new graphical tool has been backed by the BayLibre team to visualize and save power metering.

Please refer to : https://github.com/baylibre-acme/pyacmegraph

CLI Usage Instructions

The experimental Network CLI is available at acme-cli

The pyacmed server is provided in the latest ACME Yocto based images and works with this CLI software.

Sigrok / PulseView Instructions

See libsigrok to install and use libsigrok with IIO on your system.

iio-capture Instructions

See iio-capture to install and use the iio-caputure tool with the ACME probes.

HW Schematics

ACME Cape and Probes HW schematics may be downloaded from this link.

Build Instruction

To get the BSP you need to have repo installed and use it as:

Install the repo utility:

$ mkdir ~/bin
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

Download the BSP source:

$ PATH=${PATH}:~/bin
$ mkdir acme-bsp
$ cd acme-bsp
$ repo init -u https://github.com/baylibre-acme/ACME
$ repo sync

At the end of the commands you have every metadata you need to start work with.

To start a simple image build:

$ make

An SD Card image will be available in the build/build/ directory.

Experimental Features

An USB Gadget interface with Network and Console links has been added along other personalization features.

Please refer to : https://github.com/baylibre-acme/ACME#experimental-features

A Yocto SDK Toolchain is provided since the b2 release, please refer to : github.com/baylibre-acme/ACME/wiki/ACME-Yocto-SDK

Bugs & Support

Please use the ACME project page to report any issues (https://github.com/baylibre-acme/ACME/issues)