Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docs/_stylesheets/extra.css
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,8 @@
.md-source__fact--version {
display: none;
}

/* underline links */
.md-typeset a {
text-decoration: underline;
}
4 changes: 3 additions & 1 deletion docs/cli_commands.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# MeshCore Repeater & Room Server CLI Commands
# CLI Commands

This document provides an overview of CLI commands that can be sent to MeshCore Repeaters, Room Servers and Sensors.

## Navigation

Expand Down
550 changes: 144 additions & 406 deletions docs/protocol_guide.md → docs/companion_protocol.md

Large diffs are not rendered by default.

13 changes: 13 additions & 0 deletions docs/docs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Local Documentation

This document explains how to build and view the MeshCore documentation locally.

## Building and viewing Docs

```
pip install mkdocs
pip install mkdocs-material
```

- `mkdocs serve` - Start the live-reloading docs server.
- `mkdocs build` - Build the documentation site.
25 changes: 10 additions & 15 deletions docs/faq.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
**MeshCore-FAQ**<!-- omit from toc -->
A list of frequently-asked questions and answers for MeshCore

The current version of this MeshCore FAQ is at https://github.com/meshcore-dev/MeshCore/blob/main/docs/faq.md.
This MeshCore FAQ is also mirrored at https://github.com/LitBomb/MeshCore-FAQ and might have newer updates if pull requests on Scott's MeshCore repo are not approved yet.
# Frequently Asked Questions

author: https://github.com/LitBomb<!-- omit from toc -->
---
A list of frequently-asked questions and answers for MeshCore

