SparkFun RedBoard Projects
Arduino sketches for SparkFun RedBoard, built and uploaded via arduino-build.sh.
Prerequisites
- arduino-cli
- Run
./arduino-build.sh --setuponce after installing
Quick Start
./arduino-build.sh --devices # find your board
./arduino-build.sh --monitor ./blink # build, upload, serial console
Project Layout
sparkfun/
arduino-build.sh Build/upload/monitor tool (run --help)
blink/
blink.ino LED blink + serial hello world
Two-Terminal Workflow
# Terminal 1: persistent serial monitor
./arduino-build.sh --watch
# Terminal 2: edit, build, upload (monitor reconnects automatically)
./arduino-build.sh ./blink
Adding a New Sketch
mkdir my_sketch
# Create my_sketch/my_sketch.ino (filename must match directory)
./arduino-build.sh --verify ./my_sketch # compile check
./arduino-build.sh ./my_sketch # build + upload
Troubleshooting
Ubuntu: Board not detected (CH340 / RedBoard)
On Ubuntu, brltty (a braille display daemon) may claim the CH340 USB-serial
interface before the ch341 kernel driver can bind to it. The board will appear
in lsusb but no /dev/ttyUSB* device is created.
Symptoms in dmesg:
usb 1-3.1.3: usbfs: interface 0 claimed by ch341 while 'brltty' sets config #1
ch341-uart ttyUSB0: ch341-uart converter now disconnected from ttyUSB0
If you are not using a braille display, remove brltty entirely:
sudo systemctl stop brltty-udev
sudo systemctl disable brltty-udev
sudo systemctl stop brltty
sudo systemctl disable brltty
sudo apt remove brltty
Alternatively, to keep brltty installed but block it from claiming CH340
devices, add a udev rule:
sudo tee /etc/udev/rules.d/99-ch340-no-brltty.rules << 'EOF'
SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", ENV{BRLTTY_BRAILLE_DRIVER}="none"
EOF
sudo udevadm control --reload-rules
sudo udevadm trigger
Languages
Shell
54.3%
C++
42.6%
CMake
3.1%