5 нояб. 2007 г.

Подключение WindowsMobile 2003 PocketPC к Linux с помощью SynCE

Сложилось так, что я являюсь счастливым (но во многих аспектах и несчастным) обладателем цифрового устройства типа PocketPC. Устройство носит гордую марку "Samsung SGH-i700". Счастливый я потому, что все-таки это довольно удобная штука для хранения информации, совершения звонков, написания смс-сообщений и общения в сети. К "несчастливым" аспектам относится, в частности, то, что штуковина работает под управлением Windows Mobile 2003. В итоге его приходится перезагружать (каждый раз вынимая аккумулятор, ага) чуть ли не каждые часа полтора-два активного использования для стабильной работы. Ладно, недостатки технических решений Microsoft - это тема для отдельной статьи, причем не одной.

Постановка задачи
Итак, мне нужно настроить свою ОС Ubuntu таким образом, чтобы при подключении телефона (если позволите так называть этот долбаный кирпич) она автоматически подключалась к нему, каким-либо образом информируя меня об этом. Также мне нужно иметь возможность доступа к файлам моего ПДА, устанавливать программы непосредственно из ОС и делать это быстро при минимуме движений пальцами по клавиатуре. Последнее важно потому, что очень часто у меня нет возможности или желания (лень) вовремя подзарядить телефон. В итоге все мои установленные программы отправляются в /dev/null, причиняя мне тем самым глубокие душевные страдания.

Выбор оптимального решения
Для моей задачи я выбрал программу SynCE. Теперь мне нужно:

1. Установить программу;
2. Настроить;
3. Наладить подключение к ПДА;
4. Автоматизировать процесс подключения;
5. Автоматизировать процесс восстановления установленных программ;

Let's fuck our brains out
Приступим, господа:

1. Установка
a) Мне нужно установить следующие пакеты:

  • libsynce0
  • librapi2
  • librra0
  • synce-dccm
  • syncekonnector
  • synce-serial
  • synce-kde
  • synce-multisync-plugin

Делается это с помощью Синаптика, но быстрее выполнить в консоли следующий код:
sudo apt-get install libsynce0 librapi2 librra0 synce-dccm syncekonnector synce-serial synce-kde synce-multisync-plugin


b) Также мне понадобятся пакеты:
  • synce-gnomevfs (для доступа к файлам через Наутилус)
  • synce-software-manager (для установки/удаления программ)
  • synce-trayicon (значок для трея)


Поэтому:
wget http://kuci.org/~teddy/ubuntu/synce-gnomevfs_0.9.0-2_i386.deb
wget http://kuci.org/~teddy/ubuntu/synce-software-manager_0.9.0-2_i386.deb
wget http://kuci.org/~teddy/ubuntu/synce-trayicon_0.9.0-2_i386.deb


И:
sudo dpkg -i synce-gnomevfs_0.9.0-2_i386.deb
sudo dpkg -i synce-software-manager_0.9.0-2_i386.deb
sudo dpkg -i synce-trayicon_0.9.0-2_i386.deb


c) Нужно еще создать символическую ссылку, чтобы всё это работало:
sudo ln -s /usr/lib/libgtop-2.0.so.X /usr/lib/libgtop-2.0.so.2

где X - версия библиотеки. У меня на Ubuntu 7.10 - это "7". У вас - может быть другая, поэтому ищите файл /usr/lib/libgtop-2.0.so.X

Оригинальный текст: здесь

2. Настройка.
a) SynCE перехватывает USB-соединения с помощью модуля ядра ipaq. В дефолтных ядрах он присутствует, соответственно, по дефолту. Если стоит собственное ядро, то необходимо этот модуль скомпилить.

Note: не забыть включить в ядро следующие позиции (!):
Device Drivers ---> USB Support ---> USB Serial Converter support --->
USB PocketPC PDA Driver

Device Drivers ---> Network device support ---> PPP (point-to-point protocol) support
PPP support for async serial ports


b) Далее необходимо убедиться, что устройство будет нормально и безопасно работать с SynCE.
Устройство не должно быть подключено к компьютеру!Выполнить в терминале:
cat /proc/bus/usb/devices > /tmp/before

Подключить устройство и выполнить:
cat /proc/bus/usb/devices > /tmp/after