- [1. Introduction](#1-introduction)
- [1.1. Q: What is MeshCore?](#11-q-what-is-meshcore)
Expand Down Expand Up @@ -112,15 +107,15 @@ Anyone is able to build anything they like on top of MeshCore without paying any

### 1.2. Q: What do you need to start using MeshCore?
**A:** Everything you need for MeshCore is available at:
Main web site: [https://meshcore.co.uk/](https://meshcore.co.uk/)
Firmware Flasher: https://flasher.meshcore.co.uk/
Phone Client Applications: https://meshcore.co.uk/apps.html
MeshCore Firmware GitHub: https://github.com/ripplebiz/MeshCore

NOTE: Andy Kirby has a very useful [intro video](https://www.youtube.com/watch?v=t1qne8uJBAc) for beginners.

- Main web site: [https://meshcore.co.uk](https://meshcore.co.uk)
- Firmware Flasher: [https://flasher.meshcore.co.uk](https://flasher.meshcore.co.uk)
- MeshCore Firmware on GitHub: [https://github.com/meshcore-dev/MeshCore](https://github.com/meshcore-dev/MeshCore)
- MeshCore Companion App: [https://meshcore.nz](https://meshcore.nz)
- MeshCore Map: [https://meshcore.co.uk/map.html](https://meshcore.co.uk/map.html)
- Andy Kirby has a very useful [intro video](https://www.youtube.com/watch?v=t1qne8uJBAc) for beginners.

You need LoRa hardware devices to run MeshCore firmware as clients or server (repeater and room server).
You need LoRa hardware devices to run MeshCore firmware as clients or server (repeater and room server).

#### 1.2.1. Hardware
MeshCore is available on a variety of 433MHz, 868MHz and 915MHz LoRa devices. For example, Lilygo T-Deck, T-Pager, RAK Wireless WisBlock RAK4631 devices (e.g. 19003, 19007, 19026), Heltec V3, Xiao S3 WIO, Xiao C3, Heltec T114, Station G2, Nano G2 Ultra, Seeed Studio T1000-E. More devices are being added regularly.
Expand Down Expand Up @@ -535,7 +530,7 @@ MeshCore clients would need to reset path constantly and flood traffic across th
This could change in the future if MeshCore develops a client firmware that repeats.
[Source](https://discord.com/channels/826570251612323860/1330643963501351004/1354780032140054659)

### 5.12. Q: How do I add a node to the [MeshCore Map]([url](https://meshcore.co.uk/map.html))
### 5.12. Q: How do I add a node to the [MeshCore Map](https://meshcore.co.uk/map.html)
**A:**

To add a BLE Companion radio, connect to the BLE Companion radio from the MeshCore smartphone app. In the app, tap the `3 dot` menu icon at the top right corner, then tap `Internet Map`. Tap the `3 dot` menu icon again and choose `Add me to the Map`
Expand Down
18 changes: 10 additions & 8 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
# Welcome
# Introduction

Welcome to the MeshCore documentation.

## Building and viewing Docs
Below are a few quick start guides.

```
pip install mkdocs
pip install mkdocs-material
```
- [Frequently Asked Questions](./faq.md)
- [CLI Commands](./cli_commands.md)
- [Companion Protocol](./companion_protocol.md)
- [Packet Structure](./packet_structure.md)
- [QR Codes](./qr_codes.md)

* `mkdocs serve` - Start the live-reloading docs server.
* `mkdocs build` - Build the documentation site.
If you find a mistake in any of our documentation, or find something is missing, please feel free to open a pull request for us to review.

- [Documentation Source](https://github.com/meshcore-dev/MeshCore/tree/main/docs)
34 changes: 34 additions & 0 deletions docs/qr_codes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# QR Codes

This document provides an overview of QR Code formats that can be used for sharing MeshCore channels and contacts. The formats described below are supported by the MeshCore mobile app.

## Add Channel

**Example URL**:

```
meshcore://channel/add?name=Public&secret=8b3387e9c5cdea6ac9e5edbaa115cd72
```

**Parameters**:

- `name`: Channel name (URL-encoded if needed)
- `secret`: 16-byte secret represented as 32 hex characters

## Add Contact

**Example URL**:

```
meshcore://contact/add?name=Example+Contact&public_key=9cd8fcf22a47333b591d96a2b848b73f457b1bb1a3ea2453a885f9e5787765b1&type=1
```

**Parameters**:

- `name`: Contact name (URL-encoded if needed)
- `public_key`: 32-byte public key represented as 64 hex characters
- `type`: numeric contact type
- `1`: Companion
- `2`: Repeater
- `3`: Room Server
- `4`: Sensor
96 changes: 96 additions & 0 deletions docs/terminal_chat_cli.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
# Terminal Chat CLI

Below are the commands you can enter into the Terminal Chat clients:

```
set freq {frequency}
```
Set the LoRa frequency. Example: set freq 915.8

```
set tx {tx-power-dbm}
```
Sets LoRa transmit power in dBm.

```
set name {name}
```
Sets your advertisement name.

```
set lat {latitude}
```
Sets your advertisement map latitude. (decimal degrees)

```
set lon {longitude}
```
Sets your advertisement map longitude. (decimal degrees)

```
set af {air-time-factor}
```
Sets the transmit air-time-factor.


```
time {epoch-secs}
```
Set the device clock using UNIX epoch seconds. Example: time 1738242833


```
advert
```
Sends an advertisement packet

```
clock
```
Displays current time per device's clock.


```
ver
```
Shows the device version and firmware build date.

```
card
```
Displays *your* 'business card', for other to manually _import_

```
import {card}
```
Imports the given card to your contacts.

```
list {n}
```
List all contacts by most recent. (optional {n}, is the last n by advertisement date)

```
to
```
Shows the name of current recipient contact. (for subsequent 'send' commands)

```
to {name-prefix}
```
Sets the recipient to the _first_ matching contact (in 'list') by the name prefix. (ie. you don't have to type whole name)

```
send {text}
```
Sends the text message (as DM) to current recipient.

```
reset path
```
Resets the path to current recipient, for new path discovery.

```
public {text}
```
Sends the text message to the built-in 'public' group channel