voltando a versao de n aberturas e fechamentos de sockets

Dependencies:   EthernetInterface NTPClient mbed-rtos_old mbed

Fork of header_main_public by VZTECH

Files at this revision

API Documentation at this revision

Comitter:
klauss
Date:
Fri Sep 19 17:39:09 2014 +0000
Parent:
17:67a6b557eda5
Commit message:
hills_01

Changed in this revision

EALib.lib Show diff for this revision Revisions of this file
configs.cpp Show annotated file Show diff for this revision Revisions of this file
configs.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed-rtos.lib Show annotated file Show diff for this revision Revisions of this file
prompt.cpp Show diff for this revision Revisions of this file
prompt.h Show diff for this revision Revisions of this file
sip.cpp Show annotated file Show diff for this revision Revisions of this file
sip.h Show annotated file Show diff for this revision Revisions of this file
utils.cpp Show annotated file Show diff for this revision Revisions of this file
utils.h Show annotated file Show diff for this revision Revisions of this file
vz_protocol.cpp Show annotated file Show diff for this revision Revisions of this file
vz_protocol.h Show annotated file Show diff for this revision Revisions of this file
wdt.cpp Show diff for this revision Revisions of this file
wdt.h Show diff for this revision Revisions of this file
--- a/EALib.lib	Fri Sep 19 16:40:17 2014 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-http://mbed.org/users/embeddedartists/code/EALib/#eb9809f2ab86
--- a/configs.cpp	Fri Sep 19 16:40:17 2014 +0000
+++ b/configs.cpp	Fri Sep 19 17:39:09 2014 +0000
@@ -8,17 +8,11 @@
 //                             Pins/Modules Config
 //***************************************************************************** 
 
-QSPIFileSystem qspifs("qspi");  // file system
-
-Watchdog wdt;
-
 DigitalOut led1(LED1);
 DigitalOut led2(LED2);
 DigitalOut led3(LED3);
 DigitalOut led4(LED4);
 
-DigitalOut hack_led( p24 );
-
 DigitalOut DataReady(p11);                  //IO 27        
 
 DigitalOut data0(p30);                      //LSB
@@ -47,13 +41,13 @@
 
 void start_cpld( void ) {                        //CPLD Start
 
-    static uint16_t reset = 0;//10000;
+    static uint16_t reset = 10000;
     ENABLE_F_REG = 1;                                
     ENABLE_F_TX = 1;
     ENABLE_F_RX = 1;
     DataReady = 0;
     RST = 1;
-    while( reset++ < 10000 ){}
+    while(reset--){}
     RST = 0;        
 }
 
--- a/configs.h	Fri Sep 19 16:40:17 2014 +0000
+++ b/configs.h	Fri Sep 19 17:39:09 2014 +0000
@@ -1,20 +1,13 @@
 #ifndef _CONFIGS_H
 #define _CONFIGS_H
 #include "mbed.h"
-#include "wdt.h"
-#include "QSPIFileSystem.h"
 
 #define DATA_SIZE         300
 
-extern Watchdog wdt;
-
-extern QSPIFileSystem qspifs;       //FileSystem
-
 extern DigitalOut led1;
 extern DigitalOut led2;
 extern DigitalOut led3;
 extern DigitalOut led4;
-extern DigitalOut hack_led;
 
 extern DigitalOut DataReady;                  //IO 27        
 
--- a/main.cpp	Fri Sep 19 16:40:17 2014 +0000
+++ b/main.cpp	Fri Sep 19 17:39:09 2014 +0000
@@ -3,7 +3,7 @@
 #include "configs.h"
 #include "UART3Interrupt.h"
 #include "parallelcpld.h"
-#include "prompt.h"
+
 #include "debug.h"
 #include "utils.h"
 
@@ -27,8 +27,6 @@
 int main(){
     start_cpld();
     config_lpc();
-    init_fsystem();
-    wdt.Configure( 40.0 );
     
     /* referencia e inicio da conexao com a ethernet */
     EthernetInterface eth;
@@ -36,8 +34,7 @@
     int eth_status = __init_eth__( &eth );
     
     if( eth_status ){
-        debug_msg("Sem conexao eth");
-        //NVIC_SystemReset();
+        debug_msg("Sem conexao eth");    
     }
         
     /* debugs */
@@ -104,9 +101,7 @@
     }
     reset_leds();
     debug_msg( " Ready " );