Затем отключить и сравнить:
diff /tmp/before /tmp/after


Должно быть что-то в духе этого:
23a24,31
> T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 10 Spd=12 MxCh= 0
> D: Ver= 1.00 Cls=ff(vend.) Sub=ff Prot=ff MxPS= 8 #Cfgs= 1
> P: Vendor=049f ProdID=0003 Rev= 0.00
> C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 2mA
> I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ipaq
> E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> E: Ad=82(I) Atr=02(Bulk) MxPS= 16 Ivl=0ms

Важные части помечены красным. Если все сходится - можно продолжать.

Если же результат похож на это:
T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 9 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=ef(unk. ) Sub=01 Prot=01 MxPS=16 #Cfgs= 1
P: Vendor=0bb4 ProdID=0b01 Rev= 0.00
S: Manufacturer=MSFT
S: Product=PocketPC USB Sync
C:* #Ifs= 2 Cfg#= 1 Atr=c0 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=ef(unk. ) Sub=01 Prot=01 Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=1ms
I: If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=(none)
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=03(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms

то лучше остановиться! Скорее всего, на устройстве стоит WM2005, а не 2003 и данная инструкция может привести к непредсказуемым последствиям!

c) Дальше нужно посмотреть на параметр #Cfgs=, если его значение - 1, то можно читать дальше. Если нет - разработчики SynCE советуют связаться с ними и сообщить некоторые детали о своем устройстве и системе. Подробнее читайте в оригинальном тексте статьи (ссылка внизу).

Смотрим на параметр Driver=. Если стоит ipaq или usbserial, значит устройство распознано и вообще жизнь налаживается. Если стоит (none), значит что-то не так. Скорее всего отсутствует или не подключен модуль. Для решения, опять же, читайте оригинальную статью.

Теперь нужно посмотреть на параметр #EPs= (USB endpoints). Если равен "2" или "3" - все отлично. Если "4" - обращайтесь к оригинальной статье за помощью.

Оригинальный текст: здесь

3. Настройка подключения.
a) Подключить устройство;

b) От рута пробовать следующие команды, до тех пор, пока одна из них не выдаст положительный результат (у меня сработала первая же):
  • synce-serial-config ttyUSB0
  • synce-serial-config tts/USB0
  • synce-serial-config usb/tts/0
  • synce-serial-config usb/ttyUSB0
  • synce-serial-config ttyu0


c) Здесь надо еще сказать, что некоторым бывает необходимо настроить файрвол. У меня, однако, стоят стандартные правила и проблем не было.
Если что, нужно открыть следующие TCP порты:
От устройства к ПК - 5678, 5679.
От ПК к устройству - 990.

d) Пришло время проверить соединение.
Устройство должно быть отключено от компьютера! От своего пользователя (не от рута) выполнить:
vdccm

или для устройств с паролем:
vdccm -p password


Эта команда должна быть выполнена после каждой перезагрузки

Подключить ПДА. Выолнить с sudo:
sudo synce-serial-start

для, собственно, установки подключения.
Должно появиться сообщение synce-serial-start is now waiting for your device и, после нескольких секунд, опять перед глазами командная строка! Если нет - значит не повезло.

Чтобы протестировать соединение, достаточно выполнить команду:
synce-pstatus

которая должна выдать информацию о подключенном устройстве.

e) Отключать устройство следует не простым выдергиванием шнура, а, как белый человек, следующими командами:
killall -HUP dccm

либо
synce-serial-abort

либо через значок в трее.

4. Автоматизация подключения.
Итак, я хочу, чтобы при подключении ПДА, SynCE автоматически соединялся с ним и помещал иконку в трей.
a)Для этого мне нужно, во-первых, создать правило по адресу /etc/udev/rules.d/z30_synce.rules со следующим содержанием:
BUS!="usb", ACTION!="add", KERNEL!="ttyUSB*", GOTO="synce_rules_end"
SYSFS{idVendor}=="0bb4", SYSFS{idProduct}=="0a02", RUN+="/usr/local/sbin/synce-serial-start"
LABEL="synce_rules_end"

Только нужно заменить значения idVendor и idProduct на свои, которые могут быть получены с помощью команды lsusb.

