Автор |
Сообщение |
|
Дата: 05 Дек 2017 11:02:16
#
Доброго времени суток Форум !
Подскажите решение следующей задачи - нужно сделать удаленное управление (рация - комп - интернет (локальная сеть) - комп) радиостанциями ICOM F-210/110.
В-общем то сделать включение передачи можно довольно не сложно, схем в сети много. Можно сделать и переключение каналов, если сделать эмуляцию DTMF тангенты программно.
Но это все не решает один вопрос - как получить данные от станции, на каком канале она стоит в данный момент ?
Насколько я понял интерфейс IC-V в станциях F-210/110 отсутствует :(
В сети есть ссылки на некие блоки управления (подключаются вместо тангенты) и даже с индикацией канала, только, естественно, схем этих блоков нет :(
Если кто-то знает варианты решения задачи - подскажите плиз :)
P.S. в электронике и программировании разбираюсь, разработать и спаять что-либо не проблема, нет информации КАК это сделать :(
|
|
Дата: 05 Дек 2017 11:07:23
#
starcomputer
и спаять что-либо не проблема, нет информации КАК это сделать :(
Да варианта 2 как обычно - или купить готовое решение или его разработать. А как разработать ROIP - это странный вопрос, если не знаете, то значит задача выше вашей квалификации.
|
Реклама Google
|
|
|
Дата: 05 Дек 2017 11:28:04
#
зачем вам это знать если вы сами можете поставить ее на тот канал который нужно, как это делает ut-105, или drc-500 например.
|
|
Дата: 05 Дек 2017 12:01:56
#
1. Чтобы разработать надо знать интерфейс станции, если таковой вообще имеется. Не нашел информации.
2. Да, установка станции на канал по умолчанию при запуске программы рассматривалась как запасной вариант :) Но в случае нескольких пользователей это нереально, каждое новое подключение будет устанавливать станцию на канал по умолчанию.
................
Я как бы сюда пришел за помощью, а не обсуждением чьей-либо квалификации :)
|
|
Дата: 05 Дек 2017 12:13:41 · Поправил: XOR (05 Дек 2017 12:49:13)
#
хорошо, вариант первый i2c slave эмулирующий 24с16, выгребать из ячейки текущий номер канала вообще не проблема.
вариант второй реверсинженеренг протокола управления станцией по внешнему или внутреннему интерфейсу uart. второго в восьмиканалках кстати нет.
посмотрите как общается со станцией CS-F100 ADJ, она умеет читать и писать в память не переводя станцию в режим программирования
|
|
Дата: 05 Дек 2017 12:53:26
#
|
|
Дата: 05 Дек 2017 15:48:08
#
Всем ответившим огромное спасибо !
Натолкнули на мысль :)
Поскольку удаленные пользователи общаются не с рацией непосредственно, а с программой на сервере, то и данные им выдает программа.
Т.е. если программа при переключении канала запоминает его номер и по запросу от клиента выдает его. Ну а запрос можно сделать по таймеру, скажем раз в секунду, тогда у клиента всегда будут новые данные.
С учетом того, что не все клиенты могут переключать каналы, бардака в управлении не будет.
Решение грубое и не изящное, предложенный XOR вариант с ADJ мне как-то интереснее, надо отследить команды обмена между ней и рацией.
Если что выйдет - отпишу. Если у кого уже есть какая-то инфа по этим командам - прошу поделиться :)
|
|
Дата: 05 Дек 2017 17:08:29
#
запрос настроек
FE FE EE EF E8 26 22 01 06 03 30 30 FD в станцию
FE FE EF EE E8 26 22 01 06 03 42 45 FD из станции
FE FE EE EF E8 26 22 01 06 03 30 33 FD в станцию
FE FE EF EE E8 26 22 01 06 03 43 34 FD из станции
изменение настроек
FE FE EE EF E8 26 22 01 06 05 41 42 FD pwr hi 170 to 171
FE FE EE EF E8 26 22 01 06 05 41 41 FD pwr hi 171 to 170
FE FE EE EF E8 26 22 01 06 04 35 42 FD sql 90 to 91
FE FE EE EF E8 26 22 01 06 04 35 41 FD sql 91 to 90
|
|
Дата: 05 Дек 2017 17:36:32
#
Вероятно FE FE это начало пакета
далее EE EF / EF EE - направление передачи ???
E8 26 22 01 06 - ???
далее три байта это судя по всему адрес и данные ....
FD - конец пакета
А больше кодов нет ? :(
42 - увеличить на единицу, 41 - уменьшить на единицу ???
|
|
Дата: 05 Дек 2017 17:59:17 · Поправил: XOR (05 Дек 2017 20:15:30)
#
|
|
Дата: 05 Дек 2017 19:22:35
#
|
|
Дата: 05 Дек 2017 21:10:19 · Поправил: XOR (05 Дек 2017 23:24:19)
#
90 это 5A -> 35 41, 171 это AB ->41 42, это хекс в ascii
CSF50 FE FE EE EF E0 26 81 00 00 FD
CSF11 FE FE EE EF E0 24 58 00 00 FD
CSF3G FE FE EE EF E0 22 51 00 00 FD
CSF300 FE FE EE EF E0 20 55 00 00 FD
CSF100 FE FE EE EF E0 26 22 00 00 FD
CSF100S FE FE EE EF E0 26 01 00 00 FD
команда начала работы с ut-105, универсальная для всех станций, в ответе передается инфа о наличии или отсутствии модуля.
FE FE FE EE EF E8 20 24 00 00 00 FD начать
FE FE FE EE EF E8 20 24 00 00 01 FD завершить
[FE] [FE] [EF] [EE] [E8] [20] [24] [00] [00] [00] [30] [FD]
[FE] [FE] [EF] [EE] [E8] [20] [24] [00] [00] [00] [31] [FD]
|
|
Дата: 06 Дек 2017 08:38:19
#
Т.е. в начале сеанса связи со станцией мы передаем ей
FE FE FE EE EF E8 20 24 00 00 00 FD
в конце
FE FE FE EE EF E8 20 24 00 00 01 FD
????
В логах первая посылка это
FE FE EE EF E0 26 22 00 00 FD
ответ
FE FE EF EE E1 26 22 01
:(
Ну ладно, я еще и не разобрался в логах ....
А что означают названия файлов логов ?
all.log
mod.log
rww.log
|
|
Дата: 06 Дек 2017 10:54:45 · Поправил: XOR (06 Дек 2017 18:00:12)
#
E0 это запрос инфы, сл пара байт адрес "устройства" или интерфейса, например еепром в такой то рации имеет такой то адрес, а интерфейс опционального модуля во всех рациях имеет одинаковый адрес, ну тк он у всех одинаковый.
E2 это запрос всех параметров.
когда csf100 хочет считать еепром она отправляет запрос без параметров
FE FE EE EF E2 26 22 00 00 FD
вот как это делает делает adj
FE FE EE EF E2 26 22 01 06 FD
считанные дампы по размеру не отличаются
|
|
Дата: 06 Дек 2017 17:42:42
#
запрос настроек
FE FE EE EF E8 26 22 01 06 03 30 30 FD в станцию
FE FE EF EE E8 26 22 01 06 03 42 45 FD из станции
это считывание ацп и цап
|
|
Дата: 06 Дек 2017 18:08:42
#
и остается только один байт, адрес кому предназначен пакет,
управление каналами 0
ацп/цап 3
шумодав 4
большая мощность 5
средняя 6
и тд
|
|
Дата: 09 Дек 2017 15:44:12
#
Ну как бы к станции я подключился через Serial Port Monitor, но пока не пойму, как получить номер активного канала :(
Запрос параметров
FE FE EE EF E8 26 22 01 06 03 30 30 FD
выдает
fe fe ef ee e8 26 22 01 06 03 41 44 fd
вне зависимости от номера активного канала :(
и остается только один байт, адрес кому предназначен пакет,
управление каналами 0
ацп/цап 3
шумодав 4
большая мощность 5
средняя 6
это который байт ?
E0 это запрос инфы, сл пара байт адрес "устройства" или интерфейса, например еепром в такой то рации имеет такой то адрес, а интерфейс опционального модуля во всех рациях имеет одинаковый адрес, ну тк он у всех одинаковый.
Ни хрена не пойму ...
Какой посылкой можно допустим считать АЦП и ЦАП ?
................
Почему-то у меня ADJ упорно показывает только первый канал :(
|
|
Дата: 09 Дек 2017 16:43:33
#
Данные, которые удалось выудить от CS-F100 и ADJ особой информативностью не отличаются :(
CS-F100
-> fe fe fe fe fe fe fe fe fe fe fe fe fe fe ee ef
e0 26 22 00 00 fd
<- fe fe ef ee e1 26 22 01 06 34 00 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 10 02 01 00 00
00 00 00 00 00 00 03 00 00 05 20 00 00 fd
-> fe fe fe fe fe fe fe fe fe fe fe fe fe fe ee ef
e2 26 22 00 00 fd
<- большой дамп
Cs-F100 ADJ
-> fe fe ee ef e0 26 22 00 00 fd
<- fe fe ef ee e1 26 22 01 06 34 00 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 10 02 01 00 00
00 00 00 00 00 00 03 00 00 05 20 00 00 fd
-> fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
fe fe fe fe fe fe fe fe fe ee ef e2 26 22 01 06
fd
<- большой дамп
E0 - запрос информации
Е2 - дамп памяти
На такой запрос
e fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe ee ef e8 26 22 00 00 01 33 46 fd
станция (211) не отвечает.
|
|
Дата: 09 Дек 2017 17:53:12
#
Почему-то у меня ADJ упорно показывает только первый канал :(
потому что при запуске она ставит станцию на первый канал.
если нужен другой прошиваете в станцию еще несколько, ставите курсор курсорными стрелками вверх вниз на клавиатуре компа на строчку с номером канала и стрелками вправо - влево меняете номер канала.
Какой посылкой можно допустим считать АЦП и ЦАП ?
посылкой состоящей из
первое заголовка FE FE
второе направления передачи к станции EE EF
третье команды (название для нее придумайте сами) E8
четвертое адреса интерфейса еепром в станции 26 22
пятое каких-то параметров, при работе ADJ они должны быть 01 06
шестое адреса устройства ацп/цап 03
седьмое канала ацп, допустим напряжение питания станции на канале 00, в аски 30 30
восьмое конец пакета FD
станция выдаст FE FE EF EE E8 26 22 01 06 03 41 44 FD
данные в пакете 41 44, переводим из аски в хекс AD, в десятичной это 173, как это перевести в 13.57 вольта пусть будет домашним заданием для особо интересующихся))
это который байт ?
это вот этот
FE FE EE EF E8 26 22 01 06 03 30 30 FD
как получить номер активного канала :(
отправить станции пакет
FE FE EE EF E2 26 22 01 06 FD
и прочитать ответ, это около 40 килобайт, где то там будет канал на котором стоит станция.
|
|
Дата: 09 Дек 2017 18:01:15
#
очевидно 211 не 26 22
|
|
Дата: 09 Дек 2017 18:30:04
#
Итого ...
FE FE - заголовок пакета
XX XX - направление передачи (EF EE - чтение, EE EF - запись).
EX - команда
26 22 - адрес EEPROM
01 06 - ???
XX - адрес устройства (00 - каналы, 03 - АЦП / ЦАП, 04 - шумоподавитель, 05 - большая мощность, 06 - средняя мощность)
XX XX - данные
FD - конец пакета.
Т.е. если я в команде
fe fe ee ef e8 26 22 01 06 03 30 30 fd
буду менять 10-й байт (03) на 00, 04, 05, 06 то я должен получить от станции ответ с информацией ?
|
|
Дата: 09 Дек 2017 18:42:52
#
с какой радости? вы же этими командами будете менять настройки канала, шумодава, мощности и тд, и ответа на эти команды станция не дает.
|
|
Дата: 09 Дек 2017 19:38:21
#
Что такое CLONE NG ?
Попытался поиграть с разными командами - чуть не упорол станцию :(
На команду Е3 (вроде как) станция вошла в режим CLONE NG
Хорошо хоть был сохраненный файл настроек - перезалил. Почему-то он два раза заливался.
|
|
Дата: 09 Дек 2017 20:51:01
#
с какой радости? вы же этими командами будете менять настройки канала, шумодава, мощности и тд, и ответа на эти команды станция не дает.
Ну на команду
fe fe ee ef e8 26 22 01 06 03 30 30 fd
станция отвечает
fe fe ef ee e8 26 22 01 06 03 41 44 fd
|
|
Дата: 09 Дек 2017 23:11:23
#
CLONE NG
повреждение содержимого еепром, в таких случаях хорошо бы заливать прошивку в режиме reserve.
станция отвечает
что логично тк эта команда считывания параметров, а не их записи.
F3G который есть под рукой откликнулся только на 03, причем с параметрами только с 00 по 0B.
но опять же все 65к команд я не перебирал.
|
|
Дата: 10 Дек 2017 06:53:54
#
Нарыл тут немного официальной инфы от ICOM :)
Icom Command Language
$FE - заголовок, 1-й байт
$FE - заголовок, 2-й байт
ta - получатель команды (комп - $EF, станция - $EE) 1 байт
fa - отправитель команды 1 байт
cmd - команда (см. ниже) 1 байт
scmd - подкоманда 1 байт, наличие зависит от команды
data - длина, данные, CRC различной длины
$FD - конец пакета
Команды:
$E0 ответ $E1
$FE $FE $EE $EF $E0 <model data> $FD
для F-211 model data - $26 $22 $01 $06
в общем случае можно посылать
fe fe ee ef e0 00 00 00 00 fd
ответ станции
<model data>
<user data><some other data>
fe fe ef ee e1
26 22 01 06
34 00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 10 02 01 00 00
00 00 00 00 00 00 03 00 00 05 00 00 00
fd
$E2
$FE $FE $EE $EF $E2 <model data> $FD
Чтение памяти
$E3
$FE $FE $EE $EF $E3 <model data> $FD
Запись памяти
$E4
$FE $FE $EE $EF $E4 <line of data> $FD (запись данных)
$FE $FE $EF $EE $E4 <line of data> $FD (чтение данных)
<line of data> - адрес, длина, данные, CRC
Это наиболее интересная для меня команда, т.к. позволяет управлять станцией по COM-порту. Сейчас вот рою ее :) |
|
Дата: 10 Дек 2017 09:29:48
#
повреждение содержимого еепром, в таких случаях хорошо бы заливать прошивку в режиме reserve.
Это как ?
ADJ случайно не умеет что-то делать с настройками одного отдельного канала ? Хотя бы читать их ?
|
|
Дата: 10 Дек 2017 09:47:54
#
Ну как бы первые подвижки :)
Переключение каналов:
fe fe ee ef e8 26 22 01 06 00 30 31 fd
где 30 31 - номер канала
|
|
Дата: 10 Дек 2017 10:12:08
#
|
|
Дата: 10 Дек 2017 13:22:06
#
Ага, на reserve Help - About CS-F100 отзывается.
Спасибо !!! будем знать :)
Есть идеи как ПОЛУЧИТЬ информацию о каналах ? Количество, активный канал ...
|
Реклама Google |
|