Умные дядьки, подскажите

Основной форум пользователей GPS (Global Positioning System)
Правила форума
Для предотврашения спама первые сообщения вновь зарегистрированных пользователей проходят ручную премодерацию.
Ответить
relic
Сообщения: 69
Зарегистрирован: 23 мар 2005, 15:35

Умные дядьки, подскажите

Сообщение relic » 16 янв 2008, 15:51

какой пакет (фрейм/кадр) надо послать на COM-порт GPS, чтобы слить из него прошивку (firmware). КАк сделать это через USB - понятно, но схема не работает для COM-порта :(


_WTF
Сообщения: 19
Зарегистрирован: 21 апр 2008, 21:37

Re: Умные дядьки, подскажите

Сообщение _WTF » 16 янв 2008, 18:27

все так же как и для USB, только подтверждения надо посылать после каждой принятой страницы


relic
Сообщения: 69
Зарегистрирован: 23 мар 2005, 15:35

Re: Умные дядьки, подскажите

Сообщение relic » 16 янв 2008, 20:00

А вот и не выходит так! Посылаю пакет с pid = 0x60 и командой 0x0e, а в ответ приходит только один ACK. Может что еще надо до или после?


_WTF
Сообщения: 19
Зарегистрирован: 21 апр 2008, 21:37

Re: Умные дядьки, подскажите

Сообщение _WTF » 17 янв 2008, 00:23

void Ack(BYTE cmd) {
TGarminSerialPacket pkt;
BYTE ackdata[2]; //ack it
ackdata[0] = cmd;
ackdata[1] = 0x00;
SendCmd(0x06, ackdata, sizeof(ackdata));
}

{
BYTE area = 0x0E;
SendCmd(0x60, (BYTE *)&area, sizeof(area));
Recv(&pkt); //here should be ack

Recv(&pkt); //here should be 0x4A
while (1) {
Recv(&pkt); //here should be dump
if (pkt.func!=0x24 || pkt.data.size()<4) //0x24 - area dump? //length can be 4, for pages containing only ff s
break;

Ack(pkt.func);

}
}

примерно так


relic
Сообщения: 69
Зарегистрирован: 23 мар 2005, 15:35

Re: Умные дядьки, подскажите

Сообщение relic » 17 янв 2008, 10:13

Спасибо за код, я так и делал, но... может это не на всяком навигаторе срабатывает? Я пробовал на Foretrex 101. Вот лог общения из GPSDaemon:
<--- Packet 10 60 02 0E 00 90 10 03 sent
COM
---> 2 (0x02) bytes received :
HEAD : 10 06 02
DATA : 60 00
TAIL : 98 10 03
ACK 60 received

Т.е. больше ничего не идет из навигатора, нет той инфы для которой предназначена строка Recv(&pkt); //here should be 0x4A

Что не так? %)


_WTF
Сообщения: 19
Зарегистрирован: 21 апр 2008, 21:37

Re: Умные дядьки, подскажите

Сообщение _WTF » 17 янв 2008, 12:56

ну значит не повезло =)


relic
Сообщения: 69
Зарегистрирован: 23 мар 2005, 15:35

Re: Умные дядьки, подскажите

Сообщение relic » 17 янв 2008, 13:12

и это прискорбно...
Может для него нужны "особые" команды? :)
Есть какие технологии это выяснить в домашних условиях?


relic
Сообщения: 69
Зарегистрирован: 23 мар 2005, 15:35

Re: Умные дядьки, подскажите

Сообщение relic » 18 янв 2008, 12:58

_WTF, а можешь сказать для какого навигатора сработал этот метод?


Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 7 гостей