Merge branch 'master' into patch-1

This commit is contained in:
Amelia Pytosh 2024-07-13 13:15:24 -07:00 committed by GitHub
commit 53bb87654d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
13 changed files with 408 additions and 64 deletions

View file

@ -78,6 +78,15 @@ read,notify,write
fromnum - the current packet # in the message waiting inside fromradio, if the phone sees this notify it should read messages
until it catches up with this number.
6c6fd238-78fa-436b-aacf-15c5be1ef2e3
notify
A log message as LogRecord protobuf. Clients are encouraged to listen for this notification and give the option of logging these
debug messages.
6c6fd238-78fa-436b-aacf-15c5be1ef2e2
notify
A raw log message as a string (with a newline). This characteristic is DEPRECATED and shouldn't be used on new client code.
The phone can write to this register to go backwards up to FIXME packets, to handle the rare case of a fromradio packet was dropped after the ESP32 callback was called, but before it arrives at the phone. If the phone writes to this register the ESP32 will discard older packets and put the next packet >= fromnum in fromradio.
When the ESP32 advances fromnum, it will delay doing the notify by 100ms, in the hopes that the notify will never actually need to be sent if the phone is already pulling from fromradio.

View file

@ -20,4 +20,7 @@ nRF52 devices are able to accept [OTA firmware updates](/docs/getting-started/fl
You may wish to perform a [Factory Erase](/docs/getting-started/flashing-firmware/nrf52/nrf52-erase) prior to installing firmware to clear data that may change format and location between releases.
### Convert RAK4631-R to RAK4631
If your device did not come with the Arduino bootloader you will need to [perform the conversion](/docs/getting-started/flashing-firmware/nrf52/convert-rak4631r).
If your device did not come with the Arduino bootloader you will need to [perform the conversion](/docs/getting-started/flashing-firmware/nrf52/convert-rak4631r).
### Use Raspberry Pi as a SWDIO Flash Tool
If your device can't be flashed through USB or Bluetooth, another option might be a [direct SWDIO connection](/docs/getting-started/flashing-firmware/nrf52/swdio).

View file

@ -0,0 +1,105 @@
---
id: swdio
title: SWDIO using a Raspberry Pi
sidebar_label: SWDIO using a Raspberry Pi
sidebar_position: 6
description: Instructions for uploading firmware through SWDIO by using a Raspberry Pi.
---
Most Meshtastic devices can be flashed simply using USB.
However, some (eg Seeed WM1110 Dev Kit) require the use of an external device that can connect via "SWDIO".
There are dedicated devices such as the [RAKDAP1](https://store.rakwireless.com/products/daplink-tool)
that can do this work. However, for many people a Raspberry Pi is more convenient.
This article provides instructions on how use a Raspberry Pi as a SWDIO Flash Tool.
## Set up Wiring
The first step is to connect two wires between your Raspberry Pi and the SWDIO ports on your NRF52-based device.
Connect GPIO pin 11 on your Raspbery Pi to the CLK pin on the Meshtastic Device.
Connect GPIO pin 8 on your Raspbery Pi to the DIO pin on the Meshtastic Device.
Ensure you get the GPIO numbers correct.
Plug in your Raspberry Pi to USB power.
Plug in the Meshtastic Device to power.
## Install OpenOCD
You can use OpenOCD to manage the SWDIO connection with the Meshtastic Device.
Install it on your Raspberry Pi.
```
$ sudo apt update
$ sudo apt install libtool autoconf automake texinfo telnet gdb-multiarch git
$ git clone git://repo.or.cz/openocd.git
$ cd openocd/
$ ./bootstrap
$ ./configure --enable-bcm2835gpio
$ make -j4
$ sudo make install
```
## Check connection
Let's try connecting to the NRF52-based device with SWDIO before we do anything with firmware.
All the configuration you need is in the openocd repository.
```
$ openocd -f ./openocd/tcl/interface/raspberrypi-native.cfg -c "transport select swd" -f openocd/tcl/target/nrf52.cfg -s tcl
```
The first flag selects the Raspberry Pi as your host machine, the transport is SWDIO, and the last flag says you are connecting to a nRF52-based chip.
You should see something like this:
```
Open On-Chip Debugger 0.12.0+dev-00633-gad87fbd1c
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
srst_only separate srst_gates_jtag srst_push_pull connect_deassert_srst
swd
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : BCM2835 GPIO JTAG/SWD bitbang driver
Info : clock speed 100 kHz
Info : SWD DPIDR 0x2ba01477
Info : [nrf52.cpu] Cortex-M4 r0p1 processor detected
Info : [nrf52.cpu] target has 6 breakpoints, 4 watchpoints
Info : [nrf52.cpu] Examination succeed
Info : [nrf52.cpu] starting gdb server on 3333
Info : Listening on port 3333 for gdb connections
Info : accepting 'telnet' connection on tcp/4444
```
If you see “Error connecting DP: cannot read IDR”, then you've probably connected the wires to the wrong place.
## Obtaining Firmware
Check the instructions for your [hardware](/docs/hardware/devices) to find the correct firmware for your device.
For most devices following this guide, a .hex file is required.
Then, copy the firmware file to your Raspberry Pi.
## Flashing Firmware
Once you have openocd running, you can connect to your Meshtastic device using telnet.
Flashing is as simple as running a few commands inside the telnet session:
```
$ telnet 127.0.0.1 4444
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Open On-Chip Debugger
> init
> reset init
> halt
> nrf5 mass_erase
> program firmware.hex verify
> reset
> exit 0
```
Unplug the power and plug it back in after flashing.
## Connecting
Congratulations, you should now be able to connect to your device through Bluetooth in the Meshtastic app.

View file

@ -131,13 +131,14 @@ Portable and durable devices designed for Meshtastic.
| [Nano G1 Explorer](./nano/?nano-series=g1-e) | ESP32 WROOM | SX1262 | 2.4GHz b/g/n | 4.2 | YES |
| [Nano G1](./nano/?nano-series=g1) | ESP32 WROOM | SX1276 | 2.4GHz b/g/n | 4.2 | YES |
### [Station G1](./station-g1/)
### [Station Series](./station-series/)
High power LoRa transceiver designed for Meshtastic Licensed HAM operation.
| Name | MCU | Radio | WiFi | BT | GPS |
| :-------------------------- | :---------- | :----- | :----------: | :-: | :-: |
| [Station G1](./station-g1/) | ESP32 WROOM | SX1262 | 2.4GHz b/g/n | 4.2 | YES |
| Name | MCU | Radio | WiFi | BT | GPS |
| :------------------------------ | :--------------- | :----- | :----------: | :-: | :------: |
| [Station G1](./station-series/) | ESP32 WROOM | SX1262 | 2.4GHz b/g/n | 4.2 | OPTIONAL |
| [Station G2](./station-series/) | ESP32-S3 WROOM-1 | SX1262 | 2.4GHz b/g/n | 5.0 | OPTIONAL |
### [Raspberry Pi Pico](./raspberry-pi/)
@ -164,6 +165,16 @@ Complete solution with battery, screen, case, and antenna. Ships pre-flashed wit
All-in-one development device with LoRa, WiFi, BT, touchscreen, accelerometer, gyroscop, vibration motor, LiPo battery and more!
| Name | MCU | Radio | WiFi | BT | GPS |
| :-------------------- | :--------------- | :----- | :--: | :-: | :-: |
| Name | MCU | Radio | WiFi | BT | GPS |
| :------------------- | :--------------- | :----- | :--: | :-: | :-: |
| [unPhone](./unPhone) | ESP32-S3-WROOM-1 | RF950W | YES | 5.0 | NO |
### [Seeed Wio-WM1110](./seeed-wm1110)
nRF52840-based development boards with GPS, and multiple ports to attach sensors.
| Name | MCU | Radio | WiFi | BT | GPS |
| :--------------------------------------------------------- | :------- | :----- | :--: | :-: | :-: |
| [Seeed Wio-WM1110 Dev Kit](./seeed-wm1110?wio-sdk-wm1110) | nRF52840 | LR1110 | YES | 5.3 | YES |
| [Seeed Wio Tracker 1110](./seeed-wm1110?wio-tracker-wm1110) | nRF52840 | LR1110 | YES | 5.3 | YES |

View file

@ -0,0 +1,105 @@
---
id: seeed-wm1110
title: Seeed Wio-WM1100
sidebar_label: Seeed Wio-WM1100
sidebar_position: 15
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
<Tabs
groupId="wm1110"
queryString="wm1110"
defaultValue="wio-tracker-wm1110"
values={[
{label: 'WM110 Dev Kit', value:'wio-sdk-wm1110'},
{label: 'Wio Tracker 1110', value: 'wio-tracker-wm1110'},
]}>
<TabItem value="wio-sdk-wm1110">
## Seeed Wio-WM1110 Dev Kit
:::note External GPS Required
The LR1110 GNSS functionality does not yet work. Seeed recommends at Grove - GPS (Air530).
:::
- **MCU**
- Nordic nRF52840 (WiFi & Bluetooth)
- **LoRa Transceiver**
- Semtech LR1110
- **Frequency options**
- 868 MHz
- 915 MHz
- 923 MHz
- **Navigation Module**
- Semtech LR1110
- **Connectors**
- USB-C
- LoRa Antenna: SMA antenna connector and U.FL/IPEX
- GNSS Antenna: RP-SMA antenna connector U.FL/IPEX
- NFC Antenna: U.FL/IPEX
- GPIO
- I2C x1
- UART x1
- Solar Panel
- SWDIO
### Features
- Temperature and Humidity Sensor (SHT41)
- 3-Axis Accelerometer(LIS3DHTR)
- Reset switch, power jumpers, 2 configurable buttons
- AAA Battery x3
- Screen sold separately
### Resources
- Firmware file: `firmware-wio-sdk-wm1110-X.X.X.xxxxxxx.bin`
- Purchase Links:
- International
- [Seeed Studio](https://www.seeedstudio.com/Wio-WM1110-Dev-Kit-p-5677.html)
</TabItem>
<TabItem value="wio-tracker-wm1110">
## Wio Tracker 1110 Dev Kit for Meshtastic
- **MCU**
- Nordic nRF52840 (WiFi & Bluetooth)
- **LoRa Transceiver**
- Semtech LR1110
- **Frequency options**
- 868 MHz
- 915 MHz
- 923 MHz
- **Navigation Module**
- Semtech LR1110
- **Connectors**
- USB-C
- LoRa Antenna: on-board and U.FL/IPEX
- GNSS Antenna: on-board and U.FL/IPEX
- Grove connectors: ADC x1, I2C x1, UART x1, Digital x3
### Features
- Temperature and Humidity Sensor (SHT41)
- 3-Axis Accelerometer(LIS3DHTR)
- Reset switch, power jumpers
- Screen sold separately
### Resources
- Firmware file: `firmware-wio-tracker-wm1110-X.X.X.xxxxxxx.bin`
- Purchase Links:
- International
- [Seeed Studio](https://www.seeedstudio.com/Wio-Tracker-1110-Dev-Kit-for-Meshtastic.html)
</TabItem>
</Tabs>

View file

@ -1,12 +0,0 @@
---
id: buttons
title: Station G1 Hardware Buttons
sidebar_label: Buttons
sidebar_position: 1
---
## Functionality
- **User/Program Button:**
- **Single press:** Changes the information page displayed on the device's screen.
- **Double press:** Sends an adhoc ping of the device's position to the network.

View file

@ -1,45 +0,0 @@
---
id: station-g1
title: Station G1 device
sidebar_label: Station G1
sidebar_position: 9
---
The Station G1 is the second dedicated hardware device to be designed from scratch purely for Meshtastic Licensed (HAM) Operation by Neil Hao. It has been designed to be small and compact with the inclusion of 35dBm high power PA.
## Specifications
- **MCU**
- ESP32 WROOM (WiFi & Bluetooth)
- Bluetooth 4.2
- **LoRa Transceiver**
- Semtech SX1262
- Additional 35dBm LoRa Power Amplifier to boost transmit power
- **Frequency options**
- US-915 MHz
- EU-868 MHz
- **Navigation Module**
- ATGM336H-5N-71 (Supports GPS, BDS and GLONASS)
- **Antenna**
- SMA Socket
- **Connectors**
- USB-C
## Features
- Meshtastic pre-installed
- User button
- 1.3 inch OLED screen
- Optional GPS Module and IO Extension Socket
- Optional [12V Battery Docker](https://shop.uniteng.com/product/12v-battery-docker-for-station-edition-g1/) which can be used as Backup Power, or in scenarios that require mobility
## Resources
- Firmware file: `firmware-station-g1-X.X.X.xxxxxxx.bin`
- [Unit Engineering's Official Wiki](https://uniteng.com/wiki/doku.php?id=meshtastic:station)
- Purchase Links:
- International
- [Official Store](https://shop.uniteng.com/product/meshtastic-mesh-device-station-edition/)
- [Official Tindie Store](https://www.tindie.com/products/neilhao/meshtastic-mesh-device-station-edition/)
![Station G1](/img/hardware/station-g1.webp)

View file

@ -0,0 +1,47 @@
---
id: buttons
title: Station Series Hardware Buttons
sidebar_label: Buttons
sidebar_position: 1
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
<Tabs
groupId="station-buttons"
queryString="station-buttons"
defaultValue="g2"
values={[
{label: 'Station G1', value:'g1'},
{label: 'Station G2', value: 'g2'}
]}>
<TabItem value="g1">
## Functionality
- **User/Program Button:**
- **Single press:** Changes the information page displayed on the device's screen.
- **Double press:** Sends an adhoc ping of the device's position to the network.
</TabItem>
<TabItem value="g2">
## Functionality
- **User/Program Button:**
- **Single press:** Changes the information page displayed on the device's screen.
- **Double press:** Sends an adhoc ping of the device's position to the network.
- **Long press:** Will signal the device to shutdown after 5 seconds.
- **Firmware Download Button:** Places device into Firmware Download Mode.
1. Press and hold Firmware Download Button.
2. Then single press Reset Button.
3. Finally release the Firmware Download Button.
- **Reset Button:**
- **Single press:** Resets the device.
</TabItem>
</Tabs>

View file

@ -0,0 +1,117 @@
---
id: station-series
title: Station Series
sidebar_label: Station Series
sidebar_position: 9
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
The Station series of devices, designed by Neil Hao from B&Q Consulting and powered by Meshtastic, are compact and durable LoRa devices designed for high-performance radio frequency communication. They feature a powerful PA for LoRa communication, a rugged SMA antenna socket, and a variety of external IO interfaces.
For more comprehensive information on the Station Series of devices, be sure to visit the B&Q Consulting Station Series [Wiki page.](https://wiki.uniteng.com/en/meshtastic/station-g2)
<Tabs
groupId="station-series"
queryString="station-series"
defaultValue="g2"
values={[
{label: 'Station G1', value:'g1'},
{label: 'Station G2', value: 'g2'}
]}>
<TabItem value="g1">
:::info
The Station G1 has been discontinued and replaced by the upgraded Station G2. The Station G1 remains a supported device.
:::
## Specifications
- **MCU**
- ESP32 WROOM
- WiFi
- Bluetooth 4.2
- **LoRa Transceiver**
- Semtech SX1262
- Additional 35dBm LoRa Power Amplifier
- **Frequency options**
- US-915 MHz
- EU-868 MHz
- **Navigation Module**
- Optional
- **Antenna**
- SMA Socket
- **Connectors**
- USB-C (PD Protocol)
## Features
- Meshtastic pre-installed
- User button
- 1.3 inch OLED screen
- Optional GPS Module and IO Extension Socket
- Optional [12V Battery Docker](https://shop.uniteng.com/product/12v-battery-docker-for-station-edition-g1/) which can be used as Backup Power, or in scenarios that require mobility
## Resources
- Firmware file: `firmware-station-g1-X.X.X.xxxxxxx.bin`
- [Unit Engineering's Official Wiki](https://uniteng.com/wiki/doku.php?id=meshtastic:station)
- Purchase Links:
- International
- [Official Store](https://shop.uniteng.com/product/meshtastic-mesh-device-station-edition/)
- [Official Tindie Store](https://www.tindie.com/products/neilhao/meshtastic-mesh-device-station-edition/)
![Station G1](/img/hardware/station-series/station-g1.webp)
</TabItem>
<TabItem value="g2">
## Specifications
- **MCU**
- ESP32-S3 WROOM-1
- WiFi
- Bluetooth 5.0
- **LoRa Transceiver**
- Semtech SX1262
- Additional 35dBm LoRa Power Amplifier
- Dedicated Ultra-Low Noise Figure LNA
- **Frequency options**
- 864 - 928 MHz
- **Navigation Module**
- Optional (1x GROVE GPS Socket)
- **Antenna**
- SMA Socket
- **Connectors**
- USB-C (PD Protocol)
## Features
- Meshtastic pre-installed
- User button
- 1.3 inch OLED screen
- 1x5P Pitch=1.5mm Socket (9V-19V External Power Supply)
- GROVE I2C Socket( 1x4P Pitch=2mm )
- SparkFun QWIIC I2C Socket ( 1x4P Pitch=1mm )
- GROVE GPS Socket ( 1x4P Pitch=2mm )
- IO Extension Socket ( 1x10P Pitch=1.5mm )
## Resources
- Firmware file: `firmware-station-g2-X.X.X.xxxxxxx.bin`
- [Unit Engineering's Official Wiki](https://uniteng.com/wiki/doku.php?id=meshtastic:station)
- Purchase Links:
- International
- [Official Store](https://shop.uniteng.com/product/meshtastic-mesh-device-station-edition/)
- [Official Tindie Store](https://www.tindie.com/products/neilhao/meshtastic-mesh-device-station-edition/)
![Station G2 Front](/img/hardware/station-series/station-g2-front.webp)
![Station G2 Back](/img/hardware/station-series/station-g2-back.webp)
</TabItem>
</Tabs>

View file

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

View file

@ -45,6 +45,10 @@
"source": "/docs/hardware/supported-hardware/",
"destination": "/docs/hardware/devices/"
},
{
"source": "/docs/hardware/devices/station-g1/",
"destination": "/docs/hardware/devices/station-series/"
},
{
"source": "/docs/legal/trademark/",
"destination": "/docs/legal/licensing-and-trademark/"