b)Во-вторых, в меню "Ситема -> Параметры -> Сеансы" (для Ubuntu) добавить запуск программы vdccm.

c)В-третьих, чтобы лицезреть иконку в трее, нужно зайти в пункт меню "Ситема -> Параметры -> Сменные устройства и носители" и на вкладке КПК поставить галочку Синхронизировать устройство PocketPC при подключении, введя команду synce-trayicon.
Всё.

5. Автоматизация восстановления программ.
Я написал небольшой скрипт, в который поместил следующее:
#!/bin/sh
echo "Restoring PocketPC files..."
echo "Installing Opera:"
synce-install-cab /media/storage1/Backup/PDA/opera_wm2003_ppc_865.cab
sleep 12
echo "Installing QIP:"
synce-install-cab /media/storage1/Backup/PDA/Setup_QIP_PPC2003.CAB
sleep 8
echo "Installing Resco Keyboard:"
synce-install-cab /media/storage1/Backup/PDA/resco.keyboard.pro.4.37_RUSkey/cab/RKeyboard_p.ARM.CAB
sleep 8
echo "Done!"

synce-install-cab - это программа, которая устанавливает cab-файл, переданный ей параметром. Сохраняю файл как, например, synce-restore-all, помещаю в домашнюю папку и даю права на исполнение. Теперь, при необходимости восстановления моих программ мне достаточно набрать в терминале:
./synce-restore-all

из домашней папки.

Команды SynCE
Список команд для фанатов консоли:
  • pcp - копировать файлы
  • pls - отобразить содержимое директории
  • pmkdir - создать директорию
  • pmv - переместить (переименовать) файлы
  • prm - удалить файл
  • prmdir - удалить пустую директорию
  • prun - запустить программу
  • pstatus - информация об устройстве
  • synce-install-cab - установить .cab файл


Not today
У меня так и не получилось реализовать следующее:
1) Если при старте компьютера устройство уже подсоединено к нему, то SynCE не подключится и ничего работать не будет. Происходит это, видимо, потому, что сначала стартует synce-serial-start по правилу, которое помещено в папку udev, а уже потом - vdccm, который должен быть запущен до присоединения устройства.
2) При отсоединении значок из трея не пропадает, а при повторном соединении появляется второй аналогичный значок.
3) Не работает интернет на ПДА через компьютер. Вообще-то мне это и не особо нужно.

Rock is dead?
Знаете, когда я вижу такую долбоебическую (дети, закройте уши!) реализацию настройки, как у SynCE, мне становится очень грустно и обидно за Linux. Можно же было не трахать пользователям мозг и сделать автоматическую настройку и реализовать нормальную возможность автоподключения. Нет, блять, мы не ищем легких путей (hello, Gentoo!) и презираем компьютерную мышь.
Извините.

16 комментариев:

DataGreed комментирует...

Все сделал, как говорилось.

Один раз получилось (батарею показывал, иконка вт рее загорелась; только не работал плагин для наутилуса), но после отключения устройства работать все перестало. Перезагрузка не помогла.

Теперь приглашение после synce-serial-start выдается, но pstatus выдает строку:
synce-pstatus: Could not find configuration at path '(Default)'

Pablo Escobar комментирует...

А на WM6 как делать, подскажите.

Alex Emergy комментирует...

Вот что касается камня в огород Gentoo, мне достаточно было набрать emerge synce и перезагрузить иксы ;)

ОлегЪ комментирует...

Все нормально работает на Ubuntu 9.10, но с бубном долго вокруг нее плясал. Делал по мануалу с офсайта

Анонимный комментирует...

It is rather interesting for me to read the post. Thank author for it. I like such topics and everything connected to this matter. I definitely want to read more soon.
Alex
Cell jammers

Анонимный комментирует...

How can i wipe windows xp from my laptop and reinstall windows Me -the laptops indigenous software?
I suffer with recently bought a familiar laptop that is old. The person I had bought it from had installed windows xp on it, even for all that it at came with windows Me. I after to eradicate the windows xp because it runs slows on the laptop because it takes up more honour than the windows Me would. Also I wish to unseat windows xp because it is an illegal copy. So when I tried to stir one's stumps updates on it, windows would not initiate updates because the windows xp is not genuine. [URL=http://hahxuvl.tripod.com]adding deinterlacing to security cameras[/URL]
----------------------------------------------------------------------