-    while( true ){
-        prompt_process();
-        wdt.kick();   
+    while( true ){    
         if( status != __WAITING__ ){
             __read_cb_buffer__( buffer, buffer_from_cb_ptr );     
             status = __WAITING__;
@@ -114,7 +109,7 @@
             data = __parse_cb_buffer__( &ext, &port, &type, buffer );
             
             if( data != NULL ){                
-                debug_msg("Package from :: %d -- Type :: %d", ext, type );
+                debug_msg("Procurando pelo CBx :: %d -- Type :: %d", ext, type );
                 if( type != __AUDIO__ ){
                     Call_Box * cb = __find_CB__( v_cb, ext );
                     if( cb != NULL ){
@@ -138,17 +133,14 @@
             }else type = __DO_NOTHING__;
         }
 //----------------------
-            if( t.read() > 5 ){
-                if( debug_alive ){
-                    for( register uint8_t i = 0; i < v_cb->size(); i++ ){
-                        Call_Box * cb = ( Call_Box * )v_cb->get_element( i );
-                        debug_msg(" Type ::  %d -- Ext :: %d -- TimeSlice :: %d -- remain_timeslices :: %d :: v_call->size() :: %d :: Status :: %d :: SIP Status %d", type , cb->get_ext(), cb->get_timeslice(), ts->remain_timeslices(), v_call->size(), cb->status, cb->sip->status );
-                    }
-                    if( v_cb->size() != 0 ) debug_msg("");
+            if( t.read() > 5 ){            
+                for( register uint8_t i = 0; i < v_cb->size(); i++ ){
+                    Call_Box * cb = ( Call_Box * )v_cb->get_element( i );
+                    debug_msg(" Type ::  %d -- Ext :: %d -- TimeSlice :: %d -- remain_timeslices :: %d :: v_call->size() :: %d :: Status :: %d :: SIP Status %d", type , cb->get_ext(), cb->get_timeslice(), ts->remain_timeslices(), v_call->size(), cb->status, cb->sip->status );
                 }
+                debug_msg("");
                 t.reset();
                 led3 = !led3;
-                hack_led = !hack_led;
             }
 //----------------------
         switch( type ){
@@ -158,6 +150,7 @@
             case __CB_BYE__ : {
                 Call_Box * cb = __find_CB__( v_cb, ext );
                 if( cb != NULL ){
+                    debug_msg("Nao encontrado CBx :: %d -- Type :: %d", ext, type );
                     data[ 0 ] |= BIT7;
                     cb->set_msg_id( data[ 0 ] );
                     debug_msg( " Request bye from CBx " );
@@ -184,6 +177,7 @@
                 debug_msg("ok -- recebido o invite pelo menos");
                 Call_Box * cb = __find_CB__( v_cb, ext );
                 if( cb == NULL ){
+                    debug_msg("Nao encontrado CBx :: %d -- Type :: %d", ext, type );
                     cb = new Call_Box( ext, port );
                     v_cb->add( cb );
                     set_status( cb->status, cb_idle );
@@ -202,7 +196,7 @@
                     break;
                 }
                 set_status( cb->status, cb_trying );
-                debug_msg("Invite request from CBx -- %d :: Status %d", ext, cb->status );
+                debug_msg(" Ok temos um cbx encontrado com status :: %d", cb->status );
                 switch( cb->status ){
                     case cb_on_call : {
                         // a priori, nao fazer nada
@@ -245,7 +239,7 @@
                                 debug_msg(" -- %d on %d -- ", cb->get_ext(), data[ __TIMESLICE_PLACE__ ] );
                                 __send_to_cb__( __build_cb_package__( ext, port, __INVITE__, 
                                     ( char * )data, cb->get_msg_id(), __CB_BUFFER_SIZE__ - __VZ_HEADER_OFFSET__, write_buffer ) );
-                                debug_msg( "-- Trying -- aceitando pedido de invite --" );
+                                debug_msg( "-- Trying -- aceitando pedido de invite -- %s ", write_buffer );
                                 //debug_pkg( 300, write_buffer );
                             }else{
                                 set_status( cb->status,cb_idle);
@@ -255,21 +249,13 @@
                                 debug_msg(" -- %d on %d -- ", cb->get_ext(), data[ __TIMESLICE_PLACE__ ] );
                                 __send_to_cb__( __build_cb_package__( ext, port, __CB_BYE__, 
                                     ( char * )data, cb->get_msg_id(), __CB_BUFFER_SIZE__ - __VZ_HEADER_OFFSET__, write_buffer ) );
-                                debug_msg( "-- Trying -- Negando pedido de invite --" );
+                                debug_msg( "-- Trying -- Negando pedido de invite -- %s ", write_buffer );
                                 set_status( cb->sip->status, sip_idle);
                             }
                         }
                     }break;                    
                     case cb_busy : {
-                        set_status( cb->status,cb_idle);
-                        ts->return_timeslice( cb->get_timeslice() );
-                        cb->set_timeslice( 0x00 );
-                        data[ __TIMESLICE_PLACE__ ] = 0x00;
-                        debug_msg(" -- %d on %d -- ", cb->get_ext(), data[ __TIMESLICE_PLACE__ ] );
-                        __send_to_cb__( __build_cb_package__( ext, port, __CB_BYE__, 
-                            ( char * )data, cb->get_msg_id(), __CB_BUFFER_SIZE__ - __VZ_HEADER_OFFSET__, write_buffer ) );
-                        debug_msg( "-- Trying -- Negando pedido de invite << Busy Here >> --" );
-                        set_status( cb->sip->status, sip_idle );
+                        // tratar sip
                     }break;
                 }                            
             }break;
@@ -282,6 +268,7 @@
                     cb->reset_elapsed_time();
                     debug_msg(" reset_elapsed_time CBx -- %d", ext );
                 }else{
+                    debug_msg("Nao encontrado CBx :: %d -- Type :: %d", ext, type );
                     cb = new Call_Box( ext, port );
                     v_cb->add( cb );
                     debug_msg(" Criado CBx -- %d", ext );
@@ -310,6 +297,8 @@
                     call->send_message( pkg );
                     cb = __find_CB__( v_cb, ext );
                     if( cb != NULL ) cb->reset_elapsed_time();
+                }else{
+                    debug_msg("Nao encontrado CBx :: %d -- Type :: %d", ext, type );
                 }
             }break;
         }// fim switch
@@ -324,7 +313,7 @@
                 
                 if( cb != NULL ){
                     cb_port = cb->get_port();
-                }
+                }else debug_msg("Nao encontrado CBx :: %d -- Type :: %d", ext, type );
                                 
                 uint8_t * pkg2cb = __build_cb_package__( call->get_cb_ext(), cb_port, __AUDIO__, 
                     tmp, __AUDIO__, length, write_buffer );
@@ -357,7 +346,7 @@
                     cb->reset_sip();
                     set_status( cb->sip->status, sip_idle );
                 }
-            }
+            }else debug_msg("Nao encontrado CBx :: %d -- Type :: %d", ext, type );
         }
         
         call_manager( v_call, v_cb, buffer, write_buffer, ts );
