(→/etc/osmocom/osmo-e1d.cfg) |
(→/etc/osmocom/osmo-e1d.cfg) |
||
(25 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== Why not TDMoIP / CESoIP? == | == Why not TDMoIP / CESoIP? == | ||
− | Usual E1/T1 over IP protocols use generic frames over IP transfer that makes 2 megabits constant rate with up to 8000 packets per second. That approach: | + | Usual E1/T1 over IP protocols use generic frames over IP transfer that makes more than 2 megabits constant rate with up to 8000 packets per second. That approach: |
* not suitable for distributed sites with limited internet access | * not suitable for distributed sites with limited internet access | ||
* makes constant parasite load on the servers | * makes constant parasite load on the servers | ||
Line 21: | Line 21: | ||
* open-source hardware design | * open-source hardware design | ||
* [https://github.com/osmocom/osmo-e1d open-source user-space driver], no need for the kernel driver | * [https://github.com/osmocom/osmo-e1d open-source user-space driver], no need for the kernel driver | ||
− | * suitable API for our purposes | + | * suitable API for our purposes (at least full-frame mode) |
* available at [https://sysmocom.de/products/lab/icE1usb/index.html Sysmocom's web shop] | * available at [https://sysmocom.de/products/lab/icE1usb/index.html Sysmocom's web shop] | ||
User manual can be found [https://ftp.osmocom.org/docs/latest/icE1usb-usermanual.pdf here]. | User manual can be found [https://ftp.osmocom.org/docs/latest/icE1usb-usermanual.pdf here]. | ||
− | === Driver installation | + | = NOTICE = |
+ | |||
+ | '''Please be careful! Or your device will be damaged!''' | ||
+ | Front-panel RJ45 connectors accepts 120 Om E1. Back-panel RJ45 is for GPIO and accepts TTL only. Don't try to connect the device to Ethernet. | ||
+ | USB-C port should be connected to computer, since it's just an interface. Minijack connector is only to reprogram firmware. | ||
+ | Also please configure properly internal jumpers to master (NE) or slave (NT) E1 mode. | ||
+ | |||
+ | PLEASE READ [https://ftp.osmocom.org/docs/latest/icE1usb-usermanual.pdf USER MANUAL] FIRST. | ||
+ | |||
+ | == Driver installation == | ||
We maintained [https://osmocom.org/projects/osmo-e1d/wiki Osmocom E1D] in our Debian repository (amd64, arm64). It has no modifications so you can use any source of packages you want or build from the sources. | We maintained [https://osmocom.org/projects/osmo-e1d/wiki Osmocom E1D] in our Debian repository (amd64, arm64). It has no modifications so you can use any source of packages you want or build from the sources. | ||
Line 37: | Line 46: | ||
<pre> | <pre> | ||
− | log | + | log syslog daemon |
− | + | ||
e1d | e1d | ||
− | |||
interface 0 icE1usb | interface 0 icE1usb | ||
usb-serial [interface serial number] | usb-serial [interface serial number] | ||
line 0 | line 0 | ||
− | |||
</pre> | </pre> | ||
− | More information about logging section can be found [https://ftp.osmocom.org/docs/latest/osmomsc-vty-reference.pdf here] | + | More information about logging section can be found [https://ftp.osmocom.org/docs/latest/osmomsc-vty-reference.pdf here], [https://osmocom.org/news/9 here] and [https://gitea.osmocom.org/osmocom/libosmocore/src/branch/master/src/vty/logging_vty.c here].<br/> |
(If you care about configuration file format, please check the sources [https://github.com/osmocom/osmo-e1d/blob/97b15ae3970701d20bb35eca771d6ddc87c703af/src/vty.c#L220 here]). | (If you care about configuration file format, please check the sources [https://github.com/osmocom/osmo-e1d/blob/97b15ae3970701d20bb35eca771d6ddc87c703af/src/vty.c#L220 here]). | ||
+ | |||
+ | How to find a serial number of connected icE1usb: | ||
+ | <pre>sudo lsusb -d 1d50:6145 -v 2> /dev/null | grep iSerial</pre> | ||
+ | |||
+ | Reload a service: | ||
+ | <pre>sudo systemctl restart osmo-e1d</pre> | ||
+ | |||
+ | You can also test your configuration from the command line: | ||
+ | <pre>sudo osmo-e1d -c /etc/osmocom/osmo-e1d.cfg</pre> | ||
+ | |||
+ | == Issues with the second E1 port == | ||
+ | |||
+ | ''Please note that on many XHCI host controllers there seem to be implementation flaws in the XHCI host controller firmware preventing the activation of both icE1usb ports simultaneously. The XHCI controller firmware erroneously claims that there is insufficient bus bandwidth. However, the same icE1usb hardware/firmware works perfectly fine with OHCI, UHCI and EHCI host controllers. See https://osmocom.org/projects/e1-t1-adapter/wiki/Isochronous_USB_Issues for a user-maintained list of USB hosts / controllers and whether or not they work with two E1 ports.'' | ||
+ | |||
+ | In most installations it's not a real issue, because most of installations need in a single port only. |
Usual E1/T1 over IP protocols use generic frames over IP transfer that makes more than 2 megabits constant rate with up to 8000 packets per second. That approach:
Fur such kind of integrations we prefer to have our own agent software on-site with hardware E1/T1 interfaces.
We have chosen Osmocom icE1usb as a primary interface for our projects for several reasons:
User manual can be found here.
Please be careful! Or your device will be damaged! Front-panel RJ45 connectors accepts 120 Om E1. Back-panel RJ45 is for GPIO and accepts TTL only. Don't try to connect the device to Ethernet. USB-C port should be connected to computer, since it's just an interface. Minijack connector is only to reprogram firmware. Also please configure properly internal jumpers to master (NE) or slave (NT) E1 mode.
PLEASE READ USER MANUAL FIRST.
We maintained Osmocom E1D in our Debian repository (amd64, arm64). It has no modifications so you can use any source of packages you want or build from the sources.
sudo apt install osmo-e1d
log syslog daemon e1d interface 0 icE1usb usb-serial [interface serial number] line 0
More information about logging section can be found here, here and here.
(If you care about configuration file format, please check the sources here).
How to find a serial number of connected icE1usb:
sudo lsusb -d 1d50:6145 -v 2> /dev/null | grep iSerial
Reload a service:
sudo systemctl restart osmo-e1d
You can also test your configuration from the command line:
sudo osmo-e1d -c /etc/osmocom/osmo-e1d.cfg
Please note that on many XHCI host controllers there seem to be implementation flaws in the XHCI host controller firmware preventing the activation of both icE1usb ports simultaneously. The XHCI controller firmware erroneously claims that there is insufficient bus bandwidth. However, the same icE1usb hardware/firmware works perfectly fine with OHCI, UHCI and EHCI host controllers. See https://osmocom.org/projects/e1-t1-adapter/wiki/Isochronous_USB_Issues for a user-maintained list of USB hosts / controllers and whether or not they work with two E1 ports.
In most installations it's not a real issue, because most of installations need in a single port only.
Usual E1/T1 over IP protocols use generic frames over IP transfer that makes 2 megabits constant rate with up to 8000 packets per second. That approach:
Fur such kind of integrations we prefer to have our own agent software on-site with hardware E1/T1 interfaces.
We have chosen Osmocom icE1usb as a primary interface for our projects for several reasons:
User manual can be found here.
We maintained Osmocom E1D in our Debian repository (amd64, arm64). It has no modifications so you can use any source of packages you want or build from the sources.
sudo apt install osmo-e1d
log stderr ! logging level e1d info e1d virtual-e1-pair 32 interface 0 icE1usb usb-serial [interface serial number] line 0 mode superchannel
More information about logging section can be found here and here.
(If you care about configuration file format, please check the sources here).