So I've opened a can of brain worms and wondering if a mesh network would be the answer for my configuration, any advice to keep me on track would be great!
Currently I am using an AP to send opc data from my laptop to multiple clients running a websocket to receive and transmit the data over usb to an led driver. All this data comes from the latop, nothing is sent back from the clients.
The only other transmission is from an ipad wirelessly sending midi data to the laptop - often these are the furthest from each other in the network.
This system is used in various venues so needs to be flexible, but once it is setup it remains the same and nothing apart from the ipad moves for the duration of the event. I have been using TP WRN703Ns as the clients for their size and price and looking at the GL.iNet GL-AR300M as an upgrade.
I am working in venues up to about 25x40m with loads of metal rigging truss but I also have some outdoor events covering much larger areas with lots of scaffold structures planned. As I'm at the beginning of getting this to work successfully I want to make sure whatever route I chose is adaptable and expandable in the future.
It sounds like a mesh network, allowing me to add extra websocket nodes would be ideal. Am I right in thinking each one would work as a repeater, expanding the distance of my network from the laptop and allow the ipad to connect at any point?
the most usual physical layout of the hardware is often basically linear with up to 4x clients and drivers.
how easy is it to manage a mesh network? from what I've read it looks like its basically plug and play as it's self-configuring once the nodes are setup.... This is vital as I wont have time to do any network debugging on site.
I really like the idea of a collection of GL-AR300M's all running my websocket I can basically plug in anywhere I need a lighting fixture and they auto connect and expand my network.... is this just a pipe dream?
Not a pipe dream at all. When you said "low bandwidth" one of the challenges of mesh on single-radio devices was eased. Laptops and iPads are generally not mesh participants (they lack the software to do so), but join APs that are connected through a mesh backhaul. Mesh-backed APs (or any "repeater" setup) requires X amount of bandwidth for the clients and another X for the backhaul. On a single-band device, that roughly halves the available throughput.
You should be able to mesh multiple GL-AR300M units (or similar) using something like 802.11s or "ad hoc" and then use a routing protocol such as batman-adv to make your deployment self-configuring (within reason). It's not something that is easy to set up with LuCI, but the config is pretty straightforward in the config files themselves.
This is an excellent use case for a mesh. You get rapid no-configuration deployment and extended range.
The 2.4 band can get slammed with interference in venues where there is a stage production, public use, etc. In a situation where reliability is paramount I'd spend a bit more to get 5 GHz.
If you want an encrypted mesh, the WR703 4/32 devices will be tight on space to install encryption support. Other than that it is very workable. Don't buy any more 4/32 devices in any case; it limits your options.
OK, here's an off-the-cuff description, that I hope is technically correct.
802.11 uses what I would call time slicing. At any moment in time, only one participant is transmitting. Anyone wanting to transmit waits until "clear" before transmitting. In a client-to-AP-to-wired link, if I want to send a packet, I do so:
Slice 1 -- I transmit my data to AP 1
Slice 2 -- wireless is "available" -- AP 1 is sending my data out over the wire
With a repeater or mesh on the same channel
Slice 1 -- I transmit my data to AP 1
Slice 2 -- AP1 transmits my data to AP 2
Slice 3 -- wireless becomes available again -- AP 2 is sending my data out over the wire
So in the first case, one packet, one slice of airtime. In the repeater case, one packet, two slices of airtime
With a dual-radio setup (different than MIMO or multiple antennas), AP 1 on 2.4 GHz (for example) is receiving my data in slice 1, but then using 5 GHz to send it to AP 2, so AP 1 is "free" to receive another packet on 2.4 GHz during slice 2.
Another complication of single-radio devices for AP and mesh at the same time is that the mesh needs to be on the same channel for all nodes that connect. That means the APs for clients are all on the same channel as well. For low-bandwidth systems, this likely won't be a big problem. For high-bandwidth situations, having all APs on the same channel will likely reduce channel capacity as each interferes with the others on the same channel.
The GL.iNet AR750, while not as nice as its replacement, the AR750S, is available on Amazon UK right now at £42. At that price, it might be worth considering. I have a couple of the newer AR750S units and am very happy with them.
The AR300M-Lite units are, I think, a great value at the price. I've been fighting myself back from buying a few "just because". They're not much more expensive than an 802.11n dongle and a lot more useful. If I didn't have 5 Archer C7v2 units that are about to be retired, I probably would have.
I don't know what kind of traffic you're sending, but one way to figure it out is to look at the traffic counters on the interface with either ifconfig (old school / BSD) or ip -s link (Linux "preferred"). You probably could look in LuCI under the realtime graphs as well. I would guess that up to about 1 mbps or so would be considered "low bandwidth" in normal situations. If this is a real-time control or communiication application (meaning responses expected in fractions of a second) latency and packet loss are probably important as well. Hard to say more without knowing more of the application.
When placing the units near metal, if you can "hang them out there a bit" you'll probably have better performance. A wavelength at 2.4 GHz is about 12 cm so we're not talking strung out between poles or anything crazy like that. Even just a few cm off a metal pole or plate might help a lot.
Thanks to help from this forum I've gone from dumbfounded to having 2x WR703s and a WR702 attached to a space BT Smart Hub I found lying around - working really well now.... the AR300M's will be a nice addition for an event this weekend.
Ha glad you explained that, being out by a factor of 10 is never good!!
The processing sketch on my laptop (which is transmitting the data) is running at 30fps, the led driver runs at 400mhz but it is doing a ton of interpolation and dithering to produce a smooth output. So assuming 30fps is the output rate I also agree 2.4Ghz is probably fine - it's going to get a thorough test this weekend anyway with 4 or 5 clients and an AP.
Not got it in me to figure out mesh networking before Sunday!!
It's a non-trivial thing to wrap your head around initially with three or for "layers" involved; the wireless mesh connectivity itself, the interfaces to the mesh, assigning the interfaces to the routing protocol (batman-adv, for example), then your "normal" bridges for connectivity to Ethernet and/or APs. To complicate things, the config for batman-adv changed recently and older docs won't align with newer ones as to how to configure it all. I think it took me a couple weeks to sort out the docs a year or so ago and it's still pretty confusing (though the new config, I think, is a lot clearer).
For a mesh of 5 nodes all in the same room I would not bother with a BATMAN layer, just use the 802.11s built in mesh routing.
The mesh approach to this project would be different. There's no need for LAN-WAN routing or a firewall. You can bridge all the LANs together with a mesh. The LAN IPs must be in the same range but different (192.168.1.1, 192.168.1.2 etc). You can add a wifi AP or an Ethernet port to any of the nodes to bring non-meshing devices (iPhone, Pi, laptop) into the LAN.
Set stp on on all the LANs so you can interconnect the nodes with either Ethernet cable or mesh and problems associated with a network loop will be avoided.