Hi All,
I've just started using batman and was trying to see if I could get it to work over a serial radio link such as the simple serial devices commonly used in cheap drone telemetry. The goal here is to enable low bandwidth but adhoc ip networking.
I had set up a pair of radios to connect using pppd and I was wondering if I could utilise batman to try and create a mesh. An example of setting up the serial ports as ppp interfaces:
$ sudo pppd /dev/ttyUSB0 57600 noauth nodetach 10.42.5.5:
That works fine but applying batman to that interface was unsuccessful. I think that was due to limitations in the ppp and interfaces created by pppd: e.g.
$ sudo batctl if add ppp0 Error - failed to add interface ppp0: Invalid argument
The interface ppp0 was specified as POINTTOPOINT e.g.
$ ip link $ ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 3
I'm not an expert in this so don't have full visibility of all the tools available. I was wondering if there were better ways to set this up, possibly not using pppd? Any guidance would be appreciated.
cheers Peter
On Wednesday, July 12, 2023 6:29:50 AM CEST petermilani80@gmail.com wrote:
Hi All,
I've just started using batman and was trying to see if I could get it to work over a serial radio link such as the simple serial devices commonly used in cheap drone telemetry. The goal here is to enable low bandwidth but adhoc ip networking.
I had set up a pair of radios to connect using pppd and I was wondering if I could utilise batman to try and create a mesh. An example of setting up the serial ports as ppp interfaces:
$ sudo pppd /dev/ttyUSB0 57600 noauth nodetach 10.42.5.5:
That works fine but applying batman to that interface was unsuccessful. I think that was due to limitations in the ppp and interfaces created by pppd: e.g.
$ sudo batctl if add ppp0 Error - failed to add interface ppp0: Invalid argument
The interface ppp0 was specified as POINTTOPOINT e.g.
$ ip link $ ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 3
I'm not an expert in this so don't have full visibility of all the tools available. I was wondering if there were better ways to set this up, possibly not using pppd? Any guidance would be appreciated.
cheers Peter
Hi Peter,
batman-adv requires an Ethernet compatible interface (Layer 2) to operate. PPP interfaces are Layer 3 interfaces (IP Layer), so that will not work. You could make a L2 tunnel over your PPP interface such as l2tp or vxlan and use that. Or perhaps there is a different/better way to enable an Ethernet Link over your drone radio directly ....
Cheers, Simon
Thanks Simon,
So to clarify, PPP relies on a higher level layer than what BATMAN uses? So you have to create an ethernet layer 2 interface using l2tp. But are more or less restricted to point to point routing in that case which l2tp will be travelling across. So there's no alternate method you're aware of that can make use of the general broadcast nature of the underlying radio... e.g.. from an application perspective, I can transmit a serial message from one radio and pick that message with multiple receivers?
cheers Peter
b.a.t.m.a.n@lists.open-mesh.org