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 Description
temp-logger CLI real-time logger with live matplotlib plots and CSV export
temp-logger-gui Tkinter GUI logger with embedded plots, dark theme, WiFi/USB support
pid-controller-gui PID temperature controller GUI — ramp control, tuning, TEC, live graphs
wifi-config-gui WiFi configuration GUI — network management, status monitoring, SCPI console
scpi-client Interactive SCPI terminal with tab-completion, history, pretty-printed output

All five 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.

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

WiFi configuration GUI

wifi-config-gui                  # manage WiFi networks and settings

IMPORTANT: CIRCUITPY must be unmounted for WiFi configuration changes to persist!

diskutil unmount /Volumes/CIRCUITPY   # macOS
umount /media/$USER/CIRCUITPY         # Linux

Interactive SCPI terminal

scpi-client                     # USB auto-detect, interactive
scpi-client -w 192.168.1.100    # WiFi interactive
scpi-client "*IDN?"             # single command, then exit

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

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.2.8.tar.gz (114.9 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.2.8-py3-none-any.whl (81.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: neng_temp_logger-0.2.8.tar.gz
  • Upload date:
  • Size: 114.9 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.2.8.tar.gz
Algorithm Hash digest
SHA256 a8a56218ee236cf3c60655346d2a3a1e272bfdf645ca74cd50968c5eb4e8c9e7
MD5 aac0ad50c3194c5c51ab750f5bf22f9d
BLAKE2b-256 498541c49d2dac5de63c09495e2c89ebab0bba89e77d1c092e8247c8044eb248

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for neng_temp_logger-0.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 ec6944145d064e71472b8d406a6b732a5a35dfa92dd3afd0b42d5994f7538a1e
MD5 c0909f8d5de7bad14041dab3b44b307f
BLAKE2b-256 b6e07031c4b1bbcda6755875bed0221d649401412efe097e0885b7eb057bf9b4

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