CanGrow/Arduino/CanGrow
2024-10-24 21:52:21 +02:00
..
include add some diff to force new line when inline-block 2024-10-24 19:56:34 +02:00
arduino-cli.yml add esp32 board url to arduino-cli.yml 2024-10-18 17:30:24 +02:00
CanGrow.geany Arduino/CanGrow/CanGrow.geany aktualisiert 2024-10-18 14:16:27 +02:00
CanGrow.ino add config.system.output.device , add POST stuff for /system/ 2024-10-24 04:14:19 +02:00
cangrow.sh cangrow.sh - add arduino-cli lib update-index before installing libs 2024-10-24 21:52:21 +02:00
README.md Arduino/CanGrow/README.md aktualisiert 2024-10-22 03:16:49 +02:00
Screenshot_WebUI_root.png replace Arduino/Screenshot_WebUI_root.png 2024-07-30 19:44:50 +02:00

CanGrow - An OpenSource grow controller firmware

Build environment

The helper script cangrow.sh is written for a Debian 12 system.

To install all dependencies you need for building the firmware, run the cangrow.sh setup:

$ ./cangrow.sh help
./cangrow.sh [setup|build|upload|webupload|monitor]
setup: setup build environment, download arduino-cli, install all dependencies for arduino ide
build: build firmware binary. will be saved into build/
upload: upload firmware by serial connection /dev/ttyUSB0
webupload: upload firmware with webupload to 192.168.4.20
monitor: serial monitor /dev/ttyUSB0

# Install all dependencies for build environment
$ ./cangrow.sh setup

The script installs arduino-cli to ~/.local/bin/arduino-cli.

Compile

# compile and output to build/CanGrow_v0.2...bin
# Default Target is ESP8266 D1 Mini
$ ./cangrow.sh build

# Compile for ESP32 D1 Mini
$ export BOARD="esp32:esp32:d1_mini32"
$ ./cangrow.sh build

# Build and webupload to IP
$ export IP="192.168.4.69"
$ ./cangrow.sh build # need to make .bin first
$ ./cangrow.sh webupload # upload

# listen to serial monitor on /dev/ttyUSB2
$ export TTY="/dev/ttyUSB2"
./cangrow.sh monitor

I wrote this project using Geany IDE. . The Geany Projectfile is also included, just run

$ geany CanGrow.geany

F8 compiles the project, F9 uploads firmware to /dev/ttyUSB0. You can change these settings for .ino and .h files in Project -> Settings -> Create/Make.