Skip to content

Repository files navigation

Tank Controller in Python

All Contributors

Project Motivation

The goal of this project is to migrate the original TankController software from C++ to Python and run it on a Raspberry Pi Pico.


Getting Started

Step 1 — Install Dependencies

Before getting started, install the following:

python -m tkinter

If Tkinter is installed correctly, a small GUI window will appear.

macOS

If Tkinter is not already installed, install it with:

brew install python-tk@3.14

Step 2 — Fork or Clone the Repository

You can either fork the repository to your own GitHub account or clone it directly.

To clone the repository, open a Visual Studio Code Terminal and run:

git clone https://github.com/Open-Acidification/TankControllerPico.git
cd TankControllerPico

Make sure the project is saved on your local computer.


Step 3 — Open the Visual Studio Code Terminal and Run the Project

In Visual Studio Code, open the integrated terminal by navigating to:

Terminal → New Terminal Then, use the script for your operating system:

Windows (Run project)
.\run_gui.bat
macOS / Linux (Run project)
./run_gui.sh

If the setup was successful, the TankController GUI should open and look similar to the example below.

TankController GUI

Features

View Commands Set Commands
View IP and MAC pH calibration
View free memory Clear pH calibra
View Google mins Clear Temp calib
View log file Set chill/heat
View pH slope Set Google mins
View PID Set KD
View tank ID Set KI
View temp cal Set KP
View time Set pH target
View version Set pH w sine
Set Temp w sine
PID on/off
Set Tank ID
Temp calibration
Set temperature
Set date/time

Testing

To perform Pytest tests for the devices and UI states.

macOS / Linux (Testing)

./test.sh

Windows (Testing)

.\test.bat

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Kaden Sukachevin
Kaden Sukachevin

💻 📖 🐛
Preston Carman
Preston Carman

💻 🐛
Konrad McClure
Konrad McClure

💻
Noah-Griffith
Noah-Griffith

💻
Barun Debnath
Barun Debnath

💻
Kieran Sukachevin
Kieran Sukachevin

⚠️ 💻
Josh Soref
Josh Soref

💻
TaylorSmith28
TaylorSmith28

⚠️ 💻
Samuel Nguyen
Samuel Nguyen

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

About

Tank Controller software to run on a Raspberry Pi Pico.

Resources

Code of conduct

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Contributors

Languages