From 254577c537e20dbd2e365c63773e2010f3c8374d Mon Sep 17 00:00:00 2001 From: Luke Hoersten Date: Sat, 1 Aug 2026 19:24:23 -0500 Subject: openhop/repeater: fixes from first real deploy on ubuntu - create spi/gpio groups and udev device rules (Raspberry Pi OS ships them, Ubuntu does not) - hardware CS via spidev (cs_pin -1); a manual cs_pin on a kernel-owned CE line fails EBUSY - align RAK6421 pin maps with upstream's hardware catalog: en_pins for the FEM enables, gpiod backend on chip 0 (catalog says chip 1, wrong for Pi 4) - us RF preset is now MeshCore USA/Canada (Recommended): 910.525 / SF7 / BW62.5 / CR5 - set storage.storage_dir; omit mqtt_brokers entirely (any key enables the MQTT pusher) - fetch radio-settings/radio-presets json into the data dir (pip omits them and the web setup wizard's hardware step is empty without them) - config deployed 0660 with a vaultable repeater.security block so the daemon can persist credentials and re-templates no longer wipe them - sudoers rule so the web UI can restart the service after config changes --- openhop/repeater/vars/boards/rak6421-slot1.yaml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'openhop/repeater/vars/boards/rak6421-slot1.yaml') diff --git a/openhop/repeater/vars/boards/rak6421-slot1.yaml b/openhop/repeater/vars/boards/rak6421-slot1.yaml index 464a194..c49ea9a 100644 --- a/openhop/repeater/vars/boards/rak6421-slot1.yaml +++ b/openhop/repeater/vars/boards/rak6421-slot1.yaml @@ -3,13 +3,23 @@ # Source: meshtastic/firmware bin/config.d/lora-RAK6421-13302-slot1.yaml repeater_sx1262_bus_id: 0 # spidev0.0 repeater_sx1262_cs_id: 0 # CE0 (BCM 8) -repeater_sx1262_cs_pin: 8 +# -1 = hardware CS via spidev. The kernel spi driver owns the CE line, so a +# manual cs_pin here fails with EBUSY; manual CS is only for boards whose NSS +# is wired to a non-CE GPIO (e.g. Waveshare). +repeater_sx1262_cs_pin: -1 repeater_sx1262_reset_pin: 16 repeater_sx1262_busy_pin: 24 repeater_sx1262_irq_pin: 22 # DIO1 repeater_sx1262_use_dio3_tcxo: true repeater_sx1262_dio3_tcxo_voltage: 1.8 repeater_sx1262_use_dio2_rf: true -repeater_sx1262_txen_pin: 12 # SKY66122 FEM enable (verify TX vs RX) -repeater_sx1262_rxen_pin: 13 # SKY66122 FEM enable (verify TX vs RX) +# Per upstream's hardware catalog for this board: both SKY66122 FEM enables are +# asserted together via en_pins and DIO2 does the actual TX/RX switching. +repeater_sx1262_txen_pin: -1 +repeater_sx1262_rxen_pin: -1 +repeater_sx1262_en_pins: [12, 13] +repeater_sx1262_use_gpiod_backend: true +# Upstream's catalog says gpio_chip 1, but on a Pi 4 the 40-pin header is +# gpiochip0 (chip 1 is the 8-line firmware expansion GPIO). +repeater_sx1262_gpio_chip: 0 repeater_sx1262_is_waveshare: false -- cgit v1.2.3