Answers :

It's more advisedly to take one's leave of [URL=http://keuqiia.tripod.com/speedy-gonzalez-sound-effects.html]speedy gonzalez sound effects[/URL] Windows XP and just upgrade your laptop. It's much better. [URL=http://uvxwulf.tripod.com/mio-heart-rate-monitor.html]mio heart rate monitor[/URL] Besides, Windows XP is scheme [URL=http://merauqf.tripod.com/m3dss-file-sort.html]m3dss file sort[/URL] heartier then Windows Me. Windows Me is unused and divers programs that can run with XP, can't [URL=http://boixpau.tripod.com/chnm-essays.html]chnm essays[/URL] vamoose with Me.
------------------------------
all you have to do is addition the windows me disk into the cd drive. then reboot your laptop, when the coal-black [URL=http://ozouyez.tripod.com/cherry-angiomas.html]cherry angiomas[/URL] shield with all the info comes up and when it asks u to boot from cd [URL=http://ftpzsee.tripod.com/smile-makeover-orange-county.html]smile makeover orange county[/URL] belt any latchkey when it tells you to then instal from there !!! I RECOMEND SINCE ITS AN ILLEAGLE IMITATION TO WIPE [URL=http://rgivrmi.tripod.com/australian-story-hell-for-leather.html]australian story hell for leather[/URL] ELSEWHERE THE [URL=http://swnauxe.tripod.com/mike-myers-news-topix.html]mike myers news topix[/URL] TOTAL MAGISTERIAL GOAD WHEN IT ASKS YOU WHICH IMPENETRABLE [URL=http://pncoayo.tripod.com/burton-walrad.html]burton walrad[/URL] DRIVE TO SETTLE IT ON. THEN SUM ALL THE ABOVE ARRAY ON THE INSINCERE [URL=http://merauqf.tripod.com/mac-acupuncture-needles-bulk-package.html]mac acupuncture needles bulk package[/URL] FLINTY TRAVEL ONTO A BRAND-NEW COLUMN LOCATION, IT ON LOOK LIKE C:/ Exposed or something like that

Анонимный комментирует...

Здравствуйте!
Программа SoftHell PM-Bot (старое название HACSoft PM-Bot), предназначена для массовой рассылки личных сообщений на форумах.
Возможности:
1. Поддерживает многие типы форумов:SMF, ExBB, IPB1, IPB2, IPB3, IPB2 MR, miniBB, phpBB2, PunBB, vBulletin2, vBulletin 3(по 5 сообщений за раз), vBulletin3 MR(по 5 сообщений за раз)
2. Форумы описываются в специальных драйверах, т.е. при желании софт можно настроить и на другие форумы.
3. Рассылка от нескольких пользователей одновременно (обход антифлуда).
4. Работа через прокси-сервер.
5. Система вариаций
6. И многое другое...


Программа обновилась до версии 2.1, не поддавайтесь на уловки мошенников со взломанной, устаревшей и не работающей версией программы.
Цена 4500 руб. При необходимости покупка через гаранта.
Контакты: icq 574444591
Сайт: http://softhell.ru
Жду всех а аське.

Анонимный комментирует...

[url=http://www.pi7.ru/foto/1529-neobychnyy-lifchik-8-foto.html ]Роберт Паттинсон вывел в свет любимую блондинку [/url]
Всем привет! Нахожусь на 14-ой неделе берем-ти, всё протекает нормально (т-т-т), сегодня пришли результаты TORCH-анализа, нашли уреаплазму 10 в 3 степени. Насколько я знаю, это некритично. Я лечусь от неё уже кучу времени. То возникала, то исчезала. Никаких неудобств и проявлений не было. Мой гинеколог тогда мне сказала, что можно и не лечить, всё точно еще она будет возникать при пониженном иммунитете. Берем-ть незапланированная, но желанная, - даже не думала, что уреа нужно прям резко пролечить. В ЖК сегодня другой врач мне назначил воспринимать вильпрофен совместно с мужем с 15-ой недели. Я пила его в свое время, довольнодурно перенесла. Сейчас боюсь пить его. Сказала о своих опасенияэ врачу, имеет ли резон её лечить, раз я с ней всю жизнь и не особо страшно всё, кроме всего прочего имеют все шансы с почками трудности возникнуть. Ребенку вообще-то навредить как-то!!! Врач ответила, что имеют все шансы быть какие-то отклонения у ребенка и ему может передасться уреа. Я, может, чего не понимаю, но у меня будет к/с, через родовые пути он навряд ли словит. К тому же что в этом страшного? Но вот слово "отклонения" меня испугало. Одним словом, вопрос таков - имеет ли резон начинать воспринимать лекарства или же нет? Действительно имеют все шансы быть какие-то "отклонения"?

Анонимный комментирует...

Как вам сериал "Дневники вампира"? Сначала очень нравился, а в данный момент действующих. лиц много, абсолютно потерял свой блескась, буквально потерял свой блеска нить повествования.
[url=http://www.2nt.ru/go/ruserotik.php]Молодежное видео[/url]
[url=http://2nt.ru/go/serial.php]Вообще любой сериал и особенно новинки я качаю тут [/url]
[url=http://2nt.ru/go/teets.php]Молодежное видео тут[/url]

Анонимный комментирует...

Как говорилось на Seexi.net Как происходит? По этапам. что делает продавец (снимает с учета, проходит ТО, делает еще что-то?). Что делает клиент? В какие сроки и в какие органы обрахаться за какими документами?

Анонимный комментирует...

Как говорилось на Seexi.net Вот вобщем-то и деревня вопрос. в рассуждении чем говорить с друзьями и приятелями? в рассуждении книгах,моде, погоде? Просто для себя решила, сколько хватит перемалывать косточки знакомым- и выяснила, сколько говорить- то не о чем.

Анонимный комментирует...

Как говорилось на Seexi.net В моей деревне работать негде. А ещё планирую вновь начал учиться. И вот пытаюсь в данный момент сыскать работу в Сургуте. Снимаем с мамой комнату за 8 тыс. У нас по закону, вообще-то, можно работать без регистрации (прописка у меня, естественно, дома). А вот жить невозможно! Что за расхождения? Слава Богу, мама работает уже 5 лет. А вот мне на одной работе сказали, что не имеют все шансы брать без регистрации, т. к. имеют все шансы возникнуть трудности с зарплатой. Ясно, что работодателю просто не хочется задач с законом. Но я же не могу купить квартиру! (никогда, наверно, не смогу). Продавать мне фактически нечего. (наша квартира стоит большее 5 тысяч).
Вот снимаем. А чтоб зарегистрироваться, надо платить 8 тысяч за полгода (или год, не помню). И то по знакомству. А так дороже.
Получается, что я в собственной стране нахожусь как беженка какая-то! Боюсь милиции, а так как она обязана меня защищать... Как жить? Самое главное, что я б и зарегистрировалась, но сначала нужно заработать, а заработать не могу, т. к. нет регистрации. Родственников богатых нет.
Почему я в собственной стране нахожусь на птичьих правах? Кто с таким сталкивался, что можете порекомендовать? Как в других странах? Неужели всё так же? Или мы опять "всех умнее" оказались?

Анонимный комментирует...

Как говорилось на [url=http://www.soki.tv]Seexi.net[/url] Кажется, понятно общее мнение относительно левых подделок брендовых вещей. А что Вы думаете про то, когда довольно хорошо раскрученные у нас компании типа ZARA/H&M/TopShop беззастенчиво крадут у домов моды целые коллекции, выдавая их нам за свои. Что ж выходит, что мы покупаем сплошной фейк??
Для наглядности вот сравнительные фото последних коллекций мужской одежды:

Анонимный комментирует...

Как говорилось на [url=http://www.soki.tv]Soki.TV[/url] Реально ли выиграть в лотерею? Правда ли, что астролог может рассчитать благоприятный день покупки выигрышного билета?
Кто нибудь выигрывал настоящие суммы?

Анонимный комментирует...

black case invicta watches Wholesale watches fossil | Piaget, Longines altimeter watches

Анонимный комментирует...

the broader use of the [url=http://www.ddtshanghaiescort.com]escort shanghai[/url] mechanical man arm Toe the ingest of software or a coins in the annex, the clod arm can be hands down re-assembled