Skip to content

Instantly share code, notes, and snippets.

@transkatgirl
Last active August 22, 2025 06:05
Show Gist options
  • Save transkatgirl/b332d093a06011d70c54c5a5aea66e05 to your computer and use it in GitHub Desktop.
Save transkatgirl/b332d093a06011d70c54c5a5aea66e05 to your computer and use it in GitHub Desktop.
My configuration for my Meshtastic Nodes (currently Seeed T1000-E)
REBOOT_TIME=120
MESH_NAME="KatMesh"
if [ -z "$1" ]; then
echo "Warning: No Bluetooth PIN specified"
else
if [ -z "$2" ]; then
echo "Warning: Channel PSK not found"
echo "Channel PSKs can be found using the meshtastic --info command. When making a channel, a 256-bit key size is recommended."
else
if [ -z "$3" ]; then
echo "Note: Owner not specified, defaulting to \"$MESH_NAME Node\""
fi
fi
fi
meshtastic --factory-reset
sleep $REBOOT_TIME
meshtastic --begin-edit
meshtastic \
--set lora.region US \
--set lora.ignore_mqtt False \
--set lora.config_ok_to_mqtt True
meshtastic \
--set device.role CLIENT \
--set device.rebroadcast_mode ALL
if [ -z "$1" ]; then
meshtastic \
--set bluetooth.enabled True \
--set bluetooth.mode NO_PIN
else
meshtastic \
--set bluetooth.enabled True \
--set bluetooth.mode FIXED_PIN \
--set bluetooth.fixed_pin "$1"
fi
meshtastic \
--set position.gps_mode ENABLED \
--set position.gps_update_interval 60
meshtastic \
--set network.wifi_enabled False \
--set network.eth_enabled False
meshtastic --set external_notification.enabled False
if [ -z "$3" ]; then
meshtastic --set-owner "$MESH_NAME Node"
else
meshtastic --set-owner "$3"
fi
meshtastic --commit-edit
if [ ! -z "$2" ]; then
sleep $REBOOT_TIME
meshtastic \
--ch-set name "$MESH_NAME" \
--ch-set psk base64:$2 \
--ch-set module_settings.position_precision 32 \
--ch-index 1
fi
# Shutdown node after setup
# meshtastic --shutdown
REBOOT_TIME=120
MESH_NAME="KatMesh"
if [ -z "$1" ]; then
echo "Note: No GPS Interval specified, disabling GPS"
fi
meshtastic --factory-reset
sleep $REBOOT_TIME
meshtastic --begin-edit
meshtastic --set lora.region US
meshtastic \
--set device.role CLIENT \
--set device.rebroadcast_mode ALL
if [ -z "$1" ]; then
meshtastic --set position.gps_mode DISABLED
else
meshtastic \
--set position.gps_mode ENABLED \
--set position.gps_update_interval "$1"
fi
meshtastic \
--set network.wifi_enabled False \
--set network.eth_enabled False
meshtastic --set external_notification.enabled False
meshtastic --set power.is_power_saving True
meshtastic \
--set-owner "$MESH_NAME Node" \
--set-is-unmessageable True
meshtastic --commit-edit
meshtastic --set bluetooth.enabled False
# Shutdown node after setup
# meshtastic --shutdown
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment