 Hello, DEF CON 29, and welcome to the Ham Radio Village. My name is Tyler Gardner. Call sign, Kilo India 7, Oscar Delta Kilo. Today, I will be presenting amateur radio mesh networking and how mesh network technologies can enable high data rate communications for ham radio operators. Just as a brief introduction, I currently hold a US general class amateur radio license. I also have a master's degree in aerospace engineering. Some of my personal interests include amateur radio, emergency preparedness, assembling computers, and computer programming. Here is a general overview of what I'll be presenting today. I will first talk about what mesh networking is and why amateur radio operators should consider using mesh technologies. I will then talk about the radio spectrum that is available for mesh networking. The performance or data speeds you can see on a mesh network and different network topologies or layouts that you can use. Next, we will get into what types of hardware are available for mesh nodes and the firmware that is typically installed on those nodes. Later, I will go over briefly what it takes to set up a mesh network station or node and some different amateur radio applications of mesh networking. We'll wrap up with a look at my mesh network set up and a field trip to the Dayton Amateur Radio Association Clubhouse. I will then leave you with some suggestions about where you can look for more information. To start out, let's define what a mesh network is. Simply put, a mesh network is a wireless digital TCP-IP network made up of repeaters called nodes. Mesh networking operates on microwave frequencies. Because a mesh network is a TCP-IP network, network-enabled devices such as computers, tablets, and smartphones can connect to a mesh network and communicate over the mesh. To be clear, the term mesh typically refers to a specific network topology or layout. This presentation will cover digital technologies that can be used to form networks of many different topologies. So when I'm talking about mesh networking here, I am more referring to the interconnectable nature of these devices rather than a true mesh topology. As a matter of fact, we'll talk later more about why a true mesh layout isn't always the best topology to use for a network. Now that I've already mentioned nodes, let's talk about what a node is. In amateur radio and digital networking, a node is an individual wireless station. Each node in an amateur network must be licensed using an operator's call sign. Each node must also have a unique name. Mesh network nodes are self-advertising, self-discovering, and self-configuring. In other words, if two nodes are in range of each other, they will automatically connect and form a network. Most nodes consume very little power, with many devices using as little as 3 to 7 watts to run. This makes them very useful for applications where battery power is required, such as portable operations or emergency communications. Conveniently, amateur radio mesh nodes use repurposed, commercially available hardware from manufacturers like Ubiquiti, MicroTik, and TP-Link. To set up these hardware devices as a mesh node, they are flashed with modified firmware. Some nodes allow local devices, such as computers and smartphones, to connect to the mesh network via ethernet or part 15 Wi-Fi. So why should amateur radio operators consider using mesh networking in the first place? Well, there are multiple reasons. Amateur radio operators have always experimented with different technologies, whether for scientific discovery and technological innovation or just for fun. Microwave technologies provide us a new avenue of exploration. Another perhaps more compelling reason, depending on who you talk to, is emergency communications. First responders and emergency personnel today depend more and more on digital technologies for their operations. This slide here shows an excerpt from a final report on the state of Oregon's Cascadia Rising exercise that was conducted in 2016. Note the section circled here in red that reads, existing auxiliary amateur radio processes are slow and not capable of handling the large volumes of traffic expected during an event of this size, mostly due to radio bandwidth issues. Traditional radio voice communications are not sufficient for the large volumes of information and emergency personnel need to communicate and pass today. Even digital modes, such as WinLink, may struggle to transmit the data needed for these emergency events. Therefore, if we as amateur radio operators are to meet the needs of the agencies that we serve, we need to make use of modern technologies. And we need to make sure that we are adapting to those technologies. With that introduction, I hope you now have a general understanding about what a mesh network is and why mesh is useful in amateur radio. Let's jump in now and talk about the radio spectrum available for mesh network use. Amateur radio operators have four primary frequency bands available for mesh networking. The 900 megahertz band, a 2.4 gigahertz band, a 3.4 gigahertz band, and the 5.8 gigahertz band. It is important to note that a large portions of the 2 gigahertz and 5 gigahertz bands are shared with ISM and unlicensed users, in other words, regular Wi-Fi traffic. However, there are some unshared channels available to hams. It is these unshared channels that we want to use so that we can avoid interference from home wireless devices. In the 2.4 gigahertz band, only one channel, channel negative 2, is available for ham radio use and that does not overlap with shared frequencies. If you examine the bandwidth of these channels, channel negative 1 overlaps slightly with the shared frequency space and is therefore often avoided in mesh use. Many more unshared channels are available in the 5 gigahertz band. Now, because the FCC is sunsetting amateur radio access in the 3.4 gigahertz band, I would avoid buying devices for use in that band. In practice, most new nodes should try to use the 5.8 gigahertz band. More frequency spectrum is available in that band. Noise is also less prevalent. The 2.4 gigahertz band is commonly used for mesh networking devices, but it is also very crowded. Many consumer devices use the 2.4 gigahertz band for Wi-Fi and other connections, making it very noisy. The 900 megahertz band is less commonly used for mesh. However, it is great for short distance links where trees and other foliage may be difficult to avoid. Because the 900 megahertz band uses lower frequencies, it is more easily able to penetrate obstacles and obstructions such as trees and foliage. So what type of performance can we expect to get out of an amateur radio mesh network? Well, let's look into that. This slide compares the data rate capabilities of various wireless technologies and the data usage of different use cases. Typical digital amateur radio technologies such as 1200 and 9600 BOD TNCs are commonly used for APRS and WinLink. However, they provide less than 10 kilobits per second of data throughput. Mesh networking with a theoretical achievable 120 megabits per second falls more in line with modern cellular data and Wi-Fi technologies. This capacity allows hams to provide more than just email. With mesh networking, operators can provide infrastructure that supports VoIP calls, video calls, chat programs, direct file transfers, and even live video streams. We have talked about how some bands have more noise than others. In order to support the high data rates that we saw in the previous slide, we need to make sure that our nodes have good connections between them. Two of the metrics that are used to measure a connection quality are signal to noise ratio and link quality. A signal to noise ratio above 30 decibels is great. 10 decibels is usable for some cases, and 6 decibels or less is essentially useless. Link quality is basically a measure of how many packets your node successfully receives from a neighboring node. The goal is to have link quality as close to 100% as possible. When link quality starts to drop, nodes take more time trying to resend data. That slows down a network as a whole. So just remember, you cannot daisy chain multiple links with low link quality. So how do we measure these numbers? Well, luckily, our node hardware can tell us what it's measuring. This is an example of a signal to noise chart in the art and firmware. This chart can be used to troubleshoot connection issues and to aim a directional dish or antenna when you're setting up a node and trying to optimize a link. Because mesh networking uses microwave frequencies, physical obstacles become an issue. Any buildings or trees in the way of our link will cause signal degradation. We also have to consider the Fresno zone when we operate in these frequencies. The Fresno zone can be pictured as an ellipse around the straight line of sight connection between two nodes. Depending on the frequency, the Fresno zone varies in size. We need to keep the Fresno zone clear of the obstacles as much as possible when setting up a link. One thing to remember, a link that works well in the fall or winter may lose performance come spring or summer. Why? Well, if your link or your Fresno zone is in the trees, then the leaves that come in in the spring will cause further obstruction and will cause your link quality to drop. Now that we know that we need to avoid obstacles and keep the Fresno zone clear to maximize the performance of a link, let's look briefly at a tool that we can use to check geographic profiles. Here is an image of a topographical profile generated using the Hey, What's That profiler tool online. This tool allows you to select two or more points on a map and visualize the elevation of terrain between those points. This is very helpful to see if a potential link you are considering is viable or not. If you input the frequency you wish to operate on into the tool, it will also show you the Fresno zone for your link. The link visualized here on this slide actually corresponds to my link from my apartment to the Dayton Amateur Radio Association Clubhouse. That's the same link I showed the Signal to Noise plot for a couple of slides ago. Let me just say I'm very lucky that I live on top of a hill. Now keep in mind that this tool only shows the ground elevation. That means that vegetation, such as trees, which can add 30 to 50 feet of height, do not show up on this tool here. Now that we understand a little bit about the radio spectrum we can use for mesh network and some performance numbers or parameters, let's talk about network topologies. Here are some examples of different network topologies that can be used for mesh networks. The network nodes we'll be looking at are capable of supporting many different network architectures. Shown here on this slide is a classic mesh network, a star and backbone network, and a mixed architecture. Unfortunately, the classic mesh topology is not very practical and usable outside of small use cases, such as your home, shack, within a shelter area, or a gymnasium, or even a small event. It works well when each node can see every other node in the network, and all links are high quality. But in practice, well, there are a few different problems that, if not considered, can cause your mesh network to perform poorly. Two of these problems are known as the hidden node and the unintended link problems. The hidden node problem occurs when two or more nodes are hidden from each other, like in the illustration on the left of this slide. Because the two nodes on either side of the hill cannot see each other, they cannot sequence their transmissions and will end up transmitting at the same time as one another. This doubling will cause most of their packets to interfere with each other, becoming undecodable by other nodes in the network. To compensate for this, these two nodes will try to retransmit their unreceived packets, causing more doubling. So you can see that this sort of starts a vicious cycle. As the hidden nodes continue to retransmit, they will also interfere with other nodes transmitting on the network. One hidden node may not bring down your network, but it will decrease link performance. If more and more hidden nodes are added to a network, performance will decrease drastically. There are a couple of things you can do to minimize this problem. You can make use of dedicated point-to-point links, especially for the backbone links on your network. Minimize areas where you use omnidirectional antennas. Omnis are good for providing local area connections to your network, but they can also easily cause problems, such as this. Now, the other problem shown here, the unintended link problem, happens when two prominent nodes on distant mesh networks inadvertently connect to one another. If the link quality of the long-haul connection is low, these nodes will do nothing but retransmit lost packets. You can minimize this problem by using different network SSIDs, lowering antenna height, and using tilt-down antennas. Better yet, put these prominent nodes on different frequencies. With these problems in mind, let's talk briefly about what you should keep in mind when designing the layout of your network. Remember, your network layout will most likely not look like any of the theoretical layouts I showed earlier. If you want to set up a wide area network, local terrain, available tower or hilltop sites, operator involvement, and your use cases will most likely dictate the size and design of your network. With regard to network resiliency, you may want redundant links for some part of your network. Remember, though, that when you're starting out, you don't need to set up your entire network all at once. Start small, set up a few links, and build from there. Any network is better than no network. Remember to consider what you want to do with your mesh network, what services you may want to host, and who will be the primary users. Effective networks are those that accomplish their intended purpose. All right, now that we have covered quite a bit of theory and network design, how about we talk about some actual hardware? If you remember, I mentioned earlier during the introduction portion of my presentation that most mesh network hardware is repurposed commercially available hardware. Manufacturers, such as Ubiquiti, Microtik, and TP-Link, all have wireless hardware that can be repurposed fairly easily for use as mesh nodes. The devices shown here on this slide are just a few examples. Microtik's HapLite, shown here which sells for around $50, is a great starter device and is also great for home and portable setups, as it can provide a 2.4 gigahertz mesh link, a 5 gigahertz wireless access point for computers and smartphones, and ethernet connectivity for other devices. The mesh firmware that I use and that is widely used in my area is called Arden. The Arden firmware supports more than 50 devices currently. A list of currently supported hardware can be found on ardenmesh.org. I'll talk a little bit more about Arden in a moment. Many devices currently available have a transceiver and antenna integrated into a single unit. Similar to what you would find in many home routers. So when you are shopping for hardware, I would recommend that you look for devices that are multiple input, multiple output capable. Such devices have multiple antennas in them so that they can receive and transmit multiple packets or multiple signals at the same time. If you get a device that needs a separate antenna remember to minimize the length of your feed line. Since we're operating in the microwave bands with this equipment, feed line losses are very high. All right, now on to firmware. As I mentioned, the firmware that I use and that is used by the mesh network I participate in is called Arden. Arden stands for Amateur Radio Emergency Data Network. Arden emerged a while back from the Broadband Hamnet project, which actually created a firmware that runs on older Linksys routers. Arden is based on OpenWRT, a common open source software that can be installed on many routers. As Arden is in continual development, stability updates, performance improvements, and features are steadily being added to the software. Arden currently includes multiple features that provide signal analysis tools and connection metrics. If you don't live physically near anyone who operates an Arden node, you can also use something called tunneling. Tunneling uses the internet to create a link between a tunnel client and a tunnel server. In other words, two different nodes. Obviously, if the internet goes down, so will your tunnel. So that's not a great tool for managing communications. However, tunneling can give you the opportunity to connect to distant mesh networks and experiment. Read up on the requirements for tunneling first, though, since running a tunnel can be a little heavy on your device. And it can cause problems if you are already meshed with a local network and you connect with another larger network. Let's take a look at what the Arden software looks like once installed on a node. Each Arden node can be accessed via a web browser to view its status and edit its configuration. This means that remote nodes can be accessed and managed directly over a mesh network from any internet browser. The screenshot on this slide here shows what the Arden node status page looks like. From here, you can see various pieces of information, including your node's IP address, SSID, channel, and some information about the wireless mesh signal, such as signal noise and the signal to noise ratio. Clicking on the mesh status button gives you information about other devices you are connected to on the local mesh network. Here, you can see that my node, Ki7ODK-HOME, is currently connected wirelessly to my other node, Ki7ODK-NSM2. I also have a couple devices connected via Ethernet to my home node. I'll show you those devices a little later. As you can see, this page also lists the services that other amateur radio operators are currently advertising here on the mesh network. Overall, there were 62 nodes connected to the network when I took this screenshot. Now, clicking the Setup button back on the node status page will take you to the Steadings menu for the node, once you authenticate with a username and password. This is where you can configure the basic radio and network settings for your node. Each Arden node has the ability to provide DHCP leases to local clients connected to the node. Those settings, along with port forwarding and service settings, can be found on this page here. Finally, the firmware for each node can be managed and updated from the administration page. If your node is connected to the internet, then you can update the firmware using the built-in download firmware utility. Otherwise, you can upload an update file from your computer. Additional software packages can be added in the node on this page as well, if you so desire. Now that I've given you a little preview of what hardware is available and what the Arden firmware looks like, let's go over what you need to set up a node. As a minimum, a mesh node needs some form of hardware to run on. That could be any of the ubiquity, micro-tick, or TP-link devices that I've shown so far. Many of those devices use power over ethernet. That means you will also need a power over ethernet injector or power over ethernet capable network switch to power those devices. Now, most of them, when you buy these devices, do come with an injector included. I would just recommend that you check the packaging description to make sure that a PoE injector is included when you buy your device. Otherwise, you'll have to buy one separately. The last thing you really need to set up your node is a computer. Once you buy your hardware, download the firmware, flash the new firmware to your node, and go through the initial setup, you'll be up and running. Now, I know that I gave a very brief preview of what the Arden software looks like, so I understand if some of that seems a little confusing at first glance. Because of time, I'll not be able to go over how to actually flash the Arden software onto a node nor how to set up the initial settings. However, you can find great documentation on that process at ardenmesh.org. Remember, just like any other amateur radio station or endeavor, your mesh station will probably start out small. You may start out with only one node set up in your home or check. As you explore a little more, you may want to connect some devices to your node, like an IP phone or a Raspberry Pi. Eventually, your home setup may include other nodes to provide directional links and other connectivity. It's really up to you to decide what your ideal mesh setup looks like. So what sort of things can you use your mesh node or your mesh network for? Well, some common mesh services include VoIP phone systems and servers, video call services, chat applications, IP cameras for towers and remote sites, file servers, map servers, incident management applications, and more. Really, any type of internet application can be used on a mesh network. The high-speed digital network that an amateur mesh provides can be used for field day to provide network contest logging systems. Mesh networks have also been used to support parades, races, marathons, festivals, and other public events. And as talked about earlier, mesh networks can be a great tool for emergency services and communications. However, remember that when all else fails, amateur radio will fail too if we haven't practiced and prepared. Mesh nodes are not self-powering. They do need backup power. So if you do plan to use your mesh nodes and your mesh network for emergency communications, auxiliary power should be a core part of your infrastructure designed from the beginning. All right, well, now that you've sat through this PowerPoint presentation, how about we go on a field trip? Here is a look at my mesh network setup here inside my apartment. I'm currently using a MicroTik haplight for my local node inside my apartment. The haplight is connected to a Raspberry Pi 3B and a Grandstream VoIP handset. The Raspberry Pi is equipped with a GPS hat that is connected to an extra antenna placed in the window behind me. The GPS hat obtains GPS time to then set the Raspberry Pi's system clock and then provide a network time server for the local mesh. The MicroTik haplight is wirelessly meshed to a nano station and ubiquity bullet that I have housed outside on my porch. Let's go take a look at those devices now. Here's the outside portion of my mesh network setup. You can see here two separate mesh networking devices. The first is the nano station M2 located here on the back of the apartment. The second is the bullet M2 that is connected to the TP-Link grid antenna. This is a directional antenna providing high gain so that I can link to the Dayton Amateur Radio Association Clubhouse omnidirectional node. Both of these devices here are powered by power-refinanted injectors, which I have set up inside Tupperware containers. Now these Tupperware containers I set up this way in order to predict the injectors from rain and other elements since they're situated here outside. All right, now to explain the interconnect between these two devices. The nano station connects to the haplight that I have inside wirelessly. The nano station is then connected via ethernet to its power-refinanted injector. That power-refinanted injector is then connected via ethernet to the other injector, which powers the bolt. That provides a device to device ethernet link so that the nano station and the bullet are not linked wirelessly. That leaves the bullet more free for this wireless link to the Dara Clubhouse. All right, why don't we head to the Dara Clubhouse now to see the equipment there located on the towers. Welcome to the home of the Dayton Amateur Radio Association, also known as Dara, the sponsors of HamVention. The Dayton Amateur Radio Association here at their clubhouse has three separate radio towers. But we today are mainly interested in those devices that are hosted here on the main center radio tower for the Miami Valley Mesh Alliance. Here on the center tower is one omnidirectional antenna and three directional antennas for point-to-point links. If you recall, we talked a little bit about the problems that omnidirectional antennas can cause with the hidden node problem and the unintended link problem. In order to deal with the unintended link problem, the Miami Valley Mesh Alliance currently uses different SSIDs for their different omnidirectional nodes. The node here is the north node. So it has a label N on the end of the SSID for north. The three directional antennas here, used for the point-to-point links, are linking to other towers, hospitals, or other locations in the area. To give you an idea of the performance of the omnidirectional antenna here for the link that I'm using to my apartment, if you recall back to the signal-to-noise ratio plot that I showed earlier in my presentation, I was getting a signal-to-noise ratio of about 24 decimals. And my apartment is a little over four miles south-south-east of this location. With that, I'm achieving about a 6 to 10 megabits per second data rate for my link. During the winter months, when there are not leaves on the trees in between my apartment and here, the clubhouse, my signal-to-noise ratio improves a little bit, upwards of 30 decibels per second. However, the data rate of my link does not really improve because my node is a hidden node. There are two or three other nodes here in the neighborhood that are connected to the omnidirectional antenna. But because my node cannot see them, there are collisions that happen, causing my link quality to drop. So keep in mind that omnidirectional antennas like this one are good for providing local neighborhood links to your mesh network. However, point-to-point links with directional antennas are often much better performing and don't have problems with unintended links or a hidden node problem. Well, thank you, everyone, for watching today. I really appreciate the opportunity to present here, and I hope you've learned at least a little bit about amateur radio mesh networking. If you would like to learn more, here are some sites that you can check out. I've mentioned the first website multiple times now, but feel free to check out ardenmesh.org. There's a lot of great documentation and material on the arden website about mesh networking. You can also find information about another mesh offering at hemwin.org. The profiling tool that I showed earlier can be found at haywhatsthat.com slash profiler.html. I also have listed here what's called a Viewshed Analysis tool that can be found at caltopo.com slash map.html. A Viewshed Analysis tool can be used to visualize what area a node can cover. For example, if you're planning to place a node on a mountain peak, you can use the caltopo Viewshed Analysis tool to place a Viewshed point on top of the mountain peak you're considering, and the tool will shade the areas that will be visible to that node for coverage. Here are some references and acknowledgments that I would like to include in my presentation today. First off, I would like to acknowledge and thank Bill Curtis, WA8APB for the material that he has in his presentation, high-speed broadband wireless networks. I would also like to mention the presentation by Steve Averly, designing a radio-based dead-end network. That's also a good reference if you wish to look that up. That was used for the RatPat group that was presented earlier this year. I would also like to thank the Dayton Amateur Radio Association for allowing me to record portions of this presentation in front of their clubhouse. And finally, I would also like to acknowledge the Miami Valley Mesh Alliance. That is the group that I am part of here, and that is the mesh network that I participate in here in Dayton, Ohio. Well, thank you very much. If there are any questions, I will go ahead and answer those now.