<div dir="ltr"><div><div>Greetings,<br><br>Congrats on OsmoCon 2017!<br><br></div>I have been working with OsmocomBB, osmo-sim-auth, mncc-python projects in Osmocom.<br></div><div>I would like to contribute some code snippets with your acceptance.<br><br>To begin with I have committed:<br>I) MNCC with OsmocomBB - <b><a href="https://github.com/GerardPinto/call-control-mncc-sap" target="_blank">https://github.com/GerardPinto<wbr>/call-control-mncc-sap</a></b> (Has both implementations in Python and C + Tested voice with gsm-fr with gsm audio file - works great).<br></div><div>  
 -  Some of which can be committed to mncc-python? (In order to support 
MNCC with OsmocomBB too) Although, Harald told me it was built for 
OpenNITB - I'm not sure, the relevance of this contribution to this repo?<br><br>Reason:<br>1. Solves some mailing list questions: Some questions on mailing list are pertaining sending voice from PC to phone and receive.<br></div><div>2.
 Useful for test cases: In the future, if 'gsm-efr' codec is 
implemented, we can use these snippets and send audio with gsm-efr 
sample, instead of connecting to LCR (Am I correct?)<br><br></div><div><b>Issues faced</b>: File: l23api.c |  function: l1ctl_rx_traffic_req()<br></div><div>264
 bits (33 bytes) of voice codec are interleaved into 456 bits. The DAC, 
ciphering/deciphering , RF etc. work on 114 bits at a time so, 114 x 4 =
 456.<br></div><div>So Layer23 sends 4 - 114 bits into the queue to Layer1 in function => l1ctl_rx_traffic_req</div><div><b>Code</b>: num = l1a_txq_msgb_count(&l1s.tx_<wbr>queue[L1S_CHAN_TRAFFIC])<br></div><div>if num > 4 dropping traffic frame. (114 x 4)<br></div><div>The code above indicates if queue has any (114 x 4) bits drop the incoming voice request.<br><br>So
 I faced the issue of voice packets getting dropped, but that was just 
twice/thrice and then it did not give me any trouble (I'm not sure how 
it got fixed), I could hear <i><b>clear</b></i> voice gsm-fr on the called party cell phone.<br></div><div><b>My Question is</b>:
 If I happened to send voice packets 33 bytes really fast. There should 
be some kind of buffer rather than a check (Code) and drop frame? - OR 
this case can never happen?<br></div><div>My apologies, if my understanding is incorrect, I just tried to reverse engg. from code and GSM codec available online!<br></div><br>II) osmo-sim-auth with added other SIM related API's (still needs code clean up, SIM 
response check, code re-usable, README.md etc,)<b> <a href="https://github.com/GerardPinto/osmo-sim-auth" target="_blank">https://github.com/GerardPinto<wbr>/osmo-sim-auth</a> <br></b><div> - I did check out PySIM (I think I can add some code to the existing repository, with your permission).<br><br></div><div>Could you please let me know if my osmo-sim-auth repo? If it is correct to combine with PySIM, with the changes done below?<br></div><div>Files modified:<br></div><div>1. SIM.py - Added more API's.<br></div><div>2. osmo-sim-auth.py - Options parser.<br></div><div><br></div><div>Thanks,<br></div>Gerard.</div>