Hi every,
i got a problem trying to set up my C350 with usb serial cable.
The boot cd works right.
My debian with chan_celliax with no_serial is fine.
Next I tryed to change from no_serial to at and problem starts.
Here is a paste from "cat /usr/local/asterisk/var/log/asterisk/messages |grep celliax | sed -e 's/.*celliax.c://'"
[b7c398e0][NOTICE 1983 ][none ][-1,-1,-1,-1] here
[b7c398e0][NOTICE 1751 ][none ][-1,-1,-1,-1] ENTERING FUNC
[b7c398e0][WARNING 7916 ][none ][-1,-1,-1,-1] Loading config failed.
May 10 00:08:40 DEBUG[14571] config.c: Parsing /usr/local/asterisk/etc/asterisk/celliax.conf
[b7c398e0][NOTICE 2147 ][nicephone ][-1, 0, 0, 0] at_dial_post_number=|S"|
[b7c398e0][NOTICE 2168 ][nicephone ][-1, 0, 0, 0] DEBUG_AT activated.
[b7c398e0][NOTICE 2190 ][nicephone ][-1, 0, 0, 0] DEBUG_SERIAL activated.
[b7c398e0][DEBUG_SERIAL 4235 ][nicephone ][-1, 0, 0, 0] Syncing Serial
[b7c398e0][DEBUG_AT 5214 ][nicephone ][-1, 0, 0, 0] sleeping for 1000000 usec
[b7c398e0][DEBUG_AT 5126 ][nicephone ][-1, 0, 0, 0] sending: atciapa, expecting: OK
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |ERROR|
[b7c398e0][DEBUG_AT 4982 ][nicephone ][-1, 0, 0, 0] got ERROR
[b7c398e0][WARNING 5225 ][nicephone ][-1, 0, 0, 0] atciapa does not get OK from the phone. Continuing.
[b7c398e0][DEBUG_AT 5276 ][nicephone ][-1, 0, 0, 0] sleeping for 1000000 usec
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+mode=0
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATZ
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATE0
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |ATE0|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CMEE=0
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI0
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |144|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI1
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |000|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI2
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI3
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |Motorola Mobile Phone|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI4
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |000000 2001|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI5
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |P2K|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI6
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI7
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |ERROR|
[b7c398e0][DEBUG_AT 4982 ][nicephone ][-1, 0, 0, 0] got ERROR
[b7c398e0][WARNING 5321 ][nicephone ][-1, 0, 0, 0] ATI7 command failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI8
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |ERROR|
[b7c398e0][DEBUG_AT 4982 ][nicephone ][-1, 0, 0, 0] got ERROR
[b7c398e0][WARNING 5321 ][nicephone ][-1, 0, 0, 0] ATI8 command failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: ATI9
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |ERROR|
[b7c398e0][DEBUG_AT 4982 ][nicephone ][-1, 0, 0, 0] got ERROR
[b7c398e0][WARNING 5321 ][nicephone ][-1, 0, 0, 0] ATI9 command failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CGMI
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |+CGMI: "Motorola CE, Copyright 2000"|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CGMM
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |+CGMM: "GSM900","GSM1800","GSM1900","GSM850","MODEL=C350"|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CGSN
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |+CGSN: IMEI352302005603851|
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 1: |OK|
[b7c398e0][DEBUG_AT 4976 ][nicephone ][-1, 0, 0, 0] got OK
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CLAC
[b7c398e0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |ERROR|
[b7c398e0][DEBUG_AT 4982 ][nicephone ][-1, 0, 0, 0] got ERROR
[b7c398e0][WARNING 5364 ][nicephone ][-1, 0, 0, 0] AT+CLAC failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CNMI=3,1,0,0,0
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5370 ][nicephone ][-1, 0, 0, 0] AT+CNMI=3,1,0,0,0 failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CSCA?
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5375 ][nicephone ][-1, 0, 0, 0] AT+CSCA? failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CMGF?
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5380 ][nicephone ][-1, 0, 0, 0] AT+CMGF? failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CSCS?
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5385 ][nicephone ][-1, 0, 0, 0] AT+CSCS? failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CMER=?
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5390 ][nicephone ][-1, 0, 0, 0] AT+CMER=? failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CMER=3,0,0,1
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5395 ][nicephone ][-1, 0, 0, 0] AT+CMER=? failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CIND=?
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5403 ][nicephone ][-1, 0, 0, 0] AT+CIND=? failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT*ECAM=?
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5409 ][nicephone ][-1, 0, 0, 0] AT*ECAM=? failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT*ECAM=1
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5414 ][nicephone ][-1, 0, 0, 0] AT*ECAM=1 failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CLCC=0
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5420 ][nicephone ][-1, 0, 0, 0] AT+CLCC=0 failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+CLIP=1
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5425 ][nicephone ][-1, 0, 0, 0] AT+CLIP failed, continue
[b7c398e0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT+MCST=1
[b7c398e0][ERROR 5105 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5433 ][nicephone ][-1, 0, 0, 0] AT+MCST=1 does not get OK from the phone. If it is NOT Motorola, no problem.
[b7c398e0][DEBUG_AT 5126 ][nicephone ][-1, 0, 0, 0] sending: atcucu, expecting: OK
[b7c398e0][ERROR 5129 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5444 ][nicephone ][-1, 0, 0, 0] atcucu does not get OK from the phone. Continuing.
[b7c398e0][DEBUG_AT 5126 ][nicephone ][-1, 0, 0, 0] sending: AT+CKPD="EEE", expecting: OK
[b7c398e0][ERROR 5129 ][nicephone ][-1, 0, 0, 0] Error sending data... (Resource temporarily unavailable)
[b7c398e0][WARNING 5454 ][nicephone ][-1, 0, 0, 0] AT+CKPD="EEE" does not get OK from the phone. Continuing.
QUI
[b7c398e0][NOTICE 1792 ][none ][-1,-1,-1,-1] Created channel Celliax: celliax.conf category '[nicephone]', channel name 'nicephone' control_device_name '/dev/ttyACM0'
[b7c398e0][NOTICE 1837 ][none ][-1,-1,-1,-1] EXITING FUNC
[b74f2bb0][DEBUG_SERIAL 2497 ][nicephone ][-1, 0, 0, 0] Syncing Serial
[b74f2bb0][DEBUG_AT 5102 ][nicephone ][-1, 0, 0, 0] sending: AT
[b74f2bb0][DEBUG_AT 4442 ][nicephone ][-1, 0, 0, 0] Read line 0: |ERROR|
[b74f2bb0][DEBUG_AT 4982 ][nicephone ][-1, 0, 0, 0] got ERROR
[b74f2bb0][ERROR 4283 ][nicephone ][-1, 0, 0, 0] AT was not acknowledged
[b74f2bb0][ERROR 2508 ][nicephone ][-1, 0, 0, 0] serial getstatus failed, declaring /dev/ttyACM0 dead
Sometimes (but only a few time) channel starts right.
After some changes in celliax.conf the channel continued to get /dev/ttyACM0 dead.
Bored seeing "Error sending data... (Resource temporarily unavailable)" after "AT+CNMI=3,1,0,0,0" I've changed celliax_stuff/chan_celliax.c from
/* signal incoming SMS with a +CMTI unsolicited msg */
res = serial_write_AT_ack(p, "AT+CNMI=3,1,0,0,0");
if (res) {
WARNINGA("AT+CNMI=3,1,0,0,0 failed, continue\n", CELLIAX_P_LOG);
}
to
/* signal incoming SMS with a +CMTI unsolicited msg */
/* res = serial_write_AT_ack(p, "AT+CNMI=3,1,0,0,0"); */
res = serial_write_AT_ack(p, "AT");
if (res) {
WARNINGA("AT+CNMI=3,1,0,0,0 failed, continue\n", CELLIAX_P_LOG);
}
Overriding "AT+CNMI=3,1,0,0,0" to a simple "AT".
I dunno what I did... but it's working... (i mean it initialize... now i can try it)
Have I changed something usefull?
What I did?
I used SVN-branch-test1-r446 version on debian 4 clean installed 2 days ago.
Ciao.
MG
Well, now I have problem
Well, now I have problem sending calls into celliax... same story....
Error sending data... (Resource temporarily unavailable)
I changed my C350 with another 1 and now it works, but I would like to use the 1st too.
It works with the original chan_celliax.c.
I see that working phone is faster than the other not working.
Cant we try to slow down celliax while using ACM modem?
Here some info from phones:
Phone1 (working):
Flex version: SE7636AXXH3063
SW VERISION: R312ULS_G_09.10.1AR
SW DSP VERSION: 00007107
Phone2 (not working):
Flex version: SE6263AXXX109F
SW VERSION: C350_G_09.04.74R
SW DSP VERSION: 0004321
Ciao
Ciao Gennaman, you're doing
Ciao Gennaman,
you're doing pretty well.
You have commented out a command that ask the phone to send messages on the serial line when something related to SMS (eg an incoming sms) happens. And you substituted that command with a command that do nothing. Perfect.
But the problem you encounter it is probably not related with those command, though.
It seems that it is an hardware or configuration problem (the cellphone-/dev/ttyACM0 stops answering the serial line).
So, I ask you some more info:
1) are you using the same cable for the two different cellphone (it may be a bad cable)?
2) are you using the same USB "socket" (maybe bad USB socket)?
3) can you send here the last lines generated by the console command "dmesg", after the phone stops answering (the lines that have to do with USB disconnect, etc...)
4) can you send here the celliax.conf file?
It seems probable to me that the phone disconnects from the USB bus, this would be visible from the dmesg result.
This can be caused by a faulty phone, a faulty usb subsystem, a bad usb_acm driver (old kernel ?), or by connecting the phone through an external usb hub.
Often linux kernels does not manage perfectly usb 1.1 devices connected through 2.0 usb hubs :(. Probably is for this that it works with the livecd (its kernel is tuned for that).
The serial speed is managed by celliax.conf, but I don't think there is a problem there...
Waiting for your additional info (send also all you deem interesting),
Giovanni
Quoted: .................. 1)
Quoted:
..................
1) are you using the same cable for the two different cellphone (it may be a bad cable)?
2) are you using the same USB "socket" (maybe bad USB socket)?
3) can you send here the last lines generated by the console command "dmesg", after the phone stops answering (the lines that have to do with USB disconnect, etc...)
4) can you send here the celliax.conf file?
...................
1) Yes, same cable
2) Yes, same usb slot
3) I recompiled usbcore.ko with debug...
genaman:~# rmmod cdc_acm
May 10 15:23:25 gennaman kernel: usbcore: deregistering driver cdc_acm
- Plugging the phone:
May 10 15:18:17 gennaman kernel: hub 4-0:1.0: state 7 ports 6 chg 0000 evt 0008
May 10 15:18:17 gennaman kernel: ehci_hcd 0000:00:1d.7: GetStatus port 3 status 001803 POWER sig=j CSC CONNECT
May 10 15:18:17 gennaman kernel: hub 4-0:1.0: port 3, status 0501, change 0001, 480 Mb/s
May 10 15:18:17 gennaman kernel: hub 4-0:1.0: debounce: port 3: total 100ms stable 100ms status 0x501
May 10 15:18:17 gennaman kernel: ehci_hcd 0000:00:1d.7: port 3 full speed --> companion
May 10 15:18:17 gennaman kernel: ehci_hcd 0000:00:1d.7: GetStatus port 3 status 003801 POWER OWNER sig=j CONNECT
May 10 15:18:17 gennaman kernel: hub 2-0:1.0: state 7 ports 2 chg 0000 evt 0002
May 10 15:18:17 gennaman kernel: uhci_hcd 0000:00:1d.1: port 1 portsc 0093,00
May 10 15:18:17 gennaman kernel: hub 2-0:1.0: port 1, status 0101, change 0001, 12 Mb/s
May 10 15:18:17 gennaman kernel: hub 2-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x101
May 10 15:18:17 gennaman kernel: usb 2-1: new full speed USB device using uhci_hcd and address 5
May 10 15:18:17 gennaman kernel: usb 2-1: uhci_result_common: failed with status 440000
May 10 15:18:17 gennaman last message repeated 2 times
May 10 15:18:17 gennaman kernel: usb 2-1: device descriptor read/64, error -71
May 10 15:18:18 gennaman kernel: usb 2-1: uhci_result_common: failed with status 440000
May 10 15:18:18 gennaman last message repeated 2 times
May 10 15:18:18 gennaman kernel: usb 2-1: device descriptor read/64, error -71
May 10 15:18:18 gennaman kernel: usb 2-1: new full speed USB device using uhci_hcd and address 6
May 10 15:18:18 gennaman kernel: usb 2-1: ep0 maxpacket = 8
May 10 15:18:18 gennaman kernel: usb 2-1: skipped 4 descriptors after interface
May 10 15:18:18 gennaman kernel: usb 2-1: default language 0x0409
May 10 15:18:18 gennaman kernel: usb 2-1: new device strings: Mfr=1, Product=2, SerialNumber=0
May 10 15:18:18 gennaman kernel: usb 2-1: Product: Motorola Phone (C350)
May 10 15:18:18 gennaman kernel: usb 2-1: Manufacturer: Motorola Inc.
May 10 15:18:18 gennaman kernel: usb 2-1: uevent
May 10 15:18:18 gennaman kernel: usb 2-1: configuration #1 chosen from 1 choice
May 10 15:18:18 gennaman kernel: usb 2-1: adding 2-1:1.0 (config #1, interface 0)
May 10 15:18:18 gennaman kernel: usb 2-1:1.0: uevent
May 10 15:18:18 gennaman kernel: usb 2-1: adding 2-1:1.1 (config #1, interface 1)
May 10 15:18:18 gennaman kernel: usb 2-1:1.1: uevent
May 10 15:18:18 gennaman kernel: drivers/usb/core/inode.c: creating file '006'
May 10 15:18:18 gennaman kernel: hub 2-0:1.0: state 7 ports 2 chg 0000 evt 0002
May 10 15:18:18 gennaman kernel: cdc_acm 2-1:1.0: usb_probe_interface
May 10 15:18:18 gennaman kernel: cdc_acm 2-1:1.0: usb_probe_interface - got id
May 10 15:18:18 gennaman kernel: cdc_acm 2-1:1.0: ttyACM0: USB ACM device
May 10 15:18:18 gennaman kernel: usbcore: registered new driver cdc_acm
May 10 15:18:18 gennaman kernel: drivers/usb/class/cdc-acm.c: v0.25:USB Abstract Control Model driver for USB modems and ISDN adapters
- Starting asterisk: no output
- Placing a call with celliax/nicephone: no dmesg output
- Unplugging the phone:
May 10 15:23:15 gennaman kernel: usb 2-1: uhci_result_common: failed with status 440000
May 10 15:23:15 gennaman last message repeated 224 times
May 10 15:23:15 gennaman kernel: hub 2-0:1.0: state 7 ports 2 chg 0000 evt 0002
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: port 1 portsc 008a,00
May 10 15:23:15 gennaman kernel: hub 2-0:1.0: port 1, status 0100, change 0003, 12 Mb/s
May 10 15:23:15 gennaman kernel: usb 2-1: USB disconnect, address 6
May 10 15:23:15 gennaman kernel: usb 2-1: usb_disable_device nuking all URBs
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c440 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c4c0 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c540 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c5c0 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c640 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df074d40 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df074dc0 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df074e40 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df362e40 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c0c0 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c140 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c1c0 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c240 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c2c0 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c340 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df06c3c0 pipe c0410680 ep2in-bulk
May 10 15:23:15 gennaman kernel: usb 2-1: uhci_result_common: failed with status 440000
May 10 15:23:15 gennaman kernel: uhci_hcd 0000:00:1d.1: shutdown urb df074ec0 pipe 40448680 ep9in-intr
May 10 15:23:15 gennaman kernel: usb 2-1: unregistering interface 2-1:1.0
May 10 15:23:15 gennaman kernel: usbdev2.6_ep89: ep_device_release called for usbdev2.6_ep89
May 10 15:23:15 gennaman kernel: usb 2-1:1.0: uevent
May 10 15:23:15 gennaman kernel: usb 2-1: unregistering interface 2-1:1.1
May 10 15:23:15 gennaman kernel: usbdev2.6_ep01: ep_device_release called for usbdev2.6_ep01
May 10 15:23:15 gennaman kernel: usbdev2.6_ep82: ep_device_release called for usbdev2.6_ep82
May 10 15:23:15 gennaman kernel: usb 2-1:1.1: uevent
May 10 15:23:15 gennaman kernel: usb 2-1: unregistering device
May 10 15:23:15 gennaman kernel: usbdev2.6_ep00: ep_device_release called for usbdev2.6_ep00
May 10 15:23:15 gennaman kernel: usb 2-1: uevent
May 10 15:23:15 gennaman kernel: hub 2-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x100
4) celliax.conf:
; Configuration file
; lines beginning with semicolon (";") are ignored (commented out)
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; The first interface (named nicephone)
[nicephone]
;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;
; general settings, valid on all platforms
;
;
; Default language
;
language=en
;
; Default context (is overridden with @context syntax)
;
context=nicephone
;
; Default extension (in extensions.conf) where incoming calls land
;
extension=s
;
;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;
; Debugging settings, valid globally for all interfaces on all platforms
;
; the debug values are global for all the interfaces.
;
; default is no celliax debugging output, you **have** to activate debugging here to obtain debugging from celliax
;
; To see the debugging output you have to "set debug 100" from the Asterisk CLI or launch
; Asterisk with -ddddddddddd option, and have the logger.conf file activating debug info for console and messages
;
; You can activate each of the following separately, but you can't disactivate. Eg: debug_at=no does not subtract debug_at from debug_all
; debug_all activate all possible debugging info
;
;debug_all=yes
;debug_at=yes
;debug_fbus2=yes
;debug_serial=yes
;debug_pbx=yes
debug_sound=yes
;debug_locks=yes
;debug_skype=yes
;debug_call=yes
; skype is not yet supported, but will come back in the future
skype=no
;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;
; serial settings, valid for all platforms
;
;control_device_protocol can be AT or FBUS2 or NO_SERIAL (with NO_SERIAL the speed and name of the port are ignored)
control_device_protocol=at
;control_device_protocol=no_serial
;speed of the serial port
control_device_speed=38400
;name of the serial port device
;control_device_name=/dev/ttyUSB0 ; this is a Motorola phone, recognized as a modem by Linux
control_device_name=/dev/ttyACM0 ; this is a Motorola phone, recognized as a modem by Linux
;control_device_name=/dev/ttyS9 ; this is the COM10 on windows
;control_device_name=/dev/ttyUSB0 ; this is the first USB serial port in Linux
;watch the soundcard for noise (ring), because the serial port do not tell us about incoming calls (eg 3310nokia), NO_SERIAL protocol watch for acoustic ring in any case
need_acoustic_ring=0
;audio noise threshold beyond which we declare there is a ring (512 is default, put it to 1024 or 2048 if you have false positive), ignored if not watching for ring
dsp_silence_threshold=1024
;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;
; audio boost settings, valid for all platforms, to compensate for different soundcard/phone input/output signal levels
; tweak it if you get horrible (or not hearable) sound
;
;boost can be positive or negative (-40 to +40) in db
;experiment to find which values are best for your soundcard
;playback_boost=-30 ; for usb audio cm-108 on motorola c650
;capture_boost=-15 ; for usb audio cm-108 on motorola c650
playback_boost=0 ; for integrated mobo audio for motorola c650
capture_boost=-15 ; for integrated mobo audio for motorola c650
;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;
; alsa settings, ignored in windows
;
;alsa internal settings, if in doubt, leave them alone ;-)
;to check and do the audio fine tuning, use microphone and headset directly connected to the soundcard, is easier and cheaper
;period_size, if you hear a scratchy background noise, increase it to 170 and check if is better
alsa_period_size=250
;alsa_periods_in_buffer, if you get too many XRUNs, or if you get noise after EAGAINs, increase it (it will increase your alsa latency, but is nothing. The real latency is introduced by the round trip of audio from cellphone to cellphone)
alsa_periods_in_buffer=16
;names of the sound devices in linux
;if you don't use skype on this interface (eg don't need to share the audio device with other applications while celliax is running), use the plughw:n devices (plughw:0 is the first, plughw:1 is the second soundcard, etc). They have the best latency
;if you use skype on this interface use the default:n devices (default:0 is the first, default:1 is the second soundcard, etc). They have worst latency, but you can share them
;alsa_capture_device_name=default:0
;alsa_playback_device_name=default:0
alsa_capture_device_name=plughw:0
alsa_playback_device_name=plughw:0
;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;
; window multimedia settings, ignored in linux
;
;names of the sound devices in windows, this is the first soundcard, the second would be 1
winmm_capture_device_name=0
winmm_playback_device_name=0
;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;
; at "modem" commands settings for this interface (if controldevice_protocol is not AT they are ignored)
;
;what the modem is expecting in the part of the dial command before the number to be dialed (eg: ATD)
at_dial_pre_number=AT+CKPD="EEE
;what the modem is expecting in the part of the dial command after the number to be dialed (eg: ;)
at_dial_post_number=S"
;what the modem will answer after succesful execution of the dial command
at_dial_expect=OK
;command to hangup the current call
at_hangup=AT+CKPD="EEE"
;what the modem will answer after succesful execution of the hangup command
at_hangup_expect=OK
;command to answer an incoming call
at_answer=ATA
;what the modem will answer after succesful execution of the answer command
at_answer_expect=OK
;pause right after serial port opening, before any command is sent, in usecs (1million usec= 1sec)
at_initial_pause=1000000
;custom commands to be sent after the initial pause and before the "built in" initialization commands, and what the modem is expected to send as reply
;the first empty string stop the preinit sending
at_preinit_1=atciapa ; nonsense entry, just to show the preinit
at_preinit_1_expect=OK
at_preinit_2=
at_preinit_2_expect=
at_preinit_3=
at_preinit_3_expect=
at_preinit_4=
at_preinit_4_expect=
at_preinit_5=
at_preinit_5_expect=
;pause right after the custom preinit commands, before any "built in" command is sent, in usecs (1million usec= 1sec)
at_after_preinit_pause=2000000
;custom commands to be sent after the "built in" initialization commands, and what the modem is expected to send as reply
;the first empty string stop the postinit sending
at_postinit_1=atcucu ; nonsense entry, just to show the postinit
at_postinit_1_expect=OK
at_postinit_2=AT+CKPD="EEE" ;send three "end" buttonpress, to have the phone in a sane state, ready to dialing with furter CKPDs ***THIS IS IMPORTANT, needed on c650***
at_postinit_2_expect=OK
at_postinit_3=
at_postinit_3_expect=
at_postinit_4=
at_postinit_4_expect=
at_postinit_5=
at_postinit_5_expect=
;what command to query the battery status, and what the modem is expected to send as reply
at_query_battchg=AT+CBC
at_query_battchg_expect=OK
;what command to query the signal status, and what the modem is expected to send as reply
at_query_signal=AT+CSQ
at_query_signal_expect=OK
;the modem will send us the following messages to signal that the visual indicators on the phone has changed because of events (without us to ask for them), loosely based on ETSI standard (see CIND/CIEV/CMER in ETSI). Variable by manufacturer and phone model
; no service
at_indicator_noservice_string=+CIEV: 2,0
; no signal
at_indicator_nosignal_string=+CIEV: 5,0
; low signal
at_indicator_lowsignal_string=+CIEV: 5,1
; low battery
at_indicator_lowbattchg_string=+CIEV: 0,1
; no battery battery
at_indicator_nobattchg_string=+CIEV: 0,0
; call is up
at_indicator_callactive_string=+CIEV: 3,1
; call is down
at_indicator_nocallactive_string=+CIEV: 3,0
; call is no more in process
at_indicator_nocallsetup_string=+CIEV: 6,0
; call incoming is in process
at_indicator_callsetupincoming_string=+CIEV: 6,1
; call outgoing is in process
at_indicator_callsetupoutgoing_string=+CIEV: 6,2
; remote party is ringing because of our call outgoing
at_indicator_callsetupremoteringing_string=+CIEV: 6,3
;call processing unsolicited messages, proprietary for each phone manufacturer
;the modem will send us the following mesage to signal that the line is idle (eg. after an outgoing call has failed, or after hangup)
at_call_idle=+MCST: 1
;the modem will send us the following mesage to signal that there is an incoming voice call
at_call_incoming=+MCST: 2
;the modem will send us the following mesage to signal that there is an active call (eg. the remote party has answered us, or we answered them)
at_call_active=+MCST: 3
;the modem will send us the following mesage to signal that our outgoing call has failed
at_call_failed=+MCST: 65
;the modem will send us the following mesage to signal that our outgoing call is in the calling phase
at_call_calling=+MCST: 64
Marco
all seems to be OK. This was
all seems to be OK.
This was the output when you get the cellphone stop working correctly?
(BTW, no need for USB debug in the kernel, but it doesn't harm neither)
Hello, just compiled latest
Hello, just compiled latest 2.6.21 kernel and same story...
Here some output from messages (phone number hidden):
May 11 01:05:12 DEBUG[4224] pbx.c: Launching 'Answer'
May 11 01:05:12 DEBUG[4224] chan_iax2.c: Answering IAX2 call
May 11 01:05:12 DEBUG[4224] pbx.c: Launching 'Dial'
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 1234 ][none ][-1,-1,-1,-1] ENTERING FUNC
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 1625 ][nicephone ][-1, 0, 0, 0] ENTERING FUNC
May 11 01:05:12 DEBUG[4224] chan_celliax.c: [b722dbb0][DEBUG_SERIAL 1710 ][nicephone ][ 0, 0, 0, 0] STARTED controldev_thread=3072248752 STOP=4294967294 NULL=4294967295
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 1720 ][nicephone ][ 0, 0, 0, 0] EXITING FUNC
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 1295 ][nicephone ][ 0, 0, 0, 0] EXITING FUNC
May 11 01:05:12 DEBUG[4224] channel.c: Not copying variable STACK-default-s-2.
May 11 01:05:12 DEBUG[4224] channel.c: Not copying variable STACK-default-s-1.
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 1519 ][nicephone ][ 0, 0, 0, 0] ENTERING FUNC
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 5552 ][nicephone ][ 3, 0, 0, 0] Dialing 340330****
May 11 01:05:12 DEBUG[4224] chan_celliax.c: [b722dbb0][DEBUG_AT 5126 ][nicephone ][ 3, 3, 3, 0] sending: AT+CKPD="EEE340330****S", expecting: OK
May 11 01:05:12 ERROR[4224] chan_celliax.c: [b722dbb0][ERROR 5129 ][nicephone ][ 3, 3, 3, 0] Error sending data... (Resource temporarily unavailable)
May 11 01:05:12 ERROR[4224] chan_celliax.c: [b722dbb0][ERROR 5559 ][nicephone ][ 3, 3, 3, 0] dial command failed, dial string was: AT+CKPD="EEE340330****S"
May 11 01:05:12 WARNING[4224] chan_celliax.c: [b722dbb0][WARNING 1562 ][nicephone ][ 3, 3, 3, 0] celliax_call dialing failed: -1!
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 1565 ][nicephone ][ 3, 3, 3, 0] EXITING FUNC
May 11 01:05:12 DEBUG[4224] app_dial.c: ast call on peer returned -1
May 11 01:05:12 DEBUG[4224] channel.c: Hanging up channel 'Celliax/nicephone'
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 1317 ][nicephone ][ 3, 3, 3, 0] ENTERING FUNC
May 11 01:05:12 DEBUG[4224] chan_celliax.c: [b722dbb0][DEBUG_AT 5126 ][nicephone ][ 3, 3, 3, 0] sending: AT+CKPD="EEE", expecting: OK
May 11 01:05:12 ERROR[4224] chan_celliax.c: [b722dbb0][ERROR 5129 ][nicephone ][ 3, 3, 3, 0] Error sending data... (Resource temporarily unavailable)
May 11 01:05:12 ERROR[4224] chan_celliax.c: [b722dbb0][ERROR 5195 ][nicephone ][ 3, 3, 3, 0] at_hangup command failed, command used: AT+CKPD="EEE", trying to use AT+CKPD="EEE"
May 11 01:05:12 DEBUG[4224] chan_celliax.c: [b722dbb0][DEBUG_AT 5102 ][nicephone ][ 3, 3, 3, 0] sending: AT+CKPD="EEE"
May 11 01:05:12 ERROR[4224] chan_celliax.c: [b722dbb0][ERROR 5105 ][nicephone ][ 3, 3, 3, 0] Error sending data... (Resource temporarily unavailable)
May 11 01:05:12 ERROR[4224] chan_celliax.c: [b722dbb0][ERROR 5199 ][nicephone ][ 3, 3, 3, 0] at_hangup command failed, command used: 'AT+CKPD="EEE"'
May 11 01:05:12 ERROR[4224] chan_celliax.c: [b722dbb0][ERROR 1326 ][nicephone ][ 3, 3, 3, 0] serial_hangup error: -1
May 11 01:05:12 NOTICE[4224] chan_celliax.c: [b722dbb0][NOTICE 1328 ][nicephone ][ 3, 3, 3, 0] EXITING FUNC
May 11 01:05:12 WARNING[4224] channel.c: Channel 'Celliax/nicephone' may not have been hung up properly
May 11 01:05:12 DEBUG[4224] app_dial.c: Exiting with DIALSTATUS=CHANUNAVAIL.
May 11 01:05:12 DEBUG[4224] pbx.c: Launching 'Hangup'
May 11 01:05:12 DEBUG[4224] pbx.c: Spawn extension (default,s,3) exited non-zero on 'IAX2/iaxgenna-2'
As usual, the other phone works perfectly inbound and outbound (just some echo to called but im working to reduce it)
A friend told me he can update my phone next weak... I hope for the best.
Ciao
Marco
Yeah :(, it seems a phone
Yeah :(, it seems a phone problem...
For the echo, it probably has nothing to do with chan_celliax (maybe you can try to fine adjust the capture and playback volume of the audio card to minimize it), because the GSM network automatically cancel the echo.
Echo is usually produced by the other end.
See the *long* :) and very detailed explanation about echo in http://www.voip-info.org
Ciao for now, and please, keep us informed of all your experiments!
Giovanni
I've checked out your
I've checked out your chan_celliax.c source code (but im not a programmer sigh)
and I think i've seen the serial line set up the CRTCSCS flow control.
Is that true?
Can I try to change it? How?
Ciao
Hello, here are some
Hello, here are some experiments:
I cant sleep seeing minicom can successfully access my phone and call, hangup , setup.
AT+CNMI=3,1,0,0,0 return OK from minicom
Searching for something about the problem i've seen problem starts when celliax send a string to phone with more than 16 chars:
AT+CKPD="EEE3S" works with 15 chars
AT+CKPD="EEE34S" works with 16 chars
AT+CKPD="EEE340S" doesnt works (17 chars)
AT+CNMI=3,1,0,0,0 doesnt works (17 chars)
Is it possible?
I ask u because now, after removing AT+CNMI=3,1,0,0,0, dialing AT+CKPD="SS",1,8 (last called number) celliax WORKS !!! Inbound & outbound!!
FUNNY!
I think the problem is in the acm driver, but i cant explain me how other phone works.
Ciao
Marco
You have the gift to making
You have the gift to making *very* entertaining this bug hunt!
Yeah, at this point seems more a driver (or chan_celliax) problem...
But the fact that it works with minicom (that use the same driver) seems to tell that is chan_celliax to be guilty...
So, minicom has not this 16 chars limit?
Have your friend updated the firmware?
Can you replicate all the commands with minicom?
It is very bizarre that it answer OK to AT+CNMI=3,1,0,0,0 it is supposed to be not supported on c350...
Ops sry, I mean it "works"
Ops sry, I mean it "works" because there are no "(Resource temporarily unavailable)" error messages, but modems says "ERROR" to AT+CNMI=3,1,0,0,0.
No, I've not updated yet. I have to wait till wednesday, but I would like to keep this non working phone to helps you with the debugging, maybe I can learn something :)
Next command (a fake call) is 26 chars, in minicom:
12345678901234567890123456
AT+CKPD="EEE123456799012S"
OK
+MCST: 17
+MCST: 17
+MCST: 1
Btw, "chat" program works too, i use it to power up and shutdown the phone while pc boots or shuts down. (It sends 'AT+CKPD="P",40,40' which is 17 chars)
( bash function, copy & paste, this forum shows double ' as " )
gennaman:~# powerBUTTONchat()
{
# Command/Espect Parameter/Sended data
/usr/sbin/chat -v \
ECHO OFF \
TIMEOUT 5 \
'' ATZ \
OK 'AT+CKPD="P",40,40' \
OK ''
}
gennaman:~# powerBUTTONchat > /dev/ttyACM0 < /dev/ttyACM0
Can't we try to change serial_write_AT_expect serial_write_AT sending 1 char per time instead sending a string?
Another question:
Isn't it strange minicom can connect to serial while celliax runs?
My powerBUTTONchat function works too while celliax is running!
Marco
Writing one char at time was
Writing one char at time (releasing the cpu between each write) was my best hope for this case, and you think the same, so...
let's try it!
Is modified now in svn, and it works for me (but it was working also without this mod, so...).
Update the sources (cd into the celliax_stuff directory and execute 'svn update').
Then make install, and let's see...
That's a GOAL!! Ok both
That's a GOAL!!
Ok both phones works perfectly now :)
Nice job!
Super!!!
Super!!!