LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Double ttyACM node device from Sony Ericsson C510 (https://www.linuxquestions.org/questions/linux-newbie-8/double-ttyacm-node-device-from-sony-ericsson-c510-900457/)

jcampos79 08-31-2011 02:26 PM

Double ttyACM node device from Sony Ericsson C510
 
Hi.


I'm using smstools3 and Sony Ericsson Phones to send SMS. My system did work well with 4 phones, now I want to connect 20.
The issue is that each phone generates two ttyACMXX devices using cdc_acm driver, and for limitations the driver supports up to 32 ACM devices

Code:

Aug 31 09:51:19 smsgw kernel: cdc_acm 2-2:1.1: ttyACM31: USB ACM device
Aug 31 09:51:19 smsgw kernel: cdc_acm 2-2:1.3: ttyACM32: USB ACM device
Aug 31 09:51:19 smsgw kernel: usbcore: registered new driver cdc_acm
Aug 31 09:51:19 smsgw kernel: drivers/usb/class/cdc-acm.c: v0.25:USB Abstract Control Model driver for USB modems and ISDN adapters
Aug 31 09:51:19 smsgw kernel: usbcore: registered new driver cdc_ether
Aug 31 09:51:19 smsgw kernel: usb 2-2: unsupported MDLM descriptors
Aug 31 09:52:01 smsgw kernel: cdc_acm 3-1:1.0: no more free acm devices

From the ttyACM devices created by the driver I only use the first one..

So I was wondering if it is possible to remove a ttyACM from /sys/class/tty/ttyACM1

I tried unlink /dev/ttyACM1, but it persist as a device on /sys/class/tty/

The devices are removed if I disconnect the phone, So I think would be possible also that the driver only create one ttyACM device..

Please guide me...

Thanks in advance.

xeleema 09-02-2011 01:54 AM

Greetingz!

I would take a look at the code for the driver and make sure that 32 device limitation isn't there for a reason.
From what I understand, you can setup up to 16 phones this way, yes?

How big are the SMS messages you're sending? (Can you provide example?)
Maybe more phones isn't the best answer?

jcampos79 09-02-2011 09:00 AM

Thanks for your interest

Quote:

Originally Posted by xeleema (Post 4459360)
Greetingz!

I would take a look at the code for the driver and make sure that 32 device limitation isn't there for a reason.
From what I understand, you can setup up to 16 phones this way, yes?

To be honest, I found the driver but cannot understand any :(
That is correct up to 16 phones.
Quote:

Originally Posted by xeleema (Post 4459360)
How big are the SMS messages you're sending? (Can you provide example?)
Maybe more phones isn't the best answer?

Ok, let me try to explain.

I need to send 50000 SMS by campaign and deliver as soon as possible, for costs reason we can send only 2500 sms per phone line.

Each phone can send 8 sms per minute in average. So we can send about 480 hour/phone,
using the 20 phones are about 9600 sms/hour, I can deliver the whole campaign in 5.3 hours.
using the 16 phones are about 7680 sms/hour, I can deliver the whole campaign in 6.51 hours. (disconnecting other phone lines )

I was thinking, maybe would be possible cancel the auto configure option for the phones when connecting, and using udev or something only configure the ttyACM needed, in udev monitor I can see that the only difference are the interface number of each device.

Regards..

jcampos79 01-03-2012 04:54 PM

Finally, I Found it.

Modifying the " #define ACM_TTY_MINORS " I use 90 instead of 32.

Using a fresh install of Gentoo Linux.

Maybe compile the driver only is the best, but honestly I do not know how.

pabload 05-04-2015 12:35 PM

Quote:

Originally Posted by jcampos79 (Post 4565131)
Finally, I Found it.

Modifying the " #define ACM_TTY_MINORS " I use 90 instead of 32.

Using a fresh install of Gentoo Linux.

Maybe compile the driver only is the best, but honestly I do not know how.

Hello! Finaly, how do you solve it? How do you modify the '#define ACM_TTY_MINORS'?

Thanks in advanced for your answer!!

jcampos79 05-04-2015 04:07 PM

Quote:

Originally Posted by pabload (Post 5357757)
Hello! Finaly, how do you solve it? How do you modify the '#define ACM_TTY_MINORS'?

Thanks in advanced for your answer!!

Hi.. You have to change the "#define ACM_TTY_MINORS" on the kernel source /drivers/usb/class/cdc-acm.h, and compile the kernel.

regards.

pabload 05-04-2015 08:17 PM

Quote:

Originally Posted by jcampos79 (Post 5357875)
Hi.. You have to change the "#define ACM_TTY_MINORS" on the kernel source /drivers/usb/class/cdc-acm.h, and compile the kernel.

regards.

Thank you very much!!!

pabload 05-06-2015 05:36 PM

Quote:

Originally Posted by jcampos79 (Post 5357875)
Hi.. You have to change the "#define ACM_TTY_MINORS" on the kernel source /drivers/usb/class/cdc-acm.h, and compile the kernel.

regards.

Hello jcampos79! I tried to recompile the kernel without success. Actually I'm a little lost. If I pay you, could you do it? I'll pay what you tell me.
Do you speak Spanish?
Thanks in advance!


All times are GMT -5. The time now is 07:15 PM.