--- a/mbed-rtos.lib	Fri Sep 19 16:40:17 2014 +0000
+++ b/mbed-rtos.lib	Fri Sep 19 17:39:09 2014 +0000
@@ -1,1 +1,1 @@
-http://mbed.org/users/mbed_official/code/mbed-rtos/#143f8e17efc5
+http://mbed.org/teams/VZTECH/code/mbed-rtos/#bd07334df5b1
--- a/prompt.cpp	Fri Sep 19 16:40:17 2014 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,346 +0,0 @@
-#include "mbed.h"
-#include "stdint.h"
-#include "configs.h"
-#include "vz_protocol.h"
-#include "parallelcpld.h"
-//#include "debug.h"
-
-uint8_t debug_alive = 1;
-
-#define PVERSION 1          // Sempre atualizar a versao do prompt
-
-#define DEBUGBUFSIZE 40
-char debug_buf[DEBUGBUFSIZE];
-FILE *fip,*fmask,*fgate,*fport,*fsip,*fsport; 
-uint8_t dog = 1;
-uint8_t debug_prompt = 0;
-uint8_t bufptr = 0;
- 
-
-uint8_t xmemmatch(const uint8_t * s1, const uint8_t * s2, uint16_t size) {      // presente da lib.h pode retirar da versao final
-  while (size--) {
-    if (*s1++ != *s2++) return 0; /* does not match */
-  }
-  return 1; /* matches */
-}
-
-uint8_t xstrmatch(const uint8_t * s1, const uint8_t * s2) {                     // presente na lib.h pode retirar da versao final
-  while (*s1) {
-    if (*s1++ != *s2++) return 0; /* does not match */
-  }
-  if ( *s2 == 0 )
-    return 1; /* matches */
-  else
-    return 0; /* does not match */
-}
-
-void xmemcpy(uint8_t * dest, const uint8_t * src, uint16_t size) {              // presente na lib.h pode retirar da versao final
-  while (size--) *dest++ = *src++;
-}
-
-
-void cat(const char* fname)                                                     // Print the content of a given file
-{
-    char buff[513];
-    int num;
-    
-    FILE *fp = fopen(fname, "r");
-    if (fp == NULL) {
-        pc.printf("Failed to open %s\n", fname);
-        return;
-    }
-    
-    while ((num = fread(buff, 1, 512, fp)) > 0)
-    {
-        buff[num] = '\0';
-        pc.printf(buff);
-    
-    }
-    fclose(fp);
-}
-
-
-void files (const char type) {                                          // operantion with the system config files
-       
-    if (type == 's' ){                // show files
-        pc.printf("\n\r");
-        pc.printf("1)IP, 2)MASK, 3)GATEWAY, 4)SIP PORT, 5)SERVER IP, 6)SERVER SIP PORT\n\r");
-        cat("/qspi/myip.txt");
-        cat("/qspi/mymask.txt");
-        cat("/qspi/mygate.txt");
-        cat("/qspi/mysipport.txt");
-        cat("/qspi/serverip.txt");
-        cat("/qspi/serverport.txt");
-    }
-    
-    
-    if (type == 'c' ){                // close all files
-        fclose(fip);
-        fclose(fmask);
-        fclose(fgate);
-        fclose(fport);
-        fclose(fsip);
-        fclose(fsport);
-        
-    }    
-    
-    if (type == 'i' ){                // Check if files exist, if not create the files
-        fip = fopen("/qspi/myip.txt", "r");
-        if (fip == NULL){
-            fip = fopen("/qspi/myip.txt", "w");
-            fprintf(fip, "192.168.120.169\n\r");   //myip
-        }
-        fmask = fopen("/qspi/mymask.txt", "r");
-        if (fmask == NULL){
-            fmask = fopen("/qspi/mymask.txt", "w");
-            fprintf(fmask, "255.255.255.0\n\r");     //mymask
-        }
-        fgate = fopen("/qspi/mygateway.txt", "r");
-        if (fgate == NULL){
-            fgate = fopen("/qspi/mygate.txt", "w");
-            fprintf(fgate, "192.168.2.254\n\r");    //mygateway
-        }
-        fport = fopen("/qspi/mysipport.txt", "r");
-        if (fport == NULL){
-            fport = fopen("/qspi/mysipport.txt", "w");
-            fprintf(fport, "5075\n\r");  //mysipport
-        }
-        fsip = fopen("/qspi/serverip.txt", "r");
-        if (fsip == NULL){
-             fsip = fopen("/qspi/serverip.txt", "w");
-             fprintf(fsip, "192.168.30.25\n\r");  //asterisk ip
-        }
-        fsport = fopen("/qspi/serverport.txt", "r");
-        if (fsport == NULL){
-            fsport = fopen("/qspi/serverport.txt", "w");
-            fprintf(fsport, "5060\n\r");  //asterisk port
-        pc.printf("\n\r Default configurations set! \n\r");
-        }
-        
-    }
-    
-    if (type == 'r' ){                // Just open for read
-        fip = fopen("/qspi/myip.txt", "r");
-        fmask = fopen("/qspi/mymask.txt", "r");
-        fgate = fopen("/qspi/mygateway.txt", "r");
-        fport = fopen("/qspi/mysipport.txt", "r");
-        fsip = fopen("/qspi/serverip.txt", "r");
-        fsport = fopen("/qspi/serverport.txt", "r");
-    }
-        
-    if (type == 'w'){                 // Create and write the default configs
-        fip = fopen("/qspi/myip.txt", "w");
-        fmask = fopen("/qspi/mymask.txt", "w");
-        fgate = fopen("/qspi/mygateway.txt", "w");
-        fport = fopen("/qspi/mysipport.txt", "w");
-        fsip = fopen("/qspi/serverip.txt", "w");
-        fsport = fopen("/qspi/serverport.txt", "w");   
-        
-        fprintf(fip, "192.168.120.169\n\r");   //myip
-        fprintf(fmask, "255.255.255.0\n\r");     //mymask
-        fprintf(fgate, "192.168.2.254\n\r");    //mygateway
-        fprintf(fport, "5075\n\r");  //mysipport
-        fprintf(fsip, "192.168.30.25\n\r");  //asterisk ip
-        fprintf(fsport, "5060\n\r");  //asterisk port
-        
-        files('c');
-        
-        pc.printf("\n\r Default configurations set! \n\r");
-             
-    }
-    
-}
-
-void init_fsystem(){                 // init file system and check if files exist
-    if (!qspifs.isformatted()) {
-        qspifs.format();
-        pc.printf("File system configured!!\n\r");
-    }
-    
-    files('i');   // check if the files are created
-    files('c');
-    pc.printf("*******System Ready*******\n\r");
-}
-
-
-void prompt_process(){              // main prompt process
-    volatile char b = 0;
-    static uint8_t bufret = 0;
-    
-    if (pc.readable()){
-            
-            b = pc.getc();
-            
-            if (b == 0x0D){
-            bufret = 1;
-            }
-            else{
-            pc.putc(b); 
-            debug_buf[bufptr] = b;
-            bufptr++;
-            }
-        }
-        
-    if (bufret == 1){                   // Prompt commands here
-    
-    
-         if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "sconfig" )) {
-             pc.printf("\n\r");
-             files('s');
-          }
- 
-         
-          if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "format" )) {
-             pc.printf("\n Formatando o sistema de arquivos... espere o sistema reiniciar \n\r");
-             qspifs.format();
-             NVIC_SystemReset();
-          }
-          
-          if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "ipset ",6 )) {
-             fip = fopen("/qspi/myip.txt", "w");
-             fprintf(fip,"%s\n\r",(debug_buf+6));
-             fclose(fip);
-             pc.printf("\n\r");
-             files('s');
-          }
-          
-        if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "maskset ",8 )) {
-             fmask = fopen("/qspi/mymask.txt", "w");
-             fprintf(fmask,"%s\n\r",(debug_buf+8));
-             fclose(fmask);
-             pc.printf("\n\r");
-             files('s');
-          }
-          
-        if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "gatewayset ",11 )) {
-             fgate = fopen("/qspi/mygate.txt", "w");
-             fprintf(fgate,"%s\n\r",(debug_buf+11));
-             fclose(fgate);
-             pc.printf("\n\r");
-             files('s');
-          }
-         
-          
-         if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "msipport ",9 )) {
-             fport = fopen("/qspi/mysipport.txt", "w");
-             fprintf(fport,"%s\n\r",(debug_buf+9));
-             fclose(fport);
-             pc.printf("\n\r");
-             files('s');
-          }
-          
-          if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "serverip ",9 )) {
-             fsip = fopen("/qspi/serverip.txt", "w");
-             fprintf(fsip,"%s\n\r",(debug_buf+9));
-             fclose(fsip);
-             pc.printf("\n\r");
-             files('s');
-          }
-          
-         if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "ssport ",7 )) {
-             fsport = fopen("/qspi/serverport.txt", "w");
-             fprintf(fsport,"%s\n\r",(debug_buf+7));
-             fclose(fsport);
-             pc.printf("\n\r");
-             files('s');
-          }
-          
-          
-          if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "dconfig" )) {
-            files('w');    
-            files('s');
-            
-          }
-          
-         if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "reset" )) {
-          pc.printf("\n\r reset!!! \n\r"); 
-          pc.putc(0x01); 
-          NVIC_SystemReset();
-          }
-          
-          if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "dog" )) {
-          pc.printf("\n\r MUUUUUUUuuuuUUUUUU - I'm not a dog!!!! \n\r");
-          dog = 0;
-          }
-        
-        if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "debug off" )) {
-          pc.printf("Disable debug");
-          debug_alive = 0;
-        }
-        
-        if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "debug on" )) {
-          pc.printf("Disable debug");
-          debug_alive = 1;
-        }
-          
-          
-        if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "help" )) {
-         pc.printf("\n\r****************************PROMPT HELP******************\n\r");
-         pc.printf("sconfig                 - mostra o arquivo de configuracao do sistema\n\r");
-         pc.printf("dconfig                 - volta as configuracoes do sistema para o padrao de fabrica\n\r");
-         pc.printf("callme [ramal porta]    - envia o pedido de ligacao para o callbox com o ramal e porta indicada\n\r");
-         pc.printf("format                  - formata o sistema de arquivos\n\r");
-         pc.printf("reset                   - resta o sistema\n\r");
-         pc.printf("ipset [ip]              - Configura o IP da cabeceira\n\r");
-         pc.printf("maskset [mask]          - Configura a mascara da cabeceira\n\r");
-         pc.printf("gatewayset [gateway]    - Configura o gateway da cabeceira\n\r");
-         pc.printf("msipport [port]         - Configura a porta SIP da cabeceira\n\r");
-         pc.printf("serverip [ip]           - Configura o ip do servidor asterisk\n\r");
-         pc.printf("ssport [port]           - Configura a porta SIP do servidor asterisk\n\r");
-         pc.printf("\n\rPROMPT VERSION: V%d\n\r",PVERSION);
-       }
-        /*                  
-        if ( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "callme ", 7 )) {
-            if ( debug_buf[16] != 0 && debug_buf[11] != 0x20 )
-                pc.printf("\n\r Error: formato errado! ramal=xxxx porta=xxxx \n\r");
-            else {
-                uint8_t data[300];
-                uint16_t cks=0;
-                
-                //data[0] = (uint8_t)( (debug_buf[7]&0xf0)<<4 + (debug_buf[8]&0x0f) ) ;
-                //data[1] = (uint8_t)( (debug_buf[9]&0xf0)<<4 + (debug_buf[10]&0x0f) ) ;
-                //data[2] = (uint8_t)( (debug_buf[12]&0xf0)<<4 + (debug_buf[13]&0x0f) ) ;
-                /data[3] = (uint8_t)( (debug_buf[14]&0xf0)<<4 + (debug_buf[15]&0x0f) ) ;
-                
-                data[0] = (uint8_t)( debug_buf[ 7 ] & 0xFF00 >> 8  );
-                data[1] = (uint8_t)( debug_buf[ 9 ] & 0x00FF );
-                data[2] = (uint8_t)( debug_buf[ 12 ] & 0xFF00 >> 8 );
-                data[3] = (uint8_t)( debug_buf[ 14 ] & 0x00FF );
-                
-                data[6] = 0x04;
-                for (int i = 7; i < 300; i++)  data[i] = 0x00;
-                cks = __checksum__(data,300);
-                data[4] = cks>>8;
-                data[5] = cks&0xff;
-                
-                pc.printf("\n\r");
-                for( int i = 0; i < 300; i++ )
-                    pc.printf("%x ", data[ i ] );
-                pc.printf("\n\r");
-                
-                xmemcpy(TXBuffer,data,300);
-                
-                pc.printf("\n\r");
-                for( int i = 0; i < 300; i++ )
-                    pc.printf("%x ", data[ i ] );
-                pc.printf("\n\r");
-                
-                send2callboxes();
-                
-                pc.printf("\n\r calling callbox %s \n\r",debug_buf+7);
-            }
-
-        }
-       */
-    }
-
-  if (b == 0x0D || bufret == 1 || bufptr > DEBUGBUFSIZE ){
-    bufptr = 0;
-    for (uint8_t i =0; i < DEBUGBUFSIZE; i++){
-        debug_buf[i] = 0;
-        }
-    bufret = 0;
-    pc.putc(0x0A);
-    pc.putc(0x0D);
-    }
-}
\ No newline at end of file
--- a/prompt.h	Fri Sep 19 16:40:17 2014 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-#ifndef _PROMPT_H
-#define _PROMPT_H
-
-extern uint8_t debug_alive;
-extern uint8_t debug_prompt;
-extern uint8_t dog;
-
-void prompt_process();
-void init_fsystem();
-
-
-#endif
\ No newline at end of file
--- a/sip.cpp	Fri Sep 19 16:40:17 2014 +0000
+++ b/sip.cpp	Fri Sep 19 17:39:09 2014 +0000
@@ -183,15 +183,6 @@
                 }
             }
             if( ( status == sip_trying ) || ( status == sip_ringing ) ){            
-                if( !( strncasecmp( buffer + 12, "Busy Here", strlen("Busy Here") ) ) ){
-                    debug_msg("Busy Here");
-                    send_bye();
-                    delete( call );
-                    set_status( status, sip_busy );
-                    return( NULL );  
-                }
-            }
-            if( ( status == sip_trying ) || ( status == sip_ringing ) ){            
                 if( !( strncasecmp( buffer + 12, "Session Progress", strlen("Session Progress") ) ) ){
                     debug_msg( "Trocando dados de audio -- musica de espera com o CBx" );
                     char *ref = strstr( buffer, "audio" );
@@ -223,7 +214,6 @@
             sock.init();
             sock.set_blocking( false, 1 );
             debug_msg("Reconnect");
-            wdt.kick();
             reconnect.reset();
             //sock.sendTo( sip_server, buffer, sizeof( buffer ) );
             led4 = !led4;
--- a/sip.h	Fri Sep 19 16:40:17 2014 +0000
+++ b/sip.h	Fri Sep 19 17:39:09 2014 +0000
@@ -24,17 +24,21 @@
 */
 #define __MY_PORT__ 5062
 #define __MY_EXT__ 820
+//#define __PEER_EXT__ 801 
 #define __PEER_EXT__ 913
+//#define __PEER_EXT__ 803
 
-//#define colinas_config
-#ifdef colinas_config
+
+//#ifdef debug_colinas
 #define __SEVER_IP__ "192.168.30.25"
 #define __SERVER_PORT__ 5060
-#endif
-#ifndef colinas_config
-#define __SEVER_IP__ "192.168.120.120"
-#define __SERVER_PORT__ 5075
-#endif
+//#endif
+//#ifndef debug_colinas
+//#define __SEVER_IP__ "192.168.120.120"
+//#define __SEVER_IP__ "192.168.30.25"
+//#define __SERVER_PORT__ 5075
+//#define __SERVER_PORT__ 5060
+//#endif
 
 #define sip_idle 0
 #define sip_waiting_trying 1 << 1
--- a/utils.cpp	Fri Sep 19 16:40:17 2014 +0000
+++ b/utils.cpp	Fri Sep 19 17:39:09 2014 +0000
@@ -43,8 +43,7 @@
 
 int __init_eth__( EthernetInterface * eth ){
     //eth->init( __MY_IP__, "255.255.255.0", "192.168.120.1" );
-    //eth->init( "192.168.2.200", "255.255.255.0", "192.168.2.254" );
-    eth->init( __MY_IP__, __MY_MK__, __MY_GW__ );
+    eth->init( "192.168.2.200", "255.255.255.0", "192.168.2.254" );
     
 /*
 #ifdef debug_colinas
--- a/utils.h	Fri Sep 19 16:40:17 2014 +0000
+++ b/utils.h	Fri Sep 19 17:39:09 2014 +0000
@@ -15,7 +15,6 @@
 #include "NTPClient.h"
 #include "parallelcpld.h"
 #include "test.h"
-#include "configs.h"
 
 using namespace std;
 
--- a/vz_protocol.cpp	Fri Sep 19 16:40:17 2014 +0000
+++ b/vz_protocol.cpp	Fri Sep 19 17:39:09 2014 +0000
@@ -22,11 +22,24 @@
     
     uint16_t cc = ( uint16_t )cb_buffer[ 4 ] << 8 | cb_buffer[ 5 ];
     
-    uint16_t calc_cc = __checksum__( cb_buffer, __CB_BUFFER_SIZE__ );
+    /*
+    UDPSocket debug;
+    Endpoint debug_server;
+    char debug_msg[ 1024 ];
+    
+    debug_server.set_address( "192.168.120.180", 9897 );
+    debug.bind( 8182 );
+    debug.init();
     
-    if( cc != calc_cc ){
-        debug_msg("wrong check sum -- calc :: %d ( %d ) -- diff %d", calc_cc, cc, ( cc > calc_cc ) ? cc - calc_cc : calc_cc - cc );
-        return( NULL );
+    //if( cc != __checksum__( cb_buffer + __CHECKSUM_OFFSET__, 
+    //    __CB_BUFFER_SIZE__ - __CHECKSUM_OFFSET__ ) ){
+        
+    sprintf( debug_msg, " -- cc :: %x :: __checksum %x -- bit[4] %x :: bit[5] %x", cc, __checksum__( cb_buffer, __CB_BUFFER_SIZE__ ), cb_buffer[ 4 ], cb_buffer[ 5 ] );
+    debug.sendTo( debug_server, debug_msg, strlen( debug_msg ) );
+    debug.sendTo( debug_server, debug_msg, strlen( debug_msg ) );
+    */
+    if( cc != __checksum__( cb_buffer, __CB_BUFFER_SIZE__ ) ){
+            return( NULL );
     }else{
         e_msb = cb_buffer[ 0 ];
         e_lsb = cb_buffer[ 1 ];
@@ -42,7 +55,7 @@
     }
 }
 uint8_t * __build_cb_package__( int ext, int port, uint8_t type, char * cb_buffer, uint8_t seq_num, int length,  uint8_t * pkg ){
-    //debug_msg("");
+    debug_msg("");
     pkg[ 0 ] = ( uint8_t )( ( ext & 0xFF00 ) >> 8 );                                                                                      
     pkg[ 1 ] = ( uint8_t )( ext & 0x00FF );                                                                                                                                                                                                                                 
     pkg[ 2 ] = ( uint8_t )( ( port & 0xFF00 ) >> 8 );                      
@@ -84,7 +97,7 @@
     pkg[ 4 ] =( uint8_t )( ( cc & 0xFF00 ) >> 8) ;
     pkg[ 5 ] =( uint8_t )( cc & 0x00FF );
     
-    //debug_msg("");
+    debug_msg("");
     return pkg;
 }
 
--- a/vz_protocol.h	Fri Sep 19 16:40:17 2014 +0000
+++ b/vz_protocol.h	Fri Sep 19 17:39:09 2014 +0000
@@ -36,18 +36,8 @@
 
 #define __DO_NOTHING__ 0x99
 
-//#define colinas
-#ifdef colinas
+//#define __MY_IP__ "192.168.120.169"
 #define __MY_IP__ "192.168.2.200"
-#define __MY_GW__ "192.168.2.254"
-#endif
-#ifndef colinas
-#define __MY_IP__ "192.168.120.169"
-#define __MY_GW__ "192.168.120.1"
-#endif
-
-#define __MY_MK__ "255.255.255.0"
-
 
 uint16_t __checksum__( uint8_t * buffer, size_t length );
 
--- a/wdt.cpp	Fri Sep 19 16:40:17 2014 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-#include "mbed.h"
-#include "wdt.h"
- 
- /// Watchdog gets instantiated at the module level
-Watchdog::Watchdog() {
-    wdreset = (LPC_WDT->MOD >> 2) & 1;    // capture the cause of the previous reset
-}
- 
-/// Load timeout value in watchdog timer and enable
-void Watchdog::Configure(float s) {
-    //LPC_WDT->CLKSEL = 0x1;                // Set CLK src to PCLK
-    uint32_t clk = 500000 / 4;    // WD has a fixed /4 prescaler, and a 500khz oscillator
-    LPC_WDT->TC = (uint32_t)(s * (float)clk);
-    LPC_WDT->MOD = 0x3;                   // Enabled and Reset
-    kick();
-}
- 
-/// "Service", "kick" or "feed" the dog - reset the watchdog timer
-/// by writing this required bit pattern
-void Watchdog::kick() {
-    LPC_WDT->FEED = 0xAA;
-    LPC_WDT->FEED = 0x55;
-}
- 
\ No newline at end of file
--- a/wdt.h	Fri Sep 19 16:40:17 2014 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-#ifndef _WDT_H
-#define _WDT_H
-#include "mbed.h"
-
-class Watchdog {
-public:
-    /// Create a Watchdog object
-    ///
-    /// example:
-    /// @code
-    /// Watchdog wd;    // placed before main
-    /// @endcode
-    Watchdog();
-    
-    /// Configure the timeout for the Watchdog
-    ///
-    /// This configures the Watchdog service and starts it. It must
-    /// be serviced before the timeout, or the system will be restarted.
-    ///
-    /// example:
-    /// @code
-    ///     ...
-    ///     wd.Configure(1.4);  // configure for a 1.4 second timeout
-    ///     ...
-    /// @endcode
-    ///
-    /// @param timeout in seconds, as a floating point number
-    /// @returns none
-    ///
-    void Configure(float timeout);
-    
-    /// Service the Watchdog so it does not cause a system reset
-    ///
-    /// example:
-    /// @code
-    ///    wd.Service();
-    /// @endcode
-    /// @returns none
-    void kick();
-    
-    /// WatchdogCausedReset identifies if the cause of the system
-    /// reset was the Watchdog
-    ///
-    /// example:
-    /// @code
-    ///    if (wd.WatchdogCausedReset())) {
-    /// @endcode
-    ///
-    /// @returns true if the Watchdog was the cause of the reset
-    bool WatchdogCausedReset();
-private:
-    bool wdreset;
-};
- 
-
-
-
-#endif