Project

General

Profile

Osmocon » History » Revision 8

Revision 7 (Anonymous, 02/19/2016 10:49 PM) → Revision 8/29 (Anonymous, 02/19/2016 10:49 PM)

[[PageOutline]] 
 = osmocon = 

 Osmocon is a console tool for our baseband implementation. 

 It is used to Using osmocon on your (Linux) PC, you can 
  * download a firmware or bootloader arbitrary object code (such as the osomcomBB apps) into your Compal-made Calypso-based phone, 
    using the phone over the serial interface, which is currently implemented for the CompalE88 and the CompalE99. 

 After uploading a firmware, it turns into an protocol described at [wiki:CompalRamloader] 
  * establish HDLC mux/demux, allowing multichannel communication multiplexed communications channels with the device. 

 The phones console is software on one such channel and will be redirected to the terminal on which osmocom runs. 

 Several other HDLC channels are accessible by means of the following unix domain sockets: 
  phone 
   * /tmp/osmocom_l2 is the socket for the [wiki:L1A_L23_Interface] 
  
   * /tmp/osmocon_loader for the [wiki:Bootloader] 


 terminal itself acts as sercomm console to read text messages generated by the phone 

 == Usage == 

  * Connect your Compal phone to a serial port of your PC, using a [wiki:CalypsoSerialCable] (3.3V RS232 on 2.5mm headphone jack) 
  * Start the osmocon program like this 
 {{{ 
 $ ./osmocon -m c123xor -p /dev/ttyUSB0 /path/to/your/object_code.bin 
 }}} 
  * Push the power-on button of your phone (short push, not like a regular phone boot!) 
  * Observe the following output: 
 {{{ 
 got 1 bytes from modem, data looks like: 04  
 got 1 bytes from modem, data looks like: 81  
 got 1 bytes from modem, data looks like: 1b  
 got 1 bytes from modem, data looks like: f6  
 got 1 bytes from modem, data looks like: 02  
 got 1 bytes from modem, data looks like: 00  
 got 1 bytes from modem, data looks like: 41  
 got 1 bytes from modem, data looks like: 01  
 got 1 bytes from modem, data looks like: 40  
 Received PROMPT1 from phone, responding with CMD 
 got 1 bytes from modem, data looks like: 1b  
 got 1 bytes from modem, data looks like: f6  
 got 1 bytes from modem, data looks like: 02  
 got 1 bytes from modem, data looks like: 00  
 got 1 bytes from modem, data looks like: 41  
 got 1 bytes from modem, data looks like: 02  
 got 1 bytes from modem, data looks like: 43  
 Received PROMPT2 from phone, starting download 
 got 1 bytes from modem, data looks like: 1b  
 got 1 bytes from modem, data looks like: f6  
 got 1 bytes from modem, data looks like: 02  
 got 1 bytes from modem, data looks like: 00  
 got 1 bytes from modem, data looks like: 41  
 got 1 bytes from modem, data looks like: 03  
 got 1 bytes from modem, data looks like: 42  
 Received DOWNLOAD ACK from phone, your code is running now! 
 }}} 
  * Observe further output of the serial port generated by the code you have downloaded 
 {{{ 
 Hello World from C program code 
 ====================================================================== 
 Device ID code: B4FB 
 Device Version code: 0000 
 ARM ID code: FFF3 
 cDSP ID code: 0128 
 Die ID code: 6397191EFA039BE7 
 ====================================================================== 
 REG_DPLL=2002 
 CNTL_ARM_CLK=F081 
 CNTL_CLK=FF51 
 CNTL_RST=FFF7 
 CNTL_ARM_DIV=FFF9 
 ====================================================================== 
 REG_DPLL=2193 
 CNTL_ARM_CLK=F081 
 CNTL_CLK=FF51 
 CNTL_RST=FFF7 
 CNTL_ARM_DIV=FFF9 
 ====================================================================== 
 Releasing DSP from Reset 
 Loading initial DSP bootcode 
 Releasing DSP from Reset 
 Setting some api_ndb values 
 Setting API NDB parameters 
 DSP Download Status: 0001 
 DSP API Version: 0DC4 6308 
 Finishing download phase 
 DSP Download Status: 0002 
 DSP API Version: 3606 0000 
 }}} 

 == Known Problems == 

 For some USB-Serial converters (most notably FTDI based cables), you might need the {{{-m c123}}} mode, not the {{{-m c123xor}}} mode. 
Add picture from clipboard (Maximum size: 48.8 MB)