LIBVDEPLUG_VDESL(1)

πŸ’– LIBVDEPLUG_VDESL πŸ’– β€” bestie edition

okay so this is a General Commands Manual page, it's libvdeplug_vdesl(1), and it's literally the whole entire guide to the vdesl vdeplug module. come learn ethernet-over-serial with me, it's gonna be a vibe πŸ¦‹


✨ NAME ✨

libvdeplug_vdesl β€” the vdesl vdeplug module, aka ethernet over serial link 🌈 no cap, that's the whole thing.


🌸 SYNOPSIS 🌸

libvdeplug_vdesl.so

that's it bestie, it's a shared object, she's a plugin, she doesn't have a command line of her own πŸ’…


πŸŽ€ DESCRIPTION πŸŽ€

okay so listen. this libvdeplug module creates point-to-point virtual ethernet networks over serial links. yes, like an actual ethernet network but the cable is a serial line. it's giving magic, lowkey.

this module is one of the libvdeplug4 modules, which means you can drop it into any program that supports vde, like vde_plug, vdens, kvm, qemu, user-mode-linux and virtualbox. she's versatile, she's popular, she fits everywhere 🫢

the vde_plug_url syntax of this module is literally this:

vdesl://device_path [ [ OPTION [ /OPTION]...] ]

so the device path comes first, and then any options get stacked on with slashes. cute, right? ⭐


✨ OPTIONS ✨

one option bestie, but she's an important one:

  • speed=baudrate β€” sets the baud rate of the serial link. this plugin supports these baud rates and ONLY these, so don't get creative: 9600, 19200, 38400, 57600, 115200, 230400, 460800, 500000, 576000, 921600, 1000000, 1152000, 1500000, 2000000, 2500000, 3000000, 3500000, 4000000. 🏎️
⚠️ heads up: high baud rates may not be supported by the uart hardware, or they could give you an unreliable service due to communication errors. and to actually hit those high speeds, the cables should be short and properly shielded from electro-magnetic noise. fr fr, physics is not playing around 😭

πŸ¦‹ EXAMPLES πŸ¦‹

the scenario: two hosts connected by a serial line. like, RS-232 serial ports connected by a null modem cable, or USB-ttl cables, or USB-FTDI boards, or UART pins of a System-on-Chip that are point-to-point connected so that the RXD on one end connects to TXD on the other and viceversa. crossover energy πŸ”€

in the following examples we use the device /dev/ttyAMA0, and you can totally change that to address whatever your actual device is (e.g. /dev/ttyS0, /dev/ttyS1, /dev/ttyUSB0, /dev/ttyACM0...). just make sure no other processes are using the serial port β€” for example, no getty-login process should be active on it. that's the rules bestie, one girl at a time πŸ’…

this command (run it on both hosts) creates two vde namespaces connected by a virtual point-to-point ethernet network:

vdens vdesl:///dev/ttyAMA0

and then run this on both hosts to create a virtual interface named vdesl0 on each end β€” the two interfaces get connected by a 4Mbaud link:

sudo vde_plug -d tap://vdesl0 vdesl:///dev/ttyAMA0[speed=4000000]

look at that [speed=4000000] sitting pretty in the brackets. iconic. πŸ‘‘


πŸ’€ NOTICE πŸ’€

Virtual Distributed Ethernet is not related in any way with www.vde.com ("Verband der Elektrotechnik, Elektronik und Informationstechnik", i.e. the German "Association for Electrical, Electronic & Information Technologies").

same acronym, completely different girlies. do not mix them up πŸ™ˆ

🌈 SEE ALSO 🌈

vde_plug(1), vdens(1) β€” go read these next, they're the besties of this page πŸ’œ


πŸ‘‘ AUTHOR πŸ‘‘

VirtualSquare. Project leader: Renzo Davoli.


and that's the page!! VirtualSquare, November 2020 β€” mwah, go build a serial ethernet link bestie, you've got this πŸŽ€βœ¨