Skip to content

Instantly share code, notes, and snippets.

@lizTheDeveloper
Last active March 14, 2025 21:31
Show Gist options
  • Save lizTheDeveloper/98e3cb1e7cfb96fa5b8171062fcdffe0 to your computer and use it in GitHub Desktop.
Save lizTheDeveloper/98e3cb1e7cfb96fa5b8171062fcdffe0 to your computer and use it in GitHub Desktop.

Meshtastic Workshop

Workshop Outcomes

By the end of the session, participants will:

  1. Understand Meshtastic and mesh networking.
  2. Flash and configure a Meshtastic device.
  3. Send and receive messages through the network.
  4. Set up a device as a repeater node.
  5. Understand key rotation for secure communication.
  6. Have a deployment plan for their own community garden.

Objective: Flash, configure, and connect to a Meshtastic device via an Android app, Web Client, or Python CLI. Set up repeater nodes for community garden deployment and discuss security and key rotation.


0:00 - 0:10 (10 min) - Introduction & Device Overview

  • What is Meshtastic?
  • Overview of mesh networks and decentralized communication.
  • How it works: LoRa-based messaging, repeater nodes, and real-world applications.
  • Why we are deploying at community gardens (sustainability, food security, and autonomous communication).
  • Device Overview:
    • Show the hardware: boards, antennas, power options.
    • Discuss solar panel integration for sustainability.

0:10 - 0:25 (15 min) - Flashing the Device (Hands-On)

  • Flashing Process
  • No-Code Path: Using the Web Flasher.
  • Code Path: Using meshtastic-flasher CLI.
  • Troubleshooting common flashing issues.
  • Ensure everyone has successfully flashed their device before proceeding.

0:25 - 0:40 (15 min) - Connecting to the Device (Hands-On)

  • Connection Methods
  • No-Code Path: Use the Android Meshtastic app to pair and configure.
  • Code Path: Use the Python CLI to connect via USB and verify status (meshtastic --info).
  • Hands-on Activity:
    • Verify connection and test basic commands (meshtastic --nodes).
    • Configure device name and channel.

0:40 - 1:00 (20 min) - Sending & Receiving Messages (Hands-On)

  • Hands-on Testing:
    • Send messages to nearby nodes via Android app or Python CLI.
    • Introduce message encryption settings.

1:00 - 1:15 (15 min) - Deploying Repeater Nodes

  • How Repeater Nodes Work:
    • Role of repeaters in extending coverage.
    • Where and how to place them effectively (elevated spots, solar panel integration).
  • Configuring a Node as a Repeater:

1:15 - 1:30 (15 min) - Key Rotation & Security

  • Security Considerations:
    • Why encryption matters.
    • Choosing a key rotation method.
  • Manual Key Rotation Using a Popular Book:
    • How to agree on an index system for key changes.
    • Rotating encryption keys asynchronously.
    • Best practices for ensuring privacy and security.

1:30 - 1:50 (20 min) - Deployment Planning

  • Participants plan deployment of their node.
  • Choose a location and discuss placement.
  • Map potential community garden deployments.
  • Discuss networking multiple nodes.

1:50 - 2:00 (10 min) - Q&A & Next Steps

  • Open floor for troubleshooting.
  • Discuss potential expansions (long-range tests, more integrations).
  • Encourage further community involvement.

Got feedback? Please fill it out here: https://docs.google.com/forms/d/e/1FAIpQLSddeKAqJNp8qoxtTcLPux_mBxnfPe_x9RZ8QXlXjh-4bz1LUg/viewform

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment