docs › How it works › Hops
weechat-radio:$ Hops
A group on one frequency can all take part, even when some stations cannot hear some of the others. A station that hears a message keeps a copy and sends it again. That extra send is a hop (a relay).
The first two maps are radio only. The hub is not in that path. The third map is the same four cities on 20m, with Lisbon on internet-radio and Bucharest on internet. The program does not change your dial. Two different bands are a separate problem. See cross-frequency chat.
- station in the group
- the hop, on the air
- reach used in that drawing
20m, across Europe
Watch a direct message from Lisbon reach Bucharest in three hops, and the receipt come back the same way.
All four stations are on 14.070 MHz USB, the worldwide 20m calling spot. On a rough path the preset is hf-poor.
On 20m a station often hears others hundreds of kilometres away, and sometimes well over a thousand. It does not hear every other station in Europe at the same time, and the distance changes through the day. Stations that are quite close can sit in the skip zone (too near for the skywave reflection, too far for the wave that hugs the ground). This map uses one reach, about 1,300 km, so the chain is clear. The dashed curve is that distance from each station, drawn toward the next one.
- Lisbon hears Barcelona (about 1,000 km).
- Barcelona hears Munich (about 1,050 km).
- Munich hears Bucharest (about 1,200 km).
- Lisbon does not hear Munich (about 2,000 km) or Bucharest (about 3,000 km).
- Barcelona does not hear Bucharest (about 2,000 km).
The station in Lisbon sends a direct message to Bucharest.
- Lisbon transmits it with 3 hops left.
- Barcelona hears it, keeps it, and sends it on with 2 hops left.
- Munich hears Barcelona and sends it on with 1 hop left.
- Bucharest hears Munich. Hops left is now 0, so Bucharest reads the line and does not send it on.
Barcelona and Munich have the line as well. They heard it on the way. The four of them are one group, and Lisbon never heard Bucharest directly.
What the program does
A normal message goes out with 3 hops left. A priority message, one that starts with !, starts with 4. An emergency message, !!, starts with 5. An invite to a closed group starts with the group's 6, so it reaches every station the group does.
The first time a station hears the message, it shows the line locally and subtracts one from hops left. If any hops remain, and this station did not write the message, it waits a short random moment (so two relays do not transmit together) and sends the message again.
Hearing the same message a second time does not send it again, except when the originator retries an id this station already relayed and no station further along has been heard. That copy is relayed again, at most once per originator retry. A direct message is relayed on each retry even after a station further along was heard: one hop on says nothing about its addressee, whose ACK alone ends it. A #bulletin relay keeps sending on that schedule until a station further along is heard, because the sender stops at the first ACK. An ACK back to the sender uses the same hop count as the message. The station that wrote the ACK retries it, and each hop relays those retries, until a station closer to the sender is heard. If this station was waiting to relay and then hears someone else relay it, it cancels its own send. When hops left hits 0, the station that has the message can still read it, and it does not transmit it.
A normal message can cross three radio legs. On the radio-only maps that is enough to go from the first station to the last. The program does not measure kilometres. It relays a frame it decoded, on the same frequency, while hops remain.
2m, around Kyiv
Same rules, a much shorter reach. 2m is mostly line of sight (the signal travels until a building, a hill, or the horizon blocks it). This map uses about 25 km: the next town, not the far side of the city. The dashed ring is that distance around each station in the group.
All four stations are on 144.950 MHz FM, the UK/EU 2m calling spot.
- Bucha hears Kyiv (about 25 km).
- Kyiv hears Brovary (about 20 km).
- Brovary hears Boryspil (about 21 km).
- Kyiv does not hear Boryspil (about 32 km).
- Bucha does not hear Brovary (about 41 km) or Boryspil (about 57 km).
A line from Bucha follows the same three legs.
- Bucha transmits it with 3 hops left.
- Kyiv hears it, keeps it, and sends it on with 2 hops left.
- Brovary hears Kyiv and sends it on with 1 hop left.
- Boryspil hears Brovary. Hops left is now 0, so Boryspil reads the line and does not send it on.
Kyiv and Brovary have the line too. Bucha and Boryspil never hear each other. The group still shares the message, town to town, on one dial.
Same 20m map, with the hub
Lisbon switches to internet-radio. Bucharest switches to internet. Barcelona and Munich stay on radio. The distances are the ones from the first map. Bucharest's radio is off, so this drawing gives Bucharest no reach curve.
Internet-radio still transmits on the dial. It also uses the hub when the station it is calling has not been heard on that dial. Internet has no radio. It reads and sends only through the hub, and it does not take part in an air hop.
- internet-radio
- internet
- radio
- on the air
- through the hub
- transmitted, not heard
Lisbon calls Bucharest. This is one station calling another. Lisbon has not heard Bucharest on 14.070, so the call goes to the hub as well as onto the air.
- Lisbon transmits on 14.070 with 3 hops left, and sends the same line to the hub.
- Barcelona hears Lisbon on the air and sends it on with 2 hops left. Barcelona is in
radiomode, so Barcelona does not send the chat to the hub. - Munich hears Barcelona and sends it on with 1 hop left. That transmission would reach Bucharest, about 1,200 km. Bucharest's radio is off, so it is not heard.
- Bucharest reads the line from the hub. An internet station does not transmit, so Bucharest does not send it on.
Barcelona and Munich have the copy from the air. Bucharest has the copy from the hub. Lisbon and Bucharest still do not hear each other on 20m.
In radio mode the line is marked to stay off the internet. The air hops would run the same way and stop in the same place, and the hub would not have a copy for Bucharest. radio-plus is the same on this computer: Lisbon would still key the line and would still not open the hub. The only difference is the flag on the frame. An internet-radio gateway that hears a radio-plus frame may forward it (and email) to the internet. Both modes still post map data when [telemetry] url is set: callsign, grid, and tx/rx ids, never message text.
What a hop is not
A hop stays on the frequency you are already using. It is not a voice repeater you have to set up, and it does not move a message from 2m to 20m. On one dial, an internet-radio station can also hand the same line to the hub when the other station has not been heard on the air. Crossing from one band to another still needs a gateway and the hub.
Band-to-band path: cross-frequency chat. Suggested dials: calling frequencies. Same text offline: wcr help hops.