~tristan957/tllt-cp

ref: 5d1852751fcff4cc4b2bb44e0dbe5a03a8aba218 tllt-cp/README.md -rw-r--r-- 1.8 KiB
5d185275 — Tristan Partin Fix recipe UI to show correct recipe 1 year, 7 months ago

builds.sr.ht status

#The Learning Little Toaster Control Panel

#Organization

This project is seperated into three parts:

  • GUI
  • client library
  • driver

The GUI is the control panel for interacting with the toaster. The client library is utilized by the GUI to interact with the server. The driver is used to talk to the toaster.

#Dependencies

  • libcurl >= 7.52.1
  • glib >= 2.50.3
  • gtk >= 3.22
  • libjson-glib >= 1.2.6

Disclaimer: These are known working dependency versions. Previous versions may work fine.

#Development Environment

This project uses clang-format to format files and Meson as the build system. Project should build fine with clang or gcc.

To initalize the build environment, run

CC={compiler of choice} meson build

#WiringPi

By default, the driver builds with support for WiringPi. To disable support, run meson configure -Dwith-wiringPi=false build. You will need to make sure that WiringPi is installed on your system if you don't disable the option. Instructions for manually building it, can be found in the wiringPi repository.

#Environment Variables

  • TLLT_CP_SERVER - URL of the server
  • TLLT_TOASTER_CONFIG_FILE_PATH - file path of the toaster config

#Toaster Config File

JSON file like the following

{
    "top-heating-element": {
        "gpio-pin": 1
    },
    "bottom-heating-element": {
        "gpio-pin": 2
    },
    "thermistor": {
        "spi-chan": 0,
        "base-pin": 100,
        "number-of-pins": 8
    }
}

#Building

ninja -C build

#Testing

ninja test -C build

#Running

#GUI

./build/src/tllt-cp

#Tests

./build/tests/{path to test executable}