# How to Configure Your Repeater to Upload to the CT Mesh MQTT System

Our MQTT broker is uplink-only and designed for fixed nodes across the state to serve as gateway nodes. Its purpose is not to bridge gaps or extend mesh coverage, but to report local traffic to our own web-based tools for analytical data and metrics to assess the mesh's performance. This role is best suited for stable, well-placed nodes with reliable coverage.

MeshCore MQTT uplink uses meshcoretomqtt on a Raspberry Pi or similar Linux computer with the service installed. This also requires custom observer firmware on the radio. See custom repeater firmware setup before configuring the broker.

## Configuration

Configure meshcoretomqtt with a Toml file at `/etc/mctomqtt/config.d/00-user.toml`. In your existing `[general]` section, set the region to `iata = "BDL"`. Then add the custom broker block below at the end of the config file. Fill in your own broker credentials if you were issued dedicated credentials.

    [[broker]]
    name = "ctmesh"
    enabled = true
    server = "mqtt.ctmesh.org"
    port = 1883
    transport = "tcp"
    keepalive = 60
    qos = 0
    retain = true

    [broker.auth]
    method = "password"
    username = "meshdev"
    password = "large4cats"

Note: The `meshdev`/`large4cats` credentials are intentionally shared secrets for this broker. We recognize the security implications. Specific credentials to this broker can be requested.

## Testing

After the service is running, check the MeshCore Map, MeshMapper, and MeshCore Analyzer to confirm that traffic from the repeater is being reported.

MQTT messages sent to channels such as `#test` are also mirrored into the Discord #test channel by a bot. This gives you a quick way to test whether the main areas of the mesh can hear your new repeater, and whether companion nodes behind the repeater are making it through.

## Related Guides

CT Mesh repeater setup guide

MeshCore resources

Back to CT Mesh