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.1.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.1-py3-none-any.whl (39.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: neng_temp_logger-0.5.1.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.1.tar.gz
Algorithm Hash digest
SHA256 c0e89c07f1c6a30493010bddbc8843541e38c37c24398fc41cdf25318993f770
MD5 1c3ab6f2f81e7c31e42ff7f078d288a5
BLAKE2b-256 7a6fd5ef518f5ff661d8242f4b1243532d7c2bb71dce03ad1616ad37c5fd8211

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for neng_temp_logger-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 21eed78c02a0d8912cbce05dfe105fc7c3a9e37944e3307d95fa7e76fe36f0e9
MD5 c14e9a26c70e6e00af8d26a1356ab987
BLAKE2b-256 a7c6a27779e81047a6dd61b75de0907342f5d348771b1d92e6669490817449db

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