OpenBSC + * + LCR -> Problems with LCR (--with-gsm-bs)

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Ellen Apolinar ellen.apolinar.td at googlemail.com
Tue Jun 26 14:26:51 UTC 2012


@Don: Thanks, yes, that was the problem. I didn't know that the version
from linux-call-router.de is so old.

@Mailinglist:

I tried it again. And this time I installed it from git:

> git clone git://git.misdn.eu/lcr.git/
> cd /usr/src/lcr
> ./configure –without-asterisk --with-gsm-bs
> make
> make install
>

In the last installation I installed it from linux-call-router.de.
Configuration with --with-sip wasn't available.

lcr start:

> ** LCR  Version 1.10
>
> ERROR Cannot get device information for port 1. (ioctl IMGETDEVINFO failed
> ret=-1)
> LCR 1.10 started, waiting for calls...
>

lcradmin state

> Ext(port 0: hfc-e1.1) TE ptp l2hold use:0  L2 unkn  L1 unkn
> Int (port 1: ) extension  not loaded
>


Also OpenBSC worked. Now I get this error massage:

> ./osmo-nitb -c openbsc.cfg -C
> 1 device found
>         id:             0
>         Dprotocols:     00000018
>         Bprotocols:     0000006e
>         protocol:       3
>         nrbchan:        30
>         name:           hfc-e1.1
> could not bind l2 socket Device or resource busy
> <0005> bsc_init.c:512 Error enabling E1 input driver
>

I don't know what is wrong and how I can solve this. Google wasn't very
helpful in this case.

And how can I connect LCR to OpenBSC?

And what can I do with lcradmin state?

Best regards
Ellen

2012/6/26 Ellen Apolinar <ellen.apolinar.td at googlemail.com>

