jcxz 184 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Имеется устройство. Устройство имеет bluetooth (BT). Выбор профилей в использованном BT-модуле небогат и, похоже, придётся обходиться одним только SPP. Через это SPP нужно делать конфигурирование устройства + изредка скачивать с него файлы (а может в будущем и закачивать на него понадобится). SPP - потому что должна быть возможность конфигурить "в поле", с телефона. Устройство в роли SPP-сервера - принимает входящие подключения, само не инициирует их. Так как: 1) необходима возможность конфигурирования из разных ОС: винда, линух, Андроид, АйОС, ...; 2) штат команды разработки предельно мал и бюджет соответствующий; то для конфигурирования нужно использовать только готовое ПО/протоколы, и самый простой путь - написание конфигураторов для всех ОС, работающих через SPP-канал - отпадает. В свете вышеизложенных соображений решил конфигурирование построить на базе эмулятора ANSI-терминала: устройство будет генерить текстовый вывод, со всеми менюшками, чекбоксами, edit-контролами и прочим. В цвете, мерцаниях и т.д. Реагируя на нажимаемые пользователем клавиши. Т.е. - интерактивный интерфейс с юзером. Параметров конфигурации не так уж и много - думаю будет 2-3 десятка. Несколько разных экранов. В принципе всё работает, если не считать того, что хороших эмуляторов терминалов - не так уж и много. А ведь ещё нужно будет подобрать нормальные терминалы для всех ОС.... :((( Да - ещё нужно будет принимать с устройства файлы. Для этого думал использовать ZModem. Здесь с эмуляторами терминала ещё хуже оказалось. Но меня посещают мысли, что возможно я не вижу какого-то более удобного варианта, сделать работу по-другому, удобнее и красивше. В плане удобства пользователя, было бы гораздо лучше использовать HTML. Но как это сделать через SPP (COM-порт)? Причём чтобы даже не продвинутый юзер смог пользоваться. Я уже думал о таком: Под виндой - сделать удалённое подключение к сети через этот COM-порт, запустить через него SLIP-протокол, внутри которого - IP-фреймы. Ну и поднять HTTP-сервер в устройстве на этом канале. Возможно так можно сделать. И будет красиво и круто. И с передачей файлов тогда нет проблем. Да и даже графику на странице можно сделать. Но вот мне кажется, что это будет через одно известное место. И не факт, что будет работать в последующих версиях винды. А тем более - на других ОС. Вопрос к тем, кто был в аналогичной ситуации: Какое Вы выбрали решение задачи и почему? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
megajohn 3 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Вопрос к тем, кто был в аналогичной ситуации: Какое Вы выбрали решение задачи и почему? вот как раз все что Вы описываете, вижу в одной железке. реализовано через простой COM-порт, а там на нижнем уровне PPP/LCP/IPCP/IP ну и далее SNMP/TELNET/HTTP:80/FTP Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба вот как раз все что Вы описываете, вижу в одной железке. реализовано через простой COM-порт, а там на нижнем уровне PPP/LCP/IPCP/IP ну и далее SNMP/TELNET/HTTP:80/FTP Каким образом осуществляется подключение к этой железке? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
megajohn 3 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Каким образом осуществляется подключение к этой железке? так же, как вы и пишите, через модемное соединение =) то есть ставится inf + dll. Ну и далее мышкой на соединение или через WinApi RasDial И не факт, что будет работать в последующих версиях винды. такой метод изначально работал на WinXP, но так же работает на Win7 и Win8.1 ( на Win10 не пробывал - нет такого под рукой ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 2 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба такой метод изначально работал на WinXP, но так же работает на Win7 и Win8.1 ( на Win10 не пробывал - нет такого под рукой ) Никак он не работает. Нет давно уже под виндой Direct Cable connection через PPP. Так что можно забыть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
megajohn 3 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Нет давно уже под виндой Direct Cable connection через PPP. Так что можно забыть. Ну может в Win10 и нет, но вот скрин из Win7 x64 SP1 P.S. ADD: это не оно ? Dialup setup for Windows10 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 2 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба это не оно ? Dialup setup for Windows10 Нет, то было именно Direct Cable connection через PPP. Оно не требовало никакого номера и могло активизироваться самим дивайсом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
megajohn 3 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Оно не требовало никакого номера и могло активизироваться самим дивайсом. но автору нужно "Устройство в роли SPP-сервера - принимает входящие подключения, само не инициирует их." Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_pv 52 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба В свете вышеизложенных соображений решил конфигурирование построить на базе эмулятора ANSI-терминала: устройство будет генерить текстовый вывод, со всеми менюшками, чекбоксами, edit-контролами и прочим. В цвете, мерцаниях и т.д. Реагируя на нажимаемые пользователем клавиши. Т.е. - интерактивный интерфейс с юзером. Параметров конфигурации не так уж и много - думаю будет 2-3 десятка. Несколько разных экранов. Да - ещё нужно будет принимать с устройства файлы. Для этого думал использовать ZModem. Здесь с эмуляторами терминала ещё хуже оказалось. имхо менюшки/чекбоксы в цвете и мерцаниях - как раз лишнее, сделайте минимум командную строку: >read paramname\n >write paramname value\n >upload filename <base64_encoded_data><EOF> с проверкой контрольной суммы. если файлы не особо большие, чтобы в случае ошибки просто переслать заново целиком. совсем тупых терминалов, без zmodem, под любую платформу думаю куда больше чем хотя бы тех кто разные цвета и vt100 умеет. потом уже, на жалобы юзеров, под самые ходовые платформы поверх этого можно будет и морду покрасивее нарисовать. Ну может в Win10 и нет, но вот скрин из Win7 x64 SP1 ага, а теперь то же, для iOS ещё продемонстрируйте :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 2 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба но автору нужно "Устройство в роли SPP-сервера - принимает входящие подключения, само не инициирует их." Тогда делайте полный эмулятор AT команд настоящего модема. Желаю удачи. :biggrin: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба то есть ставится inf + dll. Ну и далее мышкой на соединение или через WinApi RasDial ... такой метод изначально работал на WinXP, но так же работает на Win7 и Win8.1 ( на Win10 не пробывал - нет такого под рукой ) Мне нужен метод работающий не только под виндой (см. первый пост). А dll уже намекает, что "win only" :( Можно ли такое соединение создать под Андроид например? имхо менюшки/чекбоксы в цвете и мерцаниях - как раз лишнее, сделайте минимум командную строку: Нет - кондовой командной строки точно не будет. на дворе давно уже не 1980-е гг. Конфигурирование должно быть интерактивным, как можно более user-frendly. Так как клиентом надо дорожить. Менюшки и в цвете - уже есть и работают. И ничего сложного в этом нет. Почти. "Почти" - потому что выбор нормальных терминалок бедный. Тогда делайте полный эмулятор AT команд настоящего модема. Желаю удачи. :biggrin: Если-б проблема была только в этом, это была бы ерунда... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
megajohn 3 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Тогда делайте полный эмулятор AT команд настоящего модема. Желаю удачи. :biggrin: этого вообще не требуется ! вот так кратко выглядит иннициализация dialup >Можно ли такое соединение создать под Андроид например? увы, это проморгал. Посчитал что по Linux уж должно быть dial, поэтому и написал. Тогда больше не вмешиваюсь Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба >Можно ли такое соединение создать под Андроид например? увы, это проморгал. Посчитал что по Linux уж должно быть dial, поэтому и написал. Тогда больше не вмешиваюсь Линух нам не настолько критичен как Ведроид и Яблокофон. Так как устройство обязательно должно иметь возможность конфигурирования со смартфонов. :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amaora 20 24 сентября, 2018 Опубликовано 24 сентября, 2018 (изменено) · Жалоба Нет - кондовой командной строки точно не будет. на дворе давно уже не 1980-е гг. Конфигурирование должно быть интерактивным, как можно более user-frendly. Так как клиентом надо дорожить. Менюшки и в цвете - уже есть и работают. И ничего сложного в этом нет. Почти. "Почти" - потому что выбор нормальных терминалок бедный. Давно не видели командной строки? В зависимости от задачи она бывает и удобнее, с дополнениями, подсказками и историей. И требует при этом лишь самого примитивного эмулятора терминала. Файлы я бы передавал в base64 или другом подобном кодировании. Делать PPP через SPP это как-то уж слишком странно, много возни для пользователя может оказаться. + Под сматрфоны решение только в написании своего приложения, так у них там устроено. Изменено 24 сентября, 2018 пользователем amaora Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_pv 52 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Нет - кондовой командной строки точно не будет. на дворе давно уже не 1980-е гг. Конфигурирование должно быть интерактивным, как можно более user-frendly. Так как клиентом надо дорожить. Менюшки и в цвете - уже есть и работают. И ничего сложного в этом нет. Почти. "Почти" - потому что выбор нормальных терминалок бедный. cisco об этом расскажите. да сложного конечно ничего нет, но в текстовом режиме все эти цветные менюшки если у пользователя только экранная клавиатура в смартфоне очень вероятно будут ещё хуже простой командной строки. ну и я это "почти" и имел ввиду, что даже цветной терминал может оказаться не очень доступен, а вся ваша цветная/мигающая красота нарисованная в обычном терминале который этого не понимает выглядеть будет так себе :) и на простую командную строку свою отдельную морду поверх сделать потом всегда можно которая в порт команды посылать будет, а вот если там уже цветные мигающие менюшки, с ними уже будет гораздо сложнее. з.ы. а если взять и рядом поставить ещё отдельный esp32 за 3$ только с питанием, чтобы он подсоединялся к девайсу по BT, а сам при этом по wifi раздавал красивую веб-морду? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться