Project

General

Profile

Getting Started » History » Version 10

laforge, 04/21/2022 05:55 PM
update to current state of affairs

1 2 laforge
{{>toc}}
2
3 1 laforge
h1. Getting Started
4
5
This page is a work-in-progress documenting what you need to do to get connected to the [[Community_TDMSS7_Network]] using an icE1usb.
6
7 10 laforge
h1. Required Hardware
8 1 laforge
9
* [[e1-t1-adapter:ICE40_E1_USB_interface|icE1usb]] hardware (contact @sales@sysmocom.de@ for an OCTOI community special price of EUR 75)
10
* GPS antenna with SMA male plug (not included)
11
* Some equipment with an E1 interface which you want to connect to the community network.  Typically this is a PBX with E1/PRI/S2M upstream connection.
12
* Some computer running Linux with a USB host controller to connect the icE1usb to.  Note: Many USB XHCI host controllers suffer from bugs, restricting operation to only one of the two E1 ports, see [[e1-t1-adapter:Isochronous_USB_Issues]] for details. If you have a system with UHCI/OHCI/EHCI, use that.
13
14
h2. Major steps required for setup
15
16
# Installing latest gateware and firmware into the icE1usb
17 10 laforge
# installing [[osmo-e1d:]]
18 1 laforge
# requesting a connection with the OCTOI hub
19
# creating a config file for @osmo-e1d@
20 2 laforge
21 10 laforge
h2. Installing latest gateware and firmware into the icE1usb
22 2 laforge
23
Please follow the instructions of the "icE1usb user manaul":https://downloads.osmocom.org/docs/latest/icE1usb-usermanual.pdf
24
25 1 laforge
Firmware is available from https://downloads.osmocom.org/binaries/icE1usb/firmware/all/
26
27
You will need "dfu-util":http://dfu-util.sourceforge.net/ for performing the USB device firmware upgrade.  Most distributions should have a package for this.
28
29 10 laforge
h2. installing [[osmo-e1d:]]
30 1 laforge
31 10 laforge
h3. via packages
32 2 laforge
33 10 laforge
h3. from source
34
35
As the protocol is still under fluctuation, the lastest patches may not yet be part of the @master@ branch and hence not available as a binary package yet.  If you want to try those, you will need to build [[osmo-e1d:]] from source.
36
37 2 laforge
h4. dependencies
38
39
You will need
40
* build-essential (gcc, binutils, make, ...)
41
* autotools (autoconf, automake)
42
* libtool
43
* pkg-config
44
* talloc
45
* libosmocore
46
* libusb-1.0
47
48
If using distribution packages, make sure you install the _development_ packages (e.g. @libtalloc-dev@).
49
50
h4. building
51
52
<pre>
53
autoreconf -fi
54
./configure
55
make
56
</pre>
57
58
h4. installation (optional)
59
60
you can run osmo-e1d from the build directory, there's no strict need to install it.
61 1 laforge
62 2 laforge
If you do install it using the below instructions, the binary will be in @/usr/local/bin@ or whatever is configured at configure time.
63
64 1 laforge
<pre>
65 2 laforge
make install
66
</pre>
67
68 10 laforge
h2. requesting connection
69 1 laforge
70
Please contact @laforge with your IP address and port number.  *Right now the protocol does not yet support dynamic IP addresses.*
71
72 10 laforge
h2. creating a config file
73 1 laforge
74
A minimal configuration file @osmo-e1d.cfg@ looks like shown below.  @osmo-e1d@ looks for the config file in the current working directory from where you start the program, or you can specify it with @-c@ e.g. @osmo-e1d -c /path/to/my/osmo-e1d.cfg@.
75
76
<pre>
77 10 laforge
log stderr
78
 logging filter all 1
79
 logging color 1
80
 logging print category-hex 0
81
 logging print category 1
82
 logging print thread-id 0
83
 logging timestamp 1
84
 logging print file 1
85
 logging level e1d info
86
 logging level linp info
87 6 laforge
e1d
88
 interface 0 icE1usb
89
  usb-serial SERIAL_NR
90
  line 0
91
   mode e1oip
92 10 laforge
octoi-client HUB_IP HUB_PORT
93
 local-bind LOCAL_IP LOCAL_PORT
94
 account USER_NAME
95
  mode ice1usb
96
  ice1usb serial-number SERIAL_NR
97 6 laforge
</pre>
98 1 laforge
99 6 laforge
Where you need to substitute the upper-case terms as follows:
100 1 laforge
101 6 laforge
|_.Variable|_.Description|
102 1 laforge
|SERIAL_NR|The serial number string (iSerial) of your device as visible for example using @lsusb -v -d 1d50:6145@. Should be a hex digit sequence like @dc697407e74f292@|
103 10 laforge
|LOCAL_IP|The local IP address to be used by osmo-e1d for this line (can be 0.0.0.0 for automatic)|
104 6 laforge
|LOCAL_PORT|The local UDP port to be used by osmo-e1d for this line|
105
|HUB_IP|The remot IP address to be used by osmo-e1d for this line. Provided by @laforge|
106
|HUB_PORT|The remote UDP port to be used by osmo-e1d for this line. Provided by @laforge|
107 10 laforge
|USER_NAME|The username provided by @laforge|
108 6 laforge
109 10 laforge
110 8 laforge
h2. Checking status
111
112 10 laforge
@osmo-e1d@ like most Osmocom software offers a _cisco style_ command line interface called VTY. The VTY of @osmo-e1d@ listens to localhost:4269, so you can use @telnet localhost 4269@ to reach it.  Check commands like @show line@, @show interface@, @show octoi-client@ and @show stats@ for start.
113 8 laforge
114 10 laforge
115 1 laforge
h3. GPS lock status
116
117
To avoid cycle slips, the GPS-DO needs a proper GPS fix
118
119
<pre>
120
osmo-e1d> show interface 
121
Interface #0 (dc697407e74f2922), Driver: usb
122
 GPS-DO: mode=AUTO, fix=TRUE, state=TUNE_FINE antenna=OK, tune=2055/2078, freq_est=30720000
123
</pre>
124
125
If things are good, the state should be TUNE_FINE and antenna=OK.  If you see other output, please check your antenna setup.
126 10 laforge
127
h2. Monitoring
128
129
There are a number of metrics exported by osmo-e1d that help you to analyze the performance and status of your setup.
130
131
See [[Monitoring_via_collectd]] or [[Monitoring_via_Grafana]] 
132
133
h2. Configuring your E1 device
134
135
You should configure your device (PBX, etc.) with settings along the following lines:
136
137
h3. Physcal E1
138
139
* channelized E1 with CRC4
140
* clock master *must* be the icE1usb. Your device (PBX) must recover the clock it receives from icE1usb and use that clock to transmit towards the icE1usb.  This is the classic mode of operation for user equipment attached to public networks.
141
142
h3. Signaling
143
144
* Your PBX is in "User" role, the hub is "Network" role (just like connecting to public ISDN)
145
* Layer 2: Q.921 (LAPD) on TS16
146
* Layer 3: Q.931, ideally DSS1 (Euro-ISDN)
147
* Country Code 49
148
* Area code 030
149
* Phone number: +49-30-xxxx-yyyy where @xxxx@ has to be registered with @laforge and entered into [[Phonebook]]
150
* All other TS (1-15,17-31) can be used for both inbound or outbound channels
Add picture from clipboard (Maximum size: 48.8 MB)