Приложение Python для обновления встроенного устройства — возможно ли это?

Я собираюсь написать инструмент для обновления устройства на базе WinCE. Процедура обновления состоит из следующих шагов:

  1. получить несколько файлов из двух разных zip-архивов
  2. запустить цель и во время ее загрузки отправить команду через последовательный интерфейс RS232 (переключиться в режим начальной загрузки)
  3. передать образ WinCE-OS и flash-tool по FTP
  4. подключиться по телнету и выполнить flash-tool
  5. цель перезагрузки
  6. передача файлов настройки через FTP

В настоящее время все это делается вручную, что очень подвержено ошибкам и отнимает много времени. Особенно шаг 6 — головная боль**, потому что FTP-сервер на цели WinCE часто ломается.

Надеюсь, Python помог мне выполнить все эти шаги, первый просмотр библиотек показал, что там есть все: ziplib, ftplib, seriallib, telnetlib.

Кто-нибудь делал что-то подобное? Какие там скрытые проблемы?

Спасибо за любую подсказку!

РЕДАКТИРОВАТЬ: на цели нет Python (и в этом нет необходимости). Target предоставляет telnetd, ftpd через Ethernet-соединение и загрузочную консоль через последовательное соединение. Вся файловая система доступна через telnet и ftp, так что через эти протоколы можно получить доступ к любому файлу с хоста.


person Valentin Heinitz    schedule 22.01.2011    source источник
comment
Вы имеете в виду запуск приложений Python на хосте, цели или на обоих?   -  person mtrw    schedule 22.01.2011
comment
@mtrw: Большое спасибо за вопрос. Он очень важен, и я пропустил упоминание: в цели нет Python. Target предоставляет telnetd, ftpd через Ethernet-соединение и загрузочную консоль через последовательное соединение. Ихмо, нет необходимости запускать Python на цели, поскольку вся файловая система доступна через telnet и ftp, поэтому любой файл может быть доступен через эти протоколы с хоста.   -  person Valentin Heinitz    schedule 23.01.2011
comment
Пожалуйста, обновите свой вопрос, чтобы он был завершен. Не добавляйте комментарии. Исправьте вопрос.   -  person S.Lott    schedule 23.01.2011


Ответы (1)


Вы можете использовать pyserial или python для расширений Windows для отправки последовательной команды, telnetlib для отправки команд telnet и ftplib для части FTP. В конце концов, вы даже можете установить Python на устройстве WinCE, но это не должно вам понадобиться.

person e-satis    schedule 23.01.2011