Автор | Сообщение |
|
Отправлено: 23.03.17 11:34. Заголовок: ADA Cinema Rapture У кого есть протокол?
Собственно, сабж. Есть ли у кого-нибудь протокол управления для ADA Cinema Rapture по IP. Куда у него стучаться и прочее. Буду премного благодарен.
|
|
|
Ответов - 31
, стр:
1
2
All
[только новые]
|
|
|
| постоянный участник
|
|
|
Отправлено: 27.03.17 11:41. Заголовок: Можете не давать, ес..
Можете не давать, если сомневаетесь. Нет проблем. Я лично могу к ним заехать и спросить, если встретится такой редкий даже на родине аппарат.
|
|
|
|
Отправлено: 27.03.17 12:16. Заголовок: DmitriiP пишет: UDP..
DmitriiP пишет: цитата: | UDP это не TCP у него нет понятия подключения |
| У UDP нет понятия "установления соединения". Под подключением я понимал передачу данных. Хэлп, как мы уже поняли вызывает скорее вопросы чем ответы и дословно его воспринимать не стоит. DmitriiP вы как сами то предлагаете реализовать входящее подключение удаленного устройства с заранее неизвестным адресом? В хэлпе вам предлагают его прописать, но Вы его не знаете, потому как он DHCP, да даже если статика на нескольких устройствах (не отдельный же UDP/IP для каждого такого устройства создавать). Я предложил прописать адрес самого контроллера. Ваш вариант какой? (про бродкаст и мультикаст мы пока не говорим)
|
|
|
|
| постоянный участник
|
|
|
Отправлено: 27.03.17 12:25. Заголовок: Вячеслав, извините, ..
Вячеслав, извините, я вклинюсь. Какого лешего вам мерещатся "удаленные устройства с заранее неизвестным адресом"? Я не думаю, что что-то серьезное пропустил в этом всем, но все, что происходит в сетях управления оборудованием должно быть известно управляющему устройству. При чем броадкаст и мультикаст при решении задач управления?
|
|
|
|
Отправлено: 27.03.17 13:08. Заголовок: Никого же не удивляе..
Никого же не удивляет общепринятое подключение тачпанели с заранее неизвестным адресом.(в этом случае у нас в IPtable 127.0.0.1) Почему же должен удивлять вариант похожего подключения по UDP. У меня есть конкретный пример для UDP, когда требуется организовать входящее соединение на процессор. Но я намеренно не привожу его, дабы не уводить тему в сторону. Бродкаст и мультикаст заявлены в качестве вариантов UDP подключения, если взглянуть на хэлп. В случае мультикаста и бродкаста своеобразное представление адресов получателя и отправителя, поэтому чтоб опять не уводить тему в неправильном направлении, я в примечании отметил, что бродкаст и мультикаст мы пока не рассматриваем. Хотя чей то опыт применения крестрон а этой сфере конечно же мне интересен.
|
|
|
|
Отправлено: 27.03.17 13:10. Заголовок: Я проверял на socket..
Я проверял на socket, это работает. Я не проверял на элементе UDP/IP
|
|
|
|
Отправлено: 27.03.17 13:17. Заголовок: Из пустого в порожни..
Из пустого в порожний. Так я и не говорил, что в устройстве DHCP, которое будет подключаться к крестрон не прописан адрес контроллера. Я говорил, что в контроллер не обязан знать адрес удаленного устройства заранее.
|
|
|
|
| постоянный участник
|
|
|
Отправлено: 27.03.17 13:18. Заголовок: Стоп, достаточно офф..
Стоп, достаточно оффтопа.
|
|
|
|
Отправлено: 28.03.17 19:08. Заголовок: Итак, как и обещал. ..
Итак, как и обещал. Следует использовать два UDP соединения: Порт UDP 48716 открыт на самом усилителе и в него следует слать команды; порт UDP 48717 следует открыть у себя и с него получать обратную связь. Все команды начинаются и заканчиваются символами \xFF \xFF\x03\x00\x01\x5A\x5E\xFF - повысить громкость на 1 дБ \xFF\x03\x00\x01\x5B\x5F\xFF - понизить громкость на 1 дБ \xFF\x03\x00\x01\x37\x3B\xFF - повысить громкость на 0,5 дБ \xFF\x03\x00\x01\x38\x3C\xFF - понизить громкость на 0,5 дБ \xFF\x03\x00\x01\x22\x26\xFF - mute/unmute \xFF\x03\x00\x01\x21\x25\xFF - Включить \xFF\x03\x00\x01\x08\x0C\xFF - Выключить \xFF\x03\x00\x10\x70\x83\xFF - Выбрать вход 1 \xFF\x03\x00\x10\x71\x84\xFF - Выбрать вход 2 \xFF\x03\x00\x10\x72\x85\xFF - Выбрать вход 3 \xFF\x03\x00\x10\x73\x86\xFF - Выбрать вход 4 С обратной связью всё несколько интересней. Данные приходят фрагментированными - фактически: один пакет UDP - один байт. Это происходит из-за того, что в этой коробке используется мост Ethernet - UART NetBurner SBL2e. Естественно, что за сетью он не поспевает и мы видим то, что видим. Сразу предостерегу от использования UDP сокета в SIMPL+ - ничего не получится. Вы просто не успеете обрабатывать данные из-за той самой фрагментации. Благо, что симпле это делается элементарно. Все пакеты обратной связи выглядят примерно вот так: \x0F [данные] \x03\x00\xF0 Собственно, \x0F - индикатор начала кадра, \x03\x00\xF0 - индикатор окончания. Можно просто ловить \xF0 - в данных он никогда не встречается. Данные - это обычный ASCII текст такого вида: ALL -29.0 DB или SATELLITE 2. Первое указывает на то, что общая громкость выставлена на -29 дБ, а второе, что выбран вход 2, который в конфигурации усилителя назван как SATELLITE. Как видите, протокол очень простой. P.S. у DIN-AP3 какие-то проблемы с UDP, на нём программу я так и не завёл, зато на CP3 программа завелась без проблем.
|
|
|
|
Отправлено: 28.03.17 19:41. Заголовок: Zerberus, т.о. прото..
Zerberus, т.о. протокол в целом совпадает с протоколом Cinema MachII, который уже давно не секрет. Надеюсь, начальник особого отдела ADA не застрелится ;)
|
|
|
|
Отправлено: 28.03.17 21:45. Заголовок: Zerberus пишет: Cра..
Zerberus пишет: цитата: | Cразу предостерегу от использования UDP сокета в SIMPL+ - ничего не получится. Вы просто не успеете обрабатывать данные из-за той самой фрагментации. |
| Да ну! Были случаи когда я не успевал обработать данные, потому что их было слишком много в единицу времени. Банально не хватало размера буфера (даже нескольких) Но вот чтобы фрагментация была помехой, да еще с отличным разделителем, это навряд ли. Загоняйте все в while(find("\xF0",RCV_BUF)>0){парсер} и все будет ОК.
|
|
|
|
| постоянный участник
|
|
|
Отправлено: 28.03.17 22:25. Заголовок: Вячеслав, вы сильно ..
Вячеслав, вы сильно упрощаете далекую от вас картину. На самом деле, все может быть не так, как кажется на первый взгляд. Zerberus, спасибо за подробное описание протокола.
|
|
|
Ответов - 31
, стр:
1
2
All
[только новые]
|
|