Skip to main content

Termineter is a Python framework which provides a platform for the security testing of smart meters.

Project description

  ______                    _            __
 /_  __/__  _________ ___  (_)___  ___  / /____  _____
  / / / _ \/ ___/ __ `__ \/ / __ \/ _ \/ __/ _ \/ ___/
 / / /  __/ /  / / / / / / / / / /  __/ /_/  __/ /
/_/  \___/_/  /_/ /_/ /_/_/_/ /_/\___/\__/\___/_/


Termineter is a Python framework which provides a platform for the security testing of smart meters. It implements the C1218 and C1219 protocols for communication over an optical interface. Currently supported are Meters using C1219-2007 with 7-bit character sets. This is the most common configuration found in North America. Termineter communicates with Smart Meters via a connection using an ANSI type-2 optical probe with a serial interface.


Copyright (C) 2011-2017, Spencer J. McIntyre

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


Special Thanks To:

  • Caroline Aronoff (Alpha testing and fixing older PySerial compatibility)
  • Chris Murrey - f8lerror (Alpha testing)
  • Jake Garlie - jagar (Alpha testing)
  • Scott Turner - fantomgoat (Bug report and fix)
  • Kevin Underwood (Bug report and fix)
  • Don Weber - cutaway (Developer of InGuardians’ OptiGuard)

Termineter Development Team:

  • Spencer McIntyre of the SecureState Research and Innovation Team


Author: Spencer McIntyre - zeroSteiner (@zeroSteiner)

Author Home Page:

Project Home Page:

Project Documentation:


Termineter can be installed from the Python Package Index using pip. Simply run sudo pip install termineter.

For additional install information please see the file.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for termineter, version 1.0.0
Filename, size File type Python version Upload date Hashes
Filename, size termineter-1.0.0.tar.gz (55.2 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page