Skip to main content

Real-time temperature logger with CLI + Tkinter GUI for NEnG TMP117 instruments.

Project description

Temp Logger

Real-time temperature logger and instrument control suite for NEnG TMP117 PID instruments.

Tools included

Command Package Description
temp-logger this package CLI real-time logger with live matplotlib plots and CSV export
temp-logger-gui this package Tkinter GUI logger with embedded plots, dark theme, WiFi/USB support
pid-controller-gui this package PID temperature controller GUI — ramp control, tuning, TEC, live graphs
scpi-client neng-scpi-tools Interactive SCPI terminal with tab-completion, history, pretty-printed output
wifi-config-gui neng-wifi-tools WiFi configuration GUI — network management, status monitoring, SCPI console
neng-device-scan neng-wifi-tools Fast network scanner to discover NEnG devices on port 5025
update-firmware neng-wifi-tools OTA firmware updater — single/batch file upload, git-aware deployment
ota-manager-gui neng-wifi-tools OTA Firmware Update Manager GUI with multi-device support

All connection-based tools support USB serial and WiFi/TCP connections. WiFi lets you log data and control the instrument simultaneously from two terminals. See WIFI_SUPPORT.md for details.

Note: Tools marked neng-scpi-tools and neng-wifi-tools are installed automatically as dependencies. See the neng-scpi-tools README and neng-wifi-tools README for details.

This directory is a standalone, pip-installable Python package.

Install

Recommended: Install from PyPI

pip install neng-temp-logger

Development install from source (editable mode)

Clone the repository and install in editable mode:

git clone git@gitlab.flavio.be:flavio/temp-logger.git
cd temp-logger
python3 -m venv .venv
source .venv/bin/activate        # macOS / Linux
python -m pip install -U pip
python -m pip install -e .

Tkinter on macOS

The GUI tools require Tkinter. On macOS it may be missing depending on how Python was installed. See TKINTER_INSTALLATION.md.

brew install tcl-tk
brew install python-tk@3.xx      # replace xx with your Python minor version

Run

Temperature logger (GUI)

temp-logger-gui

Temperature logger (CLI)

temp-logger                      # auto-detect port, live plot
temp-logger --no-plot            # headless (data-only)
temp-logger --output exp1.csv    # custom output file
temp-logger --wifi 192.168.1.100 # force WiFi connection

PID controller GUI

pid-controller-gui               # auto-connects USB or WiFi

Other tools (provided by companion packages)

The following tools are installed automatically as dependencies:

# WiFi configuration GUI (neng-wifi-tools)
wifi-config-gui                  # manage WiFi networks and settings

# Interactive SCPI terminal (neng-scpi-tools)
scpi-client                     # USB auto-detect, interactive
scpi-client -w                  # WiFi auto-detect (scans all networks)
scpi-client -w 192.168.1.100    # WiFi with explicit IP

# Network device scanner (neng-wifi-tools)
neng-device-scan                # scan ALL network interfaces

# OTA firmware update (neng-wifi-tools)
update-firmware --git-deploy --yes --reboot   # auto-detect & deploy
update-firmware 192.168.1.100 --git-deploy    # explicit IP

See the neng-wifi-tools README and neng-scpi-tools README for full documentation.

Documentation index

File Description
GUI_QUICKSTART.md 60-second getting started for temp-logger-gui
GUI_README.md Detailed temp-logger-gui reference
REALTIME_LOGGER_README.md CLI temp-logger documentation
WIFI_SUPPORT.md WiFi/TCP connection guide
WIFI_QUICKSTART.md Quick WiFi setup
TKINTER_INSTALLATION.md Tkinter setup for macOS
RELEASE_CHECKLIST.md Release process and checklist

Notes

  • USB serial communicates via CDC at 115 200 baud.
  • WiFi/TCP uses port 5025 (standard SCPI-over-TCP).
  • Only one application can use USB serial at a time; WiFi allows a second simultaneous connection.

(c) 2024-26 Prof. Flavio ABREU ARAUJO. All rights reserved.

Project details


Download files

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

Source Distribution

neng_temp_logger-0.5.2.tar.gz (84.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neng_temp_logger-0.5.2-py3-none-any.whl (39.6 kB view details)

Uploaded Python 3

File details

Details for the file neng_temp_logger-0.5.2.tar.gz.

File metadata

  • Download URL: neng_temp_logger-0.5.2.tar.gz
  • Upload date:
  • Size: 84.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for neng_temp_logger-0.5.2.tar.gz
Algorithm Hash digest
SHA256 8ce751b1834d7726e12a3979294905028fe35ebce747353011be7703b62375e5
MD5 5a32e73f43e41565d5d46513ca9c7356
BLAKE2b-256 d8c9bc76d366119cb6e766ec8155545a727cd9e0837855155363bc03fcaa86c0

See more details on using hashes here.

File details

Details for the file neng_temp_logger-0.5.2-py3-none-any.whl.

File metadata

File hashes

Hashes for neng_temp_logger-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8c827672a5b7b0db6f7b2650e70f31faf5ef77321a50bcebdf6f3688a71f4e6f
MD5 7d05c44114ee1fc3b87224d5dbaade47
BLAKE2b-256 36fca65ec3df49953b904f17e47ae35d6c89e0fc0a88be4d56cc145e58b9dde2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page