Участник:Petr-akhlamov/Мои приключения с Palm
Купил я себе на Авито PDA Palm. У вас сразу вопрос: "зачем"? Мне очень понравилась их концепция:
- у меня записи - заметки, планы, календари, список дел - на компе, в облаке, на бумаге, на телефоне.
- единого места нет
- на бумаге вести не удобно - старые записи не выкинешь (не вырвешь страницу) но при этом они не нужны и мешают
- смартфон использовать для этого не очень удобно - переключая режимы звуков (я видимо такой ленивый) постоянно пропускаются сигналы календарей и пр. + из-за "энергосбережения" некоторые напоминания "съезжают" по времени
- в PDA все - заметки, список дел, календарь, адресная книга - все в одном месте всегда с собой
- работает на AAA аккамуляторах - легко заменить или зарядить - стандарт
Единственное нужно привыкнуть к:
- стилусу
- ручной настройке контраста экрана
- вводу текста
Но, встает вопрос, как синхронизировать сей девайс с Альтом. Все-таки аппарат б/у шный, записи важные, нужно делать бэкап.
На данной странице буду описывать-разрабатывать описание как его синхронизировать под ALT.
Софт
Pilot-link
Pilot-link - консольная утилита для работы с Palm-устройствами, в основном используется для синхронизации.
J-Pipot
J-Pipot - оболочка для просмотра баз и pilot-link. С Pilot-link она не собирается, будем использовать ее для просмотра баз.
MyPalm
MyPalm - современная утилита для синхронизации Palm.
Установка
Все эти утилиты можно установить одной командой.
1. С https://altlinux.space/petr-akhlamov/-/packages/alt/petr-repo качаем и устанавливаем пакет с репозиторием Петра А.
2. Устанавливаем пакет
# apt-get update # apt-get install petr-task-palm
Оборудование
- Для подключения используется специальная док-станция с кабелем с COM-разъемом от 3com.
- USB2.0 to RS232 Convertor - не с длинным шнуром, а коротенький
Ниже буду описывать попытки подключения.
Шаг 1
Дано:
- Linux 6.12.65
- USB-COM переходник ([0x0403] Future Technology Devices International, Ltd [0x6001] FT232 Serial (UART) IC)
- Palm III xe
- док-станиця
- J-pilot
Готовим оборудование
1. Подключаем USB-COM переходник
2. Подключаем в него док-станцию
3. Этиловым спиртом (если вы давно не пользовались/купили с рук на Авито) я использовал 80% - внимание! опасно для жизни!, ватной палочкой прочищаем контакты док-станции и Palm-а
Если ttyUSB0 появляется и тут же пропадает
Это классический симптом:
❌ плохого контакта в cradle
или
❌ грязных / окисленных контактов Palm
Palm III — чемпион по этой проблеме.
Что реально помогает (практика):
- Почистить контакты Palm
Рекомендуется:
- ватная палочка
- изопропиловый спирт (или хотя бы спирт)
- аккуратно протереть контактную гребёнку снизу Palm
- дать высохнуть
Даем (грубо) права на доступ к порту
# chmod 666 /dev/ttyUSB0
или добавить себя в группу dialout/uucp (в зависимости от дистрибутива).
Ставим ПО
pilot-link jpilot mypalm
Настройка J-Pilot
1. Запускаем программу (раздел Офис)
2. Заходим Preferences → Settings / Port
В поле Port указываем:
/dev/ttyUSB0
Настройка Palm
Идем в: Prefs ⇾ Connections ⇾ Cradle/Cable ⇾ Edit ⇾ Connect to PC, Via Craddle/Cable ⇾ Details ⇨ ставим Speed в bps
Конфликт с brlytty
COM-порт конфликтует с консолью драйвера дисплея Брайля.
Либо удаляем
# apt remove brltty
Создаем файл udev/rules
# mcedit /etc/udev/rules.d/99-disable-brltty.rules
Содержимое:
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ENV{BRLTTY_BRAILLE_DRIVER}="none"
Применяем:
# udevadm control --reload # udevadm trigger
Настраиваем параметры COM-порта
# stty -F /dev/ttyUSB0 9600 cs8 -cstopb -parenb crtscts -ixon -ixoff
Присваиваем имя
$ pilot-install-user -p /dev/ttyUSB0 "PalmIII"
Если не присвоилось, делаем принудительно:
$ pilot-install-user -p /dev/ttyUSB0 -n petr
Проверяем, выводим список БД:
- выполняем команду:
$ pilot-xfer -p /dev/ttyUSB0 -l
- жмем кнопку на док станции, получаем:
$ pilot-xfer -p /dev/ttyUSB0 -l Listening for incoming connection on /dev/ttyUSB0... connected! Reading list of databases in RAM... AddressDB DatebookDB ExpenseDB MailDB MemoDB ConnectionMgrDB NetworkDB npadDB ToDoDB Graffiti AddressCitiesDB CitiesDB AddressCompaniesDB AddressCountriesDB psysLaunchDB Graffiti ShortCuts Unsaved Preferences Net Prefs System MIDI Sounds Saved Preferences AddressStatesDB AddressTitlesDB VendorsDB List complete. 23 files found. Thank you for using pilot-link.
Синхронизация
Чтобы синхронизация сработала корректно, важно нажать кнопку HotSync на док-станции (или Palm) перед тем, как запустить синхронизацию в J-Pilot.
То есть:
- Вставь Palm в крэдл
- Нажми HotSync на Palm / док-станции
- Ждёшь пару секунд
- Нажимаешь Sync или «Синхронизация» в J-Pilot
Часто бывает так, что устройство «захватывает» USB-порт только после нажатия HotSync, и Linux уже видит правильный ttyUSB-порт.
Доступные функции
С помощью J-Pilot ты сможешь синхронизировать:
- Адресную книгу
- Заметки
- Дни рождения/задачи/календарь (возможны ограничения в зависимости от версии Palm OS)
- Резервные копии баз данных
J-Pilot предоставляет полноценную работу с базами Palm и хранит их в ~/.jpilot/.
Утилиты
Тестирование подключения
$ pilot-xfer -p /dev/ttyUSB0 -l
Если видишь:
- Timeout
- No response
- Protocol error
→ это железо / драйвер, не J-Pilot.
Отключение USB-энергосбережение (autosuspend) (критично!)
FTDI стабилен, но autosuspend всё равно может рвать сессию.
Временно:
# echo -1 | tee /sys/module/usbcore/parameters/autosuspend
Или навсегда через udev
Проверка, что это именно FTDI-драйвер
# dmesg | grep -i ftdi
Должно быть что-то вроде:
ftdi_sio 1-1.3:1.0: FTDI USB Serial Device converter detected ttyUSB0
Если видишь ftdi_sio — отлично.
Жёстко инициализируем COM-порт
Перед каждой попыткой синхронизации:
# stty -F /dev/ttyUSB0 9600 cs8 -cstopb -parenb crtscts -ixon -ixoff
Если 9600 вдруг не пойдёт, пробуем:
# stty -F /dev/ttyUSB0 57600 crtscts
Проверка напрямую через pilot-link (без J-Pilot)
Это критично — если тут не работает, GUI не виноват.
$ pilot-xfer -p /dev/ttyUSB0 -l
Ожидаемый результат:
- Palm: экран HotSync
- В терминале: список баз данных
Правильный порядок действий (важно!)
- Вставь Palm в cradle
- Нажми HotSync на Palm
- Подожди 1–2 секунды
- Выполни pilot-xfer или Sync в J-Pilot
⚠️ Если нажать HotSync после — FTDI может уже «не поймать» начало пакета.
Настройка J-Pilot (когда pilot-xfer работает)
- Preferences → Settings
- Port: /dev/ttyUSB0
- Speed: 9600
- Flow control: ✅ RTS/CTS
- ❌ НЕ usb:
После этого J-Pilot обычно синхронизируется стабильно.
Полезные FTDI-хаки (если всё ещё капризничает)
🔧 Сброс буферов перед синком
Иногда помогает:
# stty -F /dev/ttyUSB0 hupcl
🔧 Проверка линии управления
Palm реально использует DTR/RTS:
# stty -F /dev/ttyUSB0 -clocal
Работа с pilot-link
Список баз
$ pilot-xfer -p /dev/ttyUSB0 -l
Синхронизация (бэкап)
$ pilot-xfer -p /dev/ttyUSB0 -b backup/
Восстановление
$ pilot-xfer -p /dev/ttyUSB0 -r backup/
Установка программ
- Подключить Palm к cradle
- Выполнить на ПК:
pilot-install-user -p /dev/ttyUSB0 oktopus_en.prc
Альтернатива:
pilot-xfer -p /dev/ttyUSB0 -i oktopus_en.prc
- Когда программа попросит — нажать кнопку HotSync на Palm.
Пример нормального вывода:
Listening for incoming connection on /dev/ttyUSB0... connected! Palm user: petr UserID: 12345 Installing oktopus_en.prc
Чтобы программа появилась в списке, после установки нужно выполнить soft-reset:
- Найти маленькое отверстие на корпусе (обычно сзади).
- Разогнуть скрепку
- Коротко нажать кнопку внутри отверстия.
Palm перезагрузится, данные и программы не пропадут.
Важные моменты по использованию!
- Память Palm энергозависимая. Не вытаскивайте аккумуляторы и не разряжайте их в ноль, если у вас нет бэкапа и вы не хотите потерять информацию!
- Делайте бэкапы на комп хотя бы два раза в неделю