FYI
---------- Forwarded message ----------
From: Gregory Nutt <spudarnia(a)yahoo.com>
Date: Sun, 15 May 2011 07:52:18 -0700 (PDT)
Subject: Re: Fwd: RFC: RTOS for Calypso
To: Alan Carvalho de Assis <acassis(a)gmail.com>
Hi Alan,
I also notice that they are using a TI dual core, ARM7TDMI and C5 DSP.
I already have support for a TI chip like that (the C5471) and also
for an ARM9 with C5 DSP (DM320).
See http://focus.ti.com.cn/cn/lit/ml/sprt239/sprt239.pdf
I have a c5 DSP bridge driver somewhere around on my backup disks as
well. I never released it into NuttX because there was never any
need. Perhaps that could be useful now.
Somewhere I also have tools that will convert the TI proprietary
object files and logic to manage loading different programs into the
DSP. The bridge also supports communication channels to communicate
with the DSP.
Greg
Hi!
Is AreasOfWork in the wiki still up to date? I intend to work on the UI
(Sorry Dieter, GSM testset too expensive at the moment :( ) and want to
choose a RTOS. A small collection that I came across:
FreeRTOS
What is the problem?
TNKernel
http://www.tnkernel.com/tn_description.html
Scheduler, Mutexes, Queues, etc. available
strange (at least unfamiliar) API for memory
eCos
http://ecos.sourceware.org/about.html
many target MCUs but are their any other than ARM in BB chipsets?
powerful but complex (at least at first glance)
NUT/OS
http://www.ethernut.de/en/
minimalistic RTOS, easy to port
seems to have sound community
familiar APIs: malloc, fopen's devices, ...
cooperative multithreading: Is that OK? We still have IRQs for
realtime...
Since we seem to barely need an OS, a full-blown OS like eCos seems
excessive. For compatibility with MT6235 user space, malloc and fopen is
the right direction. Hence, my favourite is NUT/OS. In fact, I tried
porting it to calypso just for fun. With some wrappers, Osmocom's
platform files can be used. Only turns on the backlight and occasionally
outputs some bytes on the UART at the moment. However, I still call this
success. It took me just a day from knowing nothing about NUT/OS and
very little about calypso and ARM to do this. Seems promising in terms
of portability and documentation to me.
Open question: How much overhead can we afford, i.e., how much spare
time is there on the CPU? Does "Disable RTC interrupt as it causes lost
TDMA frames" (layer1/init.c) indicate issues? (Yes, sorry, haven't read
GSM specs yet...) If yes, is it reasonable to independently handle GSM
stuff with FIQ and only give IRQ to whatever OS we choose?
Regards,
Stefan
So any ideea where to look for the answer to the UPDATE_BINARY message?
Can I have a buffer overflow on UART RX? Is the buffer size selectable
somewhere?
--- On Wed, 5/4/11, eisencah eisenach <wbg_1000(a)yahoo.com> wrote:
From: eisencah eisenach <wbg_1000(a)yahoo.com>
Subject: Re: mobile - making a call
To: baseband-devel(a)lists.osmocom.org
Date: Wednesday, May 4, 2011, 4:58 PM
Done some more digging in the logs and it seems the sim state machine has locked earlier (when attaching to the network) while waiting for some response on UPDATE BINARY. Does this sounds familiar to anyone? :)
GOOD CASE:
[0;m[1;32m<0004> gsm48_mm.c:1557 AUTHENTICATION RESPONSE
[0;m[1;34m<0001> gsm48_rr.c:4904 (ms 1) Message 'RR_DATA_REQ' received in state dedicated
[0;m[1;34m<0001> gsm48_rr.c:235 Using and incrementing V(SD) = 0 (pdisc 5)
[0;m[0;35m<000e> sim.c:209 got new job: SIM_JOB_UPDATE_BINARY (handle=00000005)
[0;m[0;35m<000e> sim.c:241 SELECT (file=0x6f20)
[0;m[0;35m<000e> sim.c:187 sending APDU (class 0xa0, ins 0xa4)
[0;m[0;35m<000e> sim.c:876 received APDU (len=0 sw1=0x9f sw2=0x0f)
[0;m[0;35m<000e> sim.c:949 command
successfull
[0;m[0;35m<000e> sim.c:571 GET RESPONSE (len=15)
[0;m[0;35m<000e> sim.c:187 sending APDU (class 0xa0, ins 0xc0)
[0;m[0;35m<000e> sim.c:876 received APDU (len=15 sw1=0x90 sw2=0x00)
[0;m[0;35m<000e> sim.c:949 command successfull
[0;m[0;35m<000e> sim.c:294 UPDATE BINARY (offset=0 len=9)
[0;m[0;35m<000e> sim.c:187 sending APDU (class 0xa0, ins 0xd6)
[0;m[0;35m<000e> sim.c:876 received APDU (len=0 sw1=0x90 sw2=0x00)
[0;m[0;35m<000e> sim.c:949 command successfull
[0;m[0;35m<000e> sim.c:151 sending result to callback function (type=0)
[0;m[1;34m<0001> gsm48_rr.c:4488 Indicated ta 0 (actual ta 0)
BAD CASE:
[0;m[1;32m<0004> gsm48_mm.c:1557 AUTHENTICATION RESPONSE
[0;m[1;34m<0001> gsm48_rr.c:4904 (ms 1) Message 'RR_DATA_REQ' received in state dedicated
[0;m[1;34m<0001> gsm48_rr.c:235 Using and
incrementing V(SD) = 0 (pdisc 5)
[0;m[0;35m<000e> sim.c:209 got new job: SIM_JOB_UPDATE_BINARY (handle=00000005)
[0;m[0;35m<000e> sim.c:241 SELECT (file=0x6f20)
[0;m[0;35m<000e> sim.c:187 sending APDU (class 0xa0, ins 0xa4)
[0;m[0;35m<000e> sim.c:876 received APDU (len=0 sw1=0x9f sw2=0x0f)
[0;m[0;35m<000e> sim.c:949 command successfull
[0;m[0;35m<000e> sim.c:571 GET RESPONSE (len=15)
[0;m[0;35m<000e> sim.c:187 sending APDU (class 0xa0, ins 0xc0)
[0;m[0;35m<000e> sim.c:876 received APDU (len=15 sw1=0x90 sw2=0x00)
[0;m[0;35m<000e> sim.c:949 command successfull
[0;m[0;35m<000e> sim.c:294 UPDATE BINARY (offset=0 len=9)
[0;m[0;35m<000e> sim.c:187 sending APDU (class 0xa0, ins 0xd6)
[0;m[1;32m<0004> gsm48_mm.c:3695 (ms 1) Received 'RR_DATA_IND' from RR in state location updating initiated
--- On Wed, 5/4/11, Harald
Welte <laforge(a)gnumonks.org> wrote:
From: Harald Welte <laforge(a)gnumonks.org>
Subject: Re: mobile - making a call
To: "eisencah eisenach" <wbg_1000(a)yahoo.com>
Date: Wednesday, May 4, 2011, 11:59 AM
On Tue, May 03, 2011 at 03:02:58AM -0700, eisencah eisenach wrote:
> So is as if the message for the sim job doesn't get pulled from the
> queue, "got new job: SIM_JOB_RUN_GSM_ALGO " never appears. Must say
> the computer I use osmocom on is not exactly a rocket :) (is a 500Mhz
> celeron with ubuntu 6.10) , and It gets slowed down when running the
> hole thing. Can that be the cause? Mihai.
The L1CTL protocol goes through a unix domain socket, and you can trace
it in either osmocon or in the mobile program itself. It should
be
relatively easy to detect if the RUN_GSM_ALGO is transmitted by mobile,
or if it is lost, where it is lost.
--
- Harald Welte <laforge(a)gnumonks.org> http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)
Hi,
I have a problem with the DP-L10.
The upload the firmware in the phone is not succesfull.
I have made following steps:
- change the UART number in the two header files
- compile the source
- connected the phone with laptop
- run the command "./host/osmocon/osmocon -p /dev/ttyUSB0 -m romload
./target/firmware/board/pirelli_dpl10/layer1.highram.bin"
- put the accu in the mobile phone
the upload the firmware start and the last message from osmocon is:
handle_write_block(): 64 bytes (1024/1024)
handle_write_block(): Block 51 finished
Finished, sent 51 blocks in total
Received block ack from phone
Sending checksum: 0x55
I have follow message expected:
Received block ack from phone
Sending checksum: 0xaa
Checksum on phone side matches, let's branch to your code
Branching to 0x00820000
Received branch ack, your code is running now!
I see not the error.
Can you please a idea give.
Marco
Hi,
when compiling the firmware I get the following error:
make[2]: Entering directory
`/home/hoffmaje/proseminar/install/osmocom-bb/src/target/firmware'
LD board/mt62xx/loader_mtk.mtkram.elf
arm-elf-ld: region LRAM is full (board/mt62xx/loader_mtk.mtkram.elf
section .rodata)
arm-elf-ld: region LRAM is full (board/mt62xx/loader_mtk.mtkram.elf
section .rodata)
I used a tool-chain mentioned in a post from 18. January 2011:
ftp://ftp.pengutronix.de/pub/oselas/oselas.toolchain-1.99.3.6-arm-elf-gcc-4.3.2-newlib-1.16.0-binutils-2.18_i386.tar.bz2
I read the PreliminaryRequirements
<http://www.osmocom.org/trac/wiki/PreliminaryRequirements>, the archives
and I did a google search; I would be even glad just to understand what
this error is about.
Thanks for your help,
Jens
Hello Gianni,
On Fri, 13 May 2011 11:41:35 +0100, "Gianni Tedesco" <gianni(a)scaramanga.co.uk> wrote:
>
> Any idea of model numbers? The ones I've looked at have been > $1,000
> and only do calls, not SMS for example.
The Racal 6103E can do SMS and sometimes is available for less than
$US 500 (a few cheap ones were sold in the UK a while ago). Be aware
of the 6103G or the "Anite" variant, they cannot be used "standalone".
Best regards,
Dieter
--
Dieter Spaar, Germany spaar(a)mirider.augusta.de
Hi.
I'm trying to follow the logic described in app_ccch_scan to send RACH bursts to my
openbts.
First 2-2 goes fine but after that I got constant errors - see below.
It looks like after I've sent couple of packets something got corrupted in L1.
How can I debug this and understand what causing all the errors?
LOG:
<0001> app_rach_send.c:227 registering signal handler...
<0001> app_rach_send.c:229 resetting L1...
<0001> app_rach_send.c:231 L3 init...
<0001> app_rach_send.c:190 requesting FBSB from L1...
<0001> app_rach_send.c:200 unhandled callback 1 <S_L1CTL_FBSB_RESP> fired...
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:73 SI2 on the wrong TC: 0
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:75 SI3 on the wrong TC: 0
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:75 SI3 on the wrong TC: 0
<0001> app_rach_send.c:200 unhandled callback 5 <S_L1CTL_CCCH_MODE_CONF> fired...
<0001> app_rach_send.c:200 unhandled callback 5 <S_L1CTL_CCCH_MODE_CONF> fired...
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:86 SI4 on the wrong TC: 0
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:86 SI4 on the wrong TC: 0
...
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:86 SI4 on the wrong TC: 0
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:70 SI1 received.
<0001> app_rach_send.c:127 sending RACH #0 on ARFCN 21...
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:127 sending RACH #1 on ARFCN 21...
<0001> app_rach_send.c:111 obtained BCCH, dumping...
<0001> app_rach_send.c:127 sending RACH #2 on ARFCN 21...
<0000> rslms.c:136 unknown RSLms msg_discr 0x0c
<0000> rslms.c:136 unknown RSLms msg_discr 0x0c
<0000> rslms.c:136 unknown RSLms msg_discr 0x0c
<000b> l1ctl.c:210 Dropping frame with 80 bit errors
<000b> l1ctl.c:210 Dropping frame with 80 bit errors
<000b> l1ctl.c:210 Dropping frame with 80 bit errors
<000b> l1ctl.c:210 Dropping frame with 59 bit errors
<000b> l1ctl.c:210 Dropping frame with 59 bit errors
<000b> l1ctl.c:210 Dropping frame with 59 bit errors
<000b> l1ctl.c:210 Dropping frame with 58 bit errors
<000b> l1ctl.c:210 Dropping frame with 58 bit errors
<000b> l1ctl.c:210 Dropping frame with 58 bit errors
<000b> l1ctl.c:210 Dropping frame with 61 bit errors
<000b> l1ctl.c:210 Dropping frame with 61 bit errors
<000b> l1ctl.c:210 Dropping frame with 61 bit errors
<000b> l1ctl.c:210 Dropping frame with 62 bit errors
<000b> l1ctl.c:210 Dropping frame with 60 bit errors
<000b> l1ctl.c:210 Dropping frame with 61 bit errors
<000b> l1ctl.c:210 Dropping frame with 61 bit errors