meshtastic/docs/software/modules/serial.mdx
Sacha Weatherstone 9dc879235f
Hardware pages (#299)
* initial devices.json

* initial hardware components

* testing page at /docs/hardware/supported/template

* WIP Changes

* Home page work & updates

* Fix build

* Fix external link button

* Setup linting

* rename, cleanup & lint

* seperate lint cmd for now

Co-authored-by: Foster Irwin <foster@jfirwin.com>
Co-authored-by: Sacha Weatherstone <sachaw100@hotmail..om>
2022-04-02 00:34:49 +11:00

44 lines
1.6 KiB
Plaintext

---
id: serial-module
title: Serial communication module
sidebar_label: Serial communication
---
import PluginModule from '@site/docs/_blocks/_plugin_module.mdx';
## About
This is a simple interface to send messages over the mesh network by sending strings over a serial port.
Default is to use RX GPIO 16 and TX GPIO 17.
<PluginModule name="serial_" rename="serial_" />
## Basic Usage:
1. Enable the module by setting `serial_module_enabled` to `1`.
2. Set the pins (`serial_module_rxd` / `serial_module_rxd`) for your preferred RX and TX GPIO pins. On tbeam boards it is recommended to use:
- RXD 35
- TXD 15
3. Set `serial_module_timeout` to the amount of time to wait before we consider your packet as "done".
4. (Optional) In serial_module.h set the port to `PortNum_TEXT_MESSAGE_APP`if you want to send messages to/from the general text message channel.
5. Connect to your device over the serial interface at `38400 8N1`.
6. Send a packet up to 240 bytes in length. This will get relayed over the mesh network.
7. (Optional) Set `serial_module_echo` to `1` and any message you send out will be echoed back to your device.
:::note
The device must be restarted after the settings have been changed for the module to take effect.
:::
## TODO (in this order):
- Define a verbose RX mode to report on mesh and packet information.
:::note
This won't happen any time soon.
:::
## Known Problems
- Until the module is initialized by the startup sequence, the TX pin is in a floating state. Device connected to that pin may see this as "noise".
- Will not work on NRF and the Linux device targets.