moto4lin - официальная поддержка, Изменения/пожелания/предложения. |
Здравствуйте, гость ( Вход | Регистрация ) |
moto4lin - официальная поддержка, Изменения/пожелания/предложения. |
А. П. |
3.3.2005, 1:04
|
Новичок Группа: Пользователи Сообщений: 8 Регистрация: 23.2.2005 Пользователь №: 37 474 Модель телефона: C350l Рейтинг: 0 |
|
wRAR |
3.3.2005, 5:31
|
Ветеран Группа: Почётные мотофаны Сообщений: 367 Регистрация: 19.2.2005 Из: Екатеринбург Пользователь №: 37 277 Модель телефона: Galaxy S4 Рейтинг: 97 |
2fb3: жаль, у меня последних сизифных 2.4 нету. Могу только на 2.4.26-alt6 из М2.4 проверить.
2А. П.: :) |
aevseev |
3.3.2005, 6:15
|
Новичок Группа: Пользователи Сообщений: 3 Регистрация: 3.3.2005 Пользователь №: 38 002 Модель телефона: Motorola c350 Прошивка: C350_G_09.04.74R Рейтинг: 0 |
Скачал 0.3.0, собрал, проверил. Нашел несколько граблей:
1. Preferences, USB View -> Update list по всей видимости открывает слишком много файлов (или других дескрипторов). В результате, после него не сохраняются настройки. 2. Версия 0.2.1 хотя бы определяла мой телефон (c350), а 0.3.0 выдает: Код [info] Phone pluged as P2K Try to connect [info] Phone connected as P2K [error] Unable to get phone model [error] Unable to get drive name [error] Unable to get file count [error] Unable to get drive name 3. После непродолжительного созерцания вышеуказанных ошибок телефон самопроизвольно отключается: Код [info] Phone disconnected [info] Phone is unpluged И после этого давить на Connect бесполезно, надо перезапускать moto4lin P.S. Давно мечтал о такой программе. Спасибо! С нетерпением жду работоспособную версию, и, если надо, чем могу - помогу. P.P.S. А, случайно, никто не знает, как победить кодировку в kmobiletools? |
wRAR |
3.3.2005, 7:30
|
Ветеран Группа: Почётные мотофаны Сообщений: 367 Регистрация: 19.2.2005 Из: Екатеринбург Пользователь №: 37 277 Модель телефона: Galaxy S4 Рейтинг: 97 |
Цитата Версия 0.2.1 хотя бы определяла мой телефон (c350) Забавно. Какие Id у него?Цитата А, случайно, никто не знает, как победить кодировку в kmobiletools? dion'овский патч: --- old/gsm.cpp 2004-12-07 17:24:03.000000000 +0200 +++ new/gsm.cpp 2005-02-20 20:28:30.000000000 +0200 @@ -92,6 +92,7 @@ device->sendCommand(\"AT+CGMI;+CGMM;+CGMR;+CGSN\\r\", 200); if( QString(device->getBuffer()).contains(\"motorola\",false) ) isMotorola=true; else isMotorola=false; if( isMotorola && !(device->sendCommand(\"AT+MMGL=?\\r\") ) ) canDoMM=true; else canDoMM=false; + device->sendCommand(\"AT+CSCS=UCS2\\r\",200); } pdu=device->isPDU(); kdDebug() << \"PDU mode: \" << pdu << endl; Потом выставить кодировку UCS2 в настройках. |
aevseev |
3.3.2005, 7:52
|
Новичок Группа: Пользователи Сообщений: 3 Регистрация: 3.3.2005 Пользователь №: 38 002 Модель телефона: Motorola c350 Прошивка: C350_G_09.04.74R Рейтинг: 0 |
Цитата(wRAR @ Четверг, 3 Марта 2005, 11:30) Забавно. Какие Id у него? 22b8:3802 - AT 22b8:3801 - P2k P.S. Что-то не помог патч, все равно квадратики... А UCS2 я сразу выставил. P.P.S. Забавно, в соседнем minicom'е дал ему команду AT+CSCS=UCS2 и сразу все стало нормально. P.P.P.S. Опять вру. SMS-ки читаются, адресная книга - нет. Сообщение отредактировал aevseev - 3.3.2005, 8:49 |
gh0s1 |
3.3.2005, 10:19
|
Новичок Группа: Пользователи Сообщений: 2 Регистрация: 6.12.2004 Пользователь №: 25 278 Модель телефона: Motorola E398 Прошивка: 8BR Рейтинг: 0 |
a s GTK mozhna etu progu? please clap;applo
|
dion |
3.3.2005, 11:09
|
/dev/null Группа: System Administrators Сообщений: 528 Регистрация: 21.12.2004 Из: Kiev, Ukraine Пользователь №: 28 801 Модель телефона: E680i, C380 Рейтинг: 70 |
aevseev, настройки должны сохранятся. Файлы в Update list вообще не открываются. Ты должен отсоеденить трубу, затем снова ее подсоеденить. (Чтоб убедится что труба в AT режиме). В окне preferences указываем ACM device (устройство модема, для Debian с usbfs /dev/usb/acm/0). Далее выбери Preferences->Update List. Появится список USB устройств. Выбераешь Телефон в AT режиме, затем жмешь Set as AT device. Затем жмешь Switch to P2K. Прога переведет тел в P2k. Затем подожди 3-5 сек, чтоб тел переключился. Затем опять Update List, выбераем тел в режиме P2k. Жмем Set as P2k device. Дальше Ok.
PS. Можно конечно в соответствующие поля ввести Vendor/product самому, если знаешь их. Теперь все должно работать. gh0s1, Лично я делать GTK (и другие) версии прог не собираюсь, но через пару дней выложу следующую версию moto4lin, с разделенными P2k API и GUI (API в виде C либы). А потом может кто другой на основе готового API напишет GTK версию. PPS. Если че не получается, ко мне можно достучаться через жабу dion@jabber.org aevseev, вот патч для kmobiletools 0.2 Код --- old/gsm.cpp 2004-12-07 17:24:03.000000000 +0200 +++ new/gsm.cpp 2005-02-20 20:28:30.000000000 +0200 @@ -92,6 +92,7 @@ device->sendCommand("AT+CGMI;+CGMM;+CGMR;+CGSN\r", 200); if( QString(device->getBuffer()).contains("motorola",false) ) isMotorola=true; else isMotorola=false; if( isMotorola && !(device->sendCommand("AT+MMGL=?\r") ) ) canDoMM=true; else canDoMM=false; + device->sendCommand("AT+CSCS=UCS2\r",200); } pdu=device->isPDU(); kdDebug() << "PDU mode: " << pdu << endl; |
aevseev |
3.3.2005, 11:44
|
Новичок Группа: Пользователи Сообщений: 3 Регистрация: 3.3.2005 Пользователь №: 38 002 Модель телефона: Motorola c350 Прошивка: C350_G_09.04.74R Рейтинг: 0 |
Цитата(dion @ Четверг, 3 Марта 2005, 15:09) aevseev, настройки должны сохранятся. Файлы в Update list вообще не открываются. Ты должен отсоеденить трубу, затем снова ее подсоеденить. (Чтоб убедится что труба в AT режиме). В окне preferences указываем ACM device (устройство модема, для Debian с usbfs /dev/usb/acm/0). Далее выбери Preferences->Update List. Появится список USB устройств. Выбераешь Телефон в AT режиме, затем жмешь Set as AT device. Затем жмешь Switch to P2K. Прога переведет тел в P2k. Затем подожди 3-5 сек, чтоб тел переключился. Затем опять Update List, выбераем тел в режиме P2k. Жмем Set as P2k device. Дальше Ok Ладно. Я нажимал Update list в P2k режиме, а не в AT. Так что, это баг или фича, что в P2k режиме мало того, что в списке ничего не появляется (впрочем, после Ваших объяснений понятно почему), но список дескрипторов переполняется. Я смотрел straсe'ом - там сплошние ошибки "EMFILE (Too many open files)", причем все дескрипторы уходят на /etc/localtime: open("/proc/bus/usb/002/001", O_RDONLY) = 11 open("/etc/localtime", O_RDONLY) = 13 ... open("/etc/localtime", O_RDONLY) = 1023 open("/etc/localtime", O_RDONLY) = -1 EMFILE (Too many open files) open("/etc/localtime", O_RDONLY) = -1 EMFILE (Too many open files) После этого, соответственно, не открывается файл конфигурации с той же EMFILE. Если это фича, то напишите большими красными буквами: "Не нажимать Update list в режиме P2k!" Цитата PS. Можно конечно в соответствующие поля ввести Vendor/product самому, если знаешь их. Теперь все должно работать. Так и сделал. Цитата aevseev, вот патч для kmobiletools 0.2 Не помогает он. Нормально русские символы отображаются, только если в соседней терминалке ввести ту же команду (AT+CSCS=UCS2). Зато я понял, почему у меня SMS-ки читались, а адресная книга - нет... Мой косяк, не поставил птичку про очистку списка телефонов перед обновлением. |
dion |
3.3.2005, 21:08
|
/dev/null Группа: System Administrators Сообщений: 528 Регистрация: 21.12.2004 Из: Kiev, Ukraine Пользователь №: 28 801 Модель телефона: E680i, C380 Рейтинг: 70 |
aevseev, у меня работает kmobiletools. Возьми с моего поста, а не wRAR. Они слегка отличаются. На счет Update List проверю.
|
dion |
3.3.2005, 21:57
|
/dev/null Группа: System Administrators Сообщений: 528 Регистрация: 21.12.2004 Из: Kiev, Ukraine Пользователь №: 28 801 Модель телефона: E680i, C380 Рейтинг: 70 |
Итак. На всякий случай проверил тем же strace. У меня этого бага нет. К сожалению я не могу воспроизвести ошибку.
>> Если это фича, то напишите большими красными буквами: "Не нажимать Update list в режиме P2k!" Вся фича в том, что ее можно и даже нужно нажимать как в AT так и в P2K режиме, если не помнишь Vendor/Product ID. Во всяком случае у еня работает. Проверив этот участок кода, обнаружил баг, что нельзя выставить AT device, если включен Autoconnect. (Он успевает перевести трубу в P2K режим). Diff прилагается:z Код diff -Nuar old/moto_ui/form1.cpp new/moto_ui/form1.cpp --- old/moto_ui/form1.cpp 2005-03-02 20:59:06.000000000 +0200 +++ new/moto_ui/form1.cpp 2005-03-03 23:54:49.000000000 +0200 @@ -52,6 +52,7 @@ myCfg= new appConfig(this,"myCfg"); phone=new PhoneMan(this, "phone"); wasMode=0; + enableAutoConnect=1; connect(phone, SIGNAL(postMsg(int, const QString& )), this, SLOT(onPostMsg(int, const QString& ))); connect(phone, SIGNAL(statusChanged(int)), this, SLOT(onStatusChanged(int))); @@ -163,7 +164,7 @@ case PHONE_P2K: s="P2K"; break; } lblMode->setText(QString("Mode: %1").arg(s)); - if ((mode!=PHONE_NONE) && (!wasMode) && (myCfg->cfgAutoConnect)) + if ((mode!=PHONE_NONE) && (!wasMode) && (myCfg->cfgAutoConnect) && (enableAutoConnect)) phone->openPhone(); wasMode=mode; } @@ -297,8 +298,13 @@ f1.chkAutoExpandTree->setChecked(myCfg->cfgAutoExpandDirTree); f1.chkGoLastFolder->setChecked(myCfg->cfgGoLastFolder); f1.chkLoadList->setChecked(myCfg->cfgLoadList); - - if (!f1.exec()) return; + + enableAutoConnect=0; + if (!f1.exec()) + { + enableAutoConnect=1; + return; + } strcpy(myCfg->cfgACMdevice,f1.txtACMdev->text().latin1()); myCfg->cfgATvendor=f1.txtATvendor->text().toUInt(0,16); @@ -313,4 +319,5 @@ myCfg->cfgLoadList=f1.chkLoadList->isChecked(); myCfg->saveConfig(); loadConfig(); + enableAutoConnect=1; } diff -Nuar old/moto_ui/form1.h new/moto_ui/form1.h --- old/moto_ui/form1.h 2005-03-02 16:05:57.000000000 +0200 +++ new/moto_ui/form1.h 2005-03-03 23:51:33.000000000 +0200 @@ -65,6 +65,7 @@ int wasMode; char connect_tmp; + char enableAutoConnect; void updateStatus(); Итак. На всякий случай проверил тем же strace. У меня этого бага нет. К сожалению я не могу воспроизвести ошибку. >> Если это фича, то напишите большими красными буквами: "Не нажимать Update list в режиме P2k!" Вся фича в том, что ее можно и даже нужно нажимать как в AT так и в P2K режиме, если не помнишь Vendor/Product ID. Во всяком случае у еня работает. Проверив этот участок кода, обнаружил баг, что нельзя выставить AT device, если включен Autoconnect. (Он успевает перевести трубу в P2K режим). Diff прилагается:z Код diff -Nuar old/moto_ui/form1.cpp new/moto_ui/form1.cpp --- old/moto_ui/form1.cpp 2005-03-02 20:59:06.000000000 +0200 +++ new/moto_ui/form1.cpp 2005-03-03 23:54:49.000000000 +0200 @@ -52,6 +52,7 @@ myCfg= new appConfig(this,"myCfg"); phone=new PhoneMan(this, "phone"); wasMode=0; + enableAutoConnect=1; connect(phone, SIGNAL(postMsg(int, const QString& )), this, SLOT(onPostMsg(int, const QString& ))); connect(phone, SIGNAL(statusChanged(int)), this, SLOT(onStatusChanged(int))); @@ -163,7 +164,7 @@ case PHONE_P2K: s="P2K"; break; } lblMode->setText(QString("Mode: %1").arg(s)); - if ((mode!=PHONE_NONE) && (!wasMode) && (myCfg->cfgAutoConnect)) + if ((mode!=PHONE_NONE) && (!wasMode) && (myCfg->cfgAutoConnect) && (enableAutoConnect)) phone->openPhone(); wasMode=mode; } @@ -297,8 +298,13 @@ f1.chkAutoExpandTree->setChecked(myCfg->cfgAutoExpandDirTree); f1.chkGoLastFolder->setChecked(myCfg->cfgGoLastFolder); f1.chkLoadList->setChecked(myCfg->cfgLoadList); - - if (!f1.exec()) return; + + enableAutoConnect=0; + if (!f1.exec()) + { + enableAutoConnect=1; + return; + } strcpy(myCfg->cfgACMdevice,f1.txtACMdev->text().latin1()); myCfg->cfgATvendor=f1.txtATvendor->text().toUInt(0,16); @@ -313,4 +319,5 @@ myCfg->cfgLoadList=f1.chkLoadList->isChecked(); myCfg->saveConfig(); loadConfig(); + enableAutoConnect=1; } diff -Nuar old/moto_ui/form1.h new/moto_ui/form1.h --- old/moto_ui/form1.h 2005-03-02 16:05:57.000000000 +0200 +++ new/moto_ui/form1.h 2005-03-03 23:51:33.000000000 +0200 @@ -65,6 +65,7 @@ int wasMode; char connect_tmp; + char enableAutoConnect; void updateStatus(); |
Текстовая версия | Сейчас: 15.6.2024, 21:14 |
Форум живёт: