Configurando um repetidor
Os repetidores são a espinha dorsal da rede. Isso acontece porque os dispositivos pessoais (companions) não retransmitem mensagens; somente os repetidores fazem isso. Sem eles, o alcance da sua comunicação se limita ao raio direto entre dois companions.
A boa notícia é que repetidores MeshCore não exigem hardware diferente dos companions. O mesmo aparelho que você usa no bolso pode ser configurado como repetidor — basta mudar o firmware e instalar em um local fixo.
O que você vai precisar
- Um rádio LoRa compatível: Praticamente qualquer dispositivo que funciona com Meshtastic funciona com MeshCore. Consulte a lista de dispositivos suportados. Além disso, veja a lista de Equipamentos Recomendados.
- Um local semi-permanente: repetidores precisam ser fixos. Quanto mais alto, melhor.
- Uma fonte de energia confiável: USB, bateria, painel solar ou energia elétrica.
Gravação do firmware (Flashing)
A forma mais simples de gravar o firmware MeshCore é usando o web flasher. Recomendamos que seja usado o web flasher da rede MeshCore Portugal, que implementa várias melhorias ao firmware oficial, mas mantendo-se 100% compatível.
- Conecte o dispositivo ao computador usando um navegador baseado em Chromium (Chrome, Edge etc.) e acesse https://www.meshcore.pt/pt/tools/flasher.
- Selecione o tipo do seu dispositivo. Você pode digitar o nome do fabricante e escolher a placa específica.
- Em Função do Dispositivo, escolha o modo "Repetidor".
- Em Tipo de repetidor, escolha "Normal".
- Se a instalação está sendo feita pela primeira vez, clique em Nova instalação. Caso contrário, se for apenas um upgrade de uma versão anterior, clique em Atualização. Dependendo do hardware, pode ser necessário entrar no modo DFU antes (clique duplo no botão físico de reset no aparelho). Se ocorrer um erro, tente novamente — geralmente funciona na segunda tentativa.
-
Quando solicitado, selecione "Configure via USB".
Importante
Repetidores MeshCore não são configurados via Bluetooth. Use sempre a configuração por USB.
-
Preencha as configurações iniciais (veja a seção abaixo).
- Clique em Send Advert — isso ajuda seu companion a encontrar o novo repetidor.
Configuração inicial
Após a gravação, acesse as configurações pela interface web em https://config.meshcore.io/ (com o dispositivo conectado via USB) ou, mais tarde, pelo aplicativo MeshCore via gerenciamento remoto.
Definições de rádio
Ajuste os parâmetros de rádio para a predefinição correta do Brasil:
| Parâmetro | Valor |
|---|---|
| Predefinição | Brazil |
| Frequência | 923.125 MHz |
| Largura de Banda | 62.5 kHz |
| Fator de Espalhamento | 8 |
| Taxa de Codificação | 8 |
Por que esse preset?
A predefinição Australia: SA, WA, Brazil opera na faixa de 915 a 928 MHz, liberada pela Anatel para dispositivos de radiação restrita com até 1 W de potência. A frequência de 923.125 MHz foi a que apresentou menor interferência em nossos testes na região de Sorocaba.
Potência de transmissão (TX Power)
Alguns dispositivos possuem amplificador externo de potência (ex.: Station G2, Ikoka 1W/2W, RAK 1W, Heltec V4). O valor configurado no firmware não considera esse amplificador. Verifique a documentação do seu nó para garantir que a potência final não ultrapasse o limite legal de 30 dBm (1 W).
Nome
Dê ao seu repetidor um nome que indique a localização — um marco, bairro ou ruas principais. Isso ajuda outros usuários a entender a cobertura da rede. Use o Gerador de Nomes para Repetidores para obter um nome que segue os padrões da comunidade.
Localização
Defina a latitude e longitude em formato decimal (ex.: -23.50, -47.46). Isso permite que seu repetidor apareça nos mapas da rede.
Dica
Em vez de usar um módulo GPS (que consome bateria constantemente), defina a posição manualmente pelo mapa na interface de configuração. Basta zoom na sua área, clicar no ponto e salvar.
Senhas
- Admin: defina uma senha forte. É por ela que você acessará o gerenciamento remoto do repetidor.
- Guest: se deixada em branco, qualquer usuário MeshCore poderá ver as informações do proprietário (Owner Info). Se preenchida, será exigida para visualizar esses dados. Normalmente deixamos em branco.
Informações do proprietário (Owner Info)
Campo de texto livre para incluir seu indicativo de radioamador, e-mail, nome no Discord ou qualquer outro contato. Útil caso alguém precise notificar você sobre um problema no repetidor. Isso é opcional e fica a seu critério.
Intervalos de anúncio (Advert Intervals)
Os anúncios informam à rede que o repetidor está ativo e onde está. O MeshCore é econômico com esses anúncios, mas ainda assim vale a pena ajustar:
| Parâmetro | Valor recomendado | Descrição |
|---|---|---|
| Advert Interval (min) | 0 (desativado) | Intervalo entre anúncios diretos (0 hop). |
| Flood Advert Interval (h) | 23 | Intervalo entre anúncios que inundam toda a rede. |
Por que desativar o anúncio de salto zero?
O anúncio direto (0 hop) é redundante na maioria dos casos. O anúncio por inundação (flood) já alcança toda a rede — incluindo esses repetidores — sem custo extra. Desativar o anúncio de salto zero (definindo Advert Interval como 0) economiza tempo no ar e reduz tráfego desnecessário.
Modo de repetição
Certifique-se de que o Repeat Mode está ativado. Sem ele, o repetidor não retransmite pacotes e não contribui para a rede.
Configurações avançadas
As configurações abaixo são opcionais, mas podem melhorar significativamente a performance do seu repetidor e da rede como um todo.
Temporização (txdelay e rxdelay)
Ajustar os atrasos de transmissão e recepção ajuda a reduzir colisões quando há vários repetidores na mesma área. A recomendação é configurar o txdelay de acordo com o perfil de elevação da instalação:
| Perfil | txdelay |
Onde se aplica |
|---|---|---|
| BAIXO | 0.5 | Telhados, postes, nível do solo. Poucos vizinhos, alcance local. |
| MÉDIO | 1.0 | Prédios, torres baixas, morros. Conecta bairros. |
| ALTO | 2.0 | Montanhas, picos, torres altas com visada de 360°. Espinha dorsal regional. |
Comando: set rxdelay 3
Para entender em detalhes como funciona a temporização e a deduplicação de pacotes, consulte a página Temporização e Deduplicação.
Detecção de loop
A detecção de loop faz o repetidor rejeitar pacotes flood que já circularam por ele, evitando que uma mesma mensagem seja retransmitida indefinidamente até o limite de 64 hops — o que gera uma enxurrada de pacotes e congestiona a rede.
O recurso aceita quatro níveis:
| Nível | Comportamento |
|---|---|
off |
Desativado (padrão). |
minimal |
Tolerante — descarta o pacote somente se o ID do repetidor já aparece várias vezes no caminho. Pode ser usado mesmo antes da rede adotar hashes multibyte. |
moderate |
Equilíbrio entre tolerância e proteção. |
strict |
Agressivo — descarta o pacote com pouquíssimas repetições do ID no caminho. |
Valor recomendado: defina como moderate para a maioria dos cenários.
Comando: set loop.detect moderate
Multi ACKs
Ative essa opção. Ela faz o repetidor enviar 2 confirmações em vez de 1, melhorando a experiência de gerenciamento remoto.
Comando: set multi.acks 1
AGC Reset
Se perceber que o repetidor fica "surdo" após algum tempo de funcionamento, configure o intervalo de reset do AGC para um valor maior que 0 (o mínimo é 4). Quanto menor o valor, mais frequente será o reset.
Valor recomendado: 300
Comando: set agc.reset.interval 300
Âmbito de região
O âmbito de região (region scope) é um código embutido no cabeçalho dos pacotes que delimita a área em que o tráfego de inundação (flood) pode se propagar, evitando que mensagens locais (testes no canal público, adverts mal configurados, pacotes de wardriving) saturem o tempo de ar de uma malha grande e a tornem inutilizável — um problema já observado em várias malhas internacionais. Em vez de rotear, a região atua como filtro: a repetidora inspeciona o código de transporte do pacote e só o encaminha se ele corresponder a uma região explicitamente permitida na sua configuração. No Brasil, adota-se uma hierarquia de três níveis baseada em ISO 3166 e no DDD (por exemplo, br para o país, br-sp para o estado de São Paulo e br-sp-15 para a região de Sorocaba), combinada entre os operadores. O importante é não negar o tráfego sem âmbito (*) prematuramente: basta definir as regiões na sua repetidora e deixar que os usuários escolham o âmbito adequado por canal no aplicativo.
Para configurar, entre no gerenciamento remoto e liste as regiões que a sua repetidora cobre — cada nome precisa ser escrito exatamente como o combinado, pois um único erro de digitação gera um hash SHA256 diferente e o tráfego é descartado em silêncio, sem erro nem aviso. A hierarquia é apenas organizacional: definir br não habilita br-sp automaticamente, então cada código precisa ser declarado de forma explícita. Para a região de Sorocaba, por exemplo:
region def br br-sp br-sp-15
region save
Também é possível definir as regiões pelo botão "Gerir Regiões" da interface de gerenciamento remoto. Em qualquer caso, configure apenas regiões cuja cobertura a sua repetidora de fato alcança pelo rádio — listar regiões fora da área de cobertura só gera confusão sem benefício. Para saber mais, consulte o artigo Como funcionam as regiões no MeshCore.
Gerenciamento remoto
Antes de instalar o repetidor em um local de difícil acesso, pratique o gerenciamento remoto usando um companion:
- No app MeshCore, vá em Contato → Adicionar Contato.
- Preencha:
- Tipo: Repeater
- Nome: o nome do seu repetidor
- Chave Pública: a chave gerada durante a configuração
- Salve o contato.
- Clique no nome do repetidor ou clique nos três pontos e selecione Gerir.
- Insira a senha de admin e faça login.
Agora você pode ver estatísticas, emitir comandos de console e reconfigurar o repetidor sem precisar de acesso físico.
Posicionamento
Um repetidor com antena omnidirecional precisa de linha de visada para outros repetidores. Isso significa instalá-lo o mais alto possível:
- No telhado ou em um mastro acima da laje
- Em local aberto, sem obstáculos próximos
- Para antenas direcionais, aponte para o repetidor que deseja conectar
Quanto melhor o posicionamento, maior o alcance efetivo e menos repetidores a rede precisa para cobrir a mesma área.
Testando seu repetidor
Depois de configurada e instalada:
- Acesse o CoreScope e busque pelo nome ou chave pública do seu repetidor.
- Pelo app ou gerenciamento remoto, emita o comando de anúncio para forçar o repetidor a se anunciar.
- No CoreScope, expanda um anúncio recente e verifique as visualizações Paths e Graph — elas mostram quem está recebendo seus anúncios diretamente e via mesh.
Se seu repetidor aparece no mapa, parabéns! 🎉 Ele está operando e contribuindo para a Mesh Sorocaba.
Sumário de parâmetros
A tabela abaixo resume todos os parâmetros que devem ser configurados em um repetidor, com os valores recomendados para a rede Mesh Sorocaba. Use-a como checklist ao configurar um novo nó.
| Parâmetro CLI | Valor sugerido | O que faz |
|---|---|---|
set radio 923.125,62.5,8,8 |
923.125,62.5,8,8 |
Define frequência (MHz), largura de banda (kHz), fator de espalhamento e taxa de codificação do rádio. |
set advert.interval |
0 |
Intervalo (em minutos) entre anúncios diretos (0 hop). 0 desativa (recomendado) — o anúncio por inundação já cobre nós com linha de visada. |
set flood.advert.interval |
23 |
Intervalo (em horas) entre anúncios que inundam toda a rede. |
set txdelay |
0.5 / 1.0 / 2.0 |
Fator de atraso antes de retransmitir flood. Use 0.5 (baixo), 1.0 (médio) ou 2.0 (alto) conforme a elevação. |
set rxdelay |
3 |
Atraso de processamento para cópias recebidas com sinal fraco, dando prioridade a caminhos fortes. |
set loop.detect |
moderate |
Detecção de loop — descarta pacotes que já circularam pelo nó. |
set multi.acks |
1 |
Ativa envio de 2 confirmações em vez de 1, melhorando a confiabilidade do gerenciamento remoto. |
set agc.reset.interval |
300 |
Intervalo (segundos) para reset do AGC. |
set radio.rxgain |
on |
Ativa o modo de ganho de recepção amplificado (SX12xx / LR1110, firmware ≥ 1.14.1). |
set path.hash.mode |
1 |
Tamanho do hash de caminho nos anúncios. 1 = 2 bytes (65.536 IDs), necessário para redes com muitos repetidores. |
region def |
br br-sp br-sp-15 |
Define o âmbito regional da região de Sorocaba, sem torná-lo padrão |
region save |
Salva as alterações feitas no âmbito de região |