> Hey Andreas,
>
> I try the way over SIP. But perhaps I make something wrong.
>
> What I want to do:
>
>> cd /usr/src/lcr
>> ./configure --prefix=/usr/src/lcr --without-misdn --with-sip
>>
>
> What I get:
>
>> configure: WARNING: unrecognized options: --without-misdn, --with-sip
>>
>
> What I am able to do:
>
>> ./configure --prefix=/usr/src/lcr --with
>> --with-asterisk    --with-gsm-ms      --with-PACKAGE
>> --with-ssl
>> --with-gsm-bs      --without-PACKAGE  --with-ss5
>>
>
> Makefile:
>
>> ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE = #
>> ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE =
>> ENABLE_GSM_BS_FALSE = #
>> ENABLE_GSM_BS_TRUE =
>> ENABLE_GSM_FALSE = #
>> ENABLE_GSM_MS_FALSE =
>> ENABLE_GSM_MS_TRUE = #
>> ENABLE_GSM_TRUE =
>> ENABLE_SS5_FALSE =
>> ENABLE_SS5_TRUE = #
>>
>
> I change to:
>
>> ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE = #
>> ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE =
>> ENABLE_GSM_BS_FALSE =
>> ENABLE_GSM_BS_TRUE = #
>> ENABLE_GSM_FALSE = #
>> ENABLE_GSM_MS_FALSE = #
>> ENABLE_GSM_MS_TRUE =
>> ENABLE_GSM_TRUE =
>> ENABLE_SS5_FALSE =
>> ENABLE_SS5_TRUE = #
>>
>
> make:
>
>> make  all-am
>> make[1]: Entering directory `/usr/src/lcr'
>> gcc   -DWITH_GSM_BS -I./openbsc/include -I./libosmocore/include
>> -I./openbsc   -Wall -DCONFIG_DATA="\"/usr/local/lcr\""
>> -DSHARE_DATA="\"/usr/local/lcr\"" -DLOG_DIR="\"/usr/local/lcr\""
>> -DEXTENSION_DATA="\"/usr/local/lcr/extensions\"" -D_GNU_SOURCE -fPIC -c
>> chan_lcr.c -o chan_lcr.po
>> chan_lcr.c: In function ‘send_setup_to_lcr’:
>> chan_lcr.c:644:12: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:655:12: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c: In function ‘lcr_in_setup’:
>> chan_lcr.c:858:2: warning: passing argument 9 of ‘__ast_channel_alloc’
>> makes integer from pointer without a cast [enabled by default]
>> /usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but argument
>> is of type ‘char *’
>> chan_lcr.c:883:6: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:885:6: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:887:6: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:890:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:893:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:896:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:900:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:903:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:906:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:909:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c: In function ‘handle_queue’:
>> chan_lcr.c:1707:18: error: incompatible types when assigning to type
>> ‘union ast_frame_subclass’ from type ‘char’
>> chan_lcr.c: In function ‘lcr_request’:
>> chan_lcr.c:1820:2: warning: passing argument 9 of ‘__ast_channel_alloc’
>> makes integer from pointer without a cast [enabled by default]
>> /usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but argument
>> is of type ‘char *’
>> chan_lcr.c: In function ‘lcr_call’:
>> chan_lcr.c:1927:9: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1927:31: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1928:29: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1931:9: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1931:32: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1932:30: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1934:9: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1934:33: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1935:31: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c: In function ‘lcr_write’:
>> chan_lcr.c:2164:6: error: wrong type argument to unary exclamation mark
>> chan_lcr.c:2166:20: error: invalid operands to binary & (have ‘union
>> ast_frame_subclass’ and ‘format_t’)
>> chan_lcr.c: In function ‘lcr_read’:
>> chan_lcr.c:2229:25: error: incompatible types when assigning to type
>> ‘union ast_frame_subclass’ from type ‘format_t’
>> chan_lcr.c: In function ‘lcr_indicate’:
>> chan_lcr.c:2274:8: warning: assignment from incompatible pointer type
>> [enabled by default]
>> chan_lcr.c:2289:8: warning: assignment from incompatible pointer type
>> [enabled by default]
>> chan_lcr.c:2316:8: warning: assignment from incompatible pointer type
>> [enabled by default]
>> chan_lcr.c:2381:14: error: dereferencing pointer to incomplete type
>> chan_lcr.c:2382:33: error: dereferencing pointer to incomplete type
>> chan_lcr.c: At top level:
>> chan_lcr.c:2602:2: warning: initialization from incompatible pointer type
>> [enabled by default]
>> chan_lcr.c:2602:2: warning: (near initialization for
>> ‘lcr_tech.requester’) [enabled by default]
>> chan_lcr.c: In function ‘load_module’:
>> chan_lcr.c:2818:2: warning: passing argument 2 of
>> ‘ast_register_application2’ from incompatible pointer type [enabled by
>> default]
>> /usr/include/asterisk/module.h:458:5: note: expected ‘int (*)(struct
>> ast_channel *, const char *)’ but argument is of type ‘int (*)(struct
>> ast_channel *, void *)’
>> make[1]: *** [chan_lcr.po] Error 1
>> make[1]: Leaving directory `/usr/src/lcr'
>> make: *** [all] Error 2
>>
>
> make install:
>
>> gcc   -DWITH_GSM_BS -I./openbsc/include -I./libosmocore/include
>> -I./openbsc   -Wall -DCONFIG_DATA="\"/usr/local/lcr\""
>> -DSHARE_DATA="\"/usr/local/lcr\"" -DLOG_DIR="\"/usr/local/lcr\""
>> -DEXTENSION_DATA="\"/usr/local/lcr/extensions\"" -D_GNU_SOURCE -fPIC -c
>> chan_lcr.c -o chan_lcr.po
>> chan_lcr.c: In function ‘send_setup_to_lcr’:
>> chan_lcr.c:644:12: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:655:12: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c: In function ‘lcr_in_setup’:
>> chan_lcr.c:858:2: warning: passing argument 9 of ‘__ast_channel_alloc’
>> makes integer from pointer without a cast [enabled by default]
>> /usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but argument
>> is of type ‘char *’
>> chan_lcr.c:883:6: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:885:6: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:887:6: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:890:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:893:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:896:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:900:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:903:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:906:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:909:7: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c: In function ‘handle_queue’:
>> chan_lcr.c:1707:18: error: incompatible types when assigning to type
>> ‘union ast_frame_subclass’ from type ‘char’
>> chan_lcr.c: In function ‘lcr_request’:
>> chan_lcr.c:1820:2: warning: passing argument 9 of ‘__ast_channel_alloc’
>> makes integer from pointer without a cast [enabled by default]
>> /usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but argument
>> is of type ‘char *’
>> chan_lcr.c: In function ‘lcr_call’:
>> chan_lcr.c:1927:9: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1927:31: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1928:29: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1931:9: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1931:32: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1932:30: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1934:9: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1934:33: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c:1935:31: error: ‘struct ast_channel’ has no member named ‘cid’
>> chan_lcr.c: In function ‘lcr_write’:
>> chan_lcr.c:2164:6: error: wrong type argument to unary exclamation mark
>> chan_lcr.c:2166:20: error: invalid operands to binary & (have ‘union
>> ast_frame_subclass’ and ‘format_t’)
>> chan_lcr.c: In function ‘lcr_read’:
>> chan_lcr.c:2229:25: error: incompatible types when assigning to type
>> ‘union ast_frame_subclass’ from type ‘format_t’
>> chan_lcr.c: In function ‘lcr_indicate’:
>> chan_lcr.c:2274:8: warning: assignment from incompatible pointer type
>> [enabled by default]
>> chan_lcr.c:2289:8: warning: assignment from incompatible pointer type
>> [enabled by default]
>> chan_lcr.c:2316:8: warning: assignment from incompatible pointer type
>> [enabled by default]
>> chan_lcr.c:2381:14: error: dereferencing pointer to incomplete type
>> chan_lcr.c:2382:33: error: dereferencing pointer to incomplete type
>> chan_lcr.c: At top level:
>> chan_lcr.c:2602:2: warning: initialization from incompatible pointer type
>> [enabled by default]
>> chan_lcr.c:2602:2: warning: (near initialization for
>> ‘lcr_tech.requester’) [enabled by default]
>> chan_lcr.c: In function ‘load_module’:
>> chan_lcr.c:2818:2: warning: passing argument 2 of
>> ‘ast_register_application2’ from incompatible pointer type [enabled by
>> default]
>> /usr/include/asterisk/module.h:458:5: note: expected ‘int (*)(struct
>> ast_channel *, const char *)’ but argument is of type ‘int (*)(struct
>> ast_channel *, void *)’
>>
>
> lcr start:
>
>> ** LCR  Version 1.7
>>
>> 000000 DEBUG (in getrulesetbyname() line 1871): ruleset main found.
>> GSM is enabled, but not compiled. Use --with-gsm-bs or --with-gsm-ms
>> while configure!
>> --------------------- 2012.06.26 10:35:27 000001
>>
>> 000001 DEBUG (in join_free() line 99): no more pending join(s), done!
>>
>
> Sofiasip is installed. Is there anything I forget so I can't configure LCR
> with sip?
>
> Best regards.
> Ellen
>
>
> 2012/6/24 Andreas Eversberg <andreas at eversberg.eu>
>
>> Ellen Apolinar wrote:
>>
>>>
>>> OpenBSC seems to work without errors but to connect it with asterisk I
>>> need mISDN, mISDNuser and LCR.
>>>
>>>  hi,
>>
>> if you like to use lcr with gsm (bs or ms), then you cannot use asterisk
>> channel driver. it only works with isdn. but you can use sip. in order to
>> do that you may:
>>
>> - disable mISDN  (--without-misdn)
>> - enable sip (--with-sip), you also need to have sipsofia installed
>> - add a sip interface (see default/interface.conf). then everything is
>> possible without mISDN, but you cannot use isdn phones/lines in this setup.
>>
>> example to just connect GSM and SIP interface without routing:
>>
>>  [GSM]
>> gsm-bs
>> tones yes
>> earlyb no
>> #rtp-bridge
>> bridge SIP
>>
>>
>> [SIP]
>> sip <local ip>[:local sip port] <asterisk sip ip>[:asterisk sip port]
>> tones no
>> earlyb yes
>> #rtp-bridge
>> bridge GSM
>>
>> if asterisk and lcr run on the same machine, you need to change the sip
>> port on asterisk or lcr side.
>>
>> if you like to use GSM codec on asterisk side, you may enable rtp-bridge.
>> then the asterisk directly negotiates the codec with the phone.
>> in this case GSM codec must be supported by asterisk. tested codecs are
>> FR(standard) and EFR.
>>
>> regards,
>>
>> andreas
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/openbsc/attachments/20120626/a081a5bd/attachment.htm>


More information about the OpenBSC mailing list