Добро пожаловать!

Войдите или зарегистрируйтесь сейчас!

Войти

BlueTooth для Sokkia серии SET (и не только)

Тема в разделе "Сделай Сам", создана пользователем Philin, 13 июн 2016.

  1. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    Нашёл интересную статью, о том как перепрограммировать блютус модули hc-06 и ему подобные.На торренте есть BlueLab SDK, в нем много всякой всячины: библиотеки, документация,примеры.В примерах есть программы реализующие SPP профиль мастера и подчиненного.Это нужно для конфигурирования устройства на 7 бит данных,если кому это нужно.Можно так же запрограммировать cts/rts управление потоками, то есть подавать логическую единицу, в блютус адаптере, на какой нибудь пин(сигнал о приостановки передачи), в случае переполнения буфера приема.А с другого пина, считывать логику, если приходит логическая единица, то останавливать передачу.В простейшем варианте, можно отключить rts/cts, просто выводом входящего контакта cts на землю, со стороны прибора. Тем самым сигнализируя прибору, что блютус адаптер готов принимать данные. Но вместе с тем нужно будет смериться с возможной потерей данных из за плохой радио связи. Думаю, что в ближнем бою это должно работать без каких либо потерь данных, что нам собственно и нужно.
     
    #261
  2. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    Кажется удалось решить проблему конфигурирования блютус адаптера в настройки 1200 бод, паритет even, 7 бит данных, стоп бит 1.Среди известных мне прошивок, в режиме 7 бит данных и паритетом even, может работать только НС-05.Для этого нужно просто перевести модуль в even, а 7 бит данных переведется автоматом, с 8 бит.Но как уже говорил выше не возможно с помощью AT команд перевести его на скорость 1200 бод.Вообщем решил с наскоку осилить программирование CRS микроконтроллеров, не получилось пока.Нашел книгу азов программирования AVR микроконтроллеров, начал читать.Вообщем понял, что у тех и у других гарвардская архитектура , то есть память делится на три вида: память программ(Flash), оперативная память(RAM), энергонезависимая память(ROM), у каждой 8-разрядной ячейки памяти есть свой адрес, с помощью которого можно производить операции с ней не зависимо от типа памяти.8 разрядные ячейки могут объединятся в 16 разрядные.Вообщем не углубляясь дальше, могу сказать, что настройки UART(параметры передачи данных) записываются в виде Адрес(регистр)=Ключ.Например с помощью программы PSTool можно менять всевозможные настройки модуля, но 7 бит данных я там не нашел, видимо в памяти записано больше ключей чем их может изменить программа.Можно делать дамп ключей в виде текстового файла.Вот отрывок:

    // PSKEY_BDADDR
    &0001 = 0050 30f5 0031 98d3
    // PSKEY_COUNTRYCODE
    &0002 = 0000// North America and Europe
    ................................................................
    ................................................................
    // PSKEY_UART_BAUDRATE
    &01be = 0005// 1200 kbaud

    // PSKEY_UART_CONFIG_BCSP
    &01bf = 0806
    // PSKEY_UART_CONFIG_H4
    &01c0 = 08a8
    // PSKEY_UART_CONFIG_H5
    &01c1 = 1806
    // PSKEY_UART_CONFIG_USR
    &01c2 = 08a8
    // PSKEY_UART_TX_CRCS
    &01c3 = 0001
    // PSKEY_UART_ACK_TIMEOUT
    &01c4 = 00fa
    // PSKEY_UART_TX_MAX_ATTEMPTS
    &01c5 = 0000
    // PSKEY_UART_TX_WINDOW_SIZE
    &01c6 = 0004
    // PSKEY_UART_HOST_WAKE
    &01c7 = 0004 01f4 000a 0000
    // PSKEY_HOSTIO_THROTTLE_TIMEOUT
    &01c8 = 0003 0d40
    // PSKEY_PCM_ALWAYS_ENABLE
    &01c9 = 0000// False
    // PSKEY_UART_HOST_WAKE_SIGNAL
    &01ca = 0000
    // PSKEY_UART_CONFIG_H4DS
    &01cb = 08a8
    // PSKEY_H4DS_WAKE_DURATION
    &01cc = 0020
    // PSKEY_H4DS_MAXWU
    &01cd = 0032
    // PSKEY_H4DS_LE_TIMER_PERIOD
    &01cf = 00fa
    // PSKEY_H4DS_TWU_TIMER_PERIOD
    &01d0 = 00fa
    // PSKEY_H4DS_UART_IDLE_TIMER_PERIOD
    &01d1 = 0032
    // PSKEY_PCM_SLAVE_PROVIDE_CLOCK
    &01e5 = 0000// False
    &01eb = 0004
    &01ec = 0007 a120 0000 01f4 0000 0000
    &01ed = 0031
    &01f0 = 0000
    ...................................................................
    ...................................................................
    Проблема была в том, что в настройках PSTool, так же нельзя выбрать скорость 1200 бод.Но сделав дамп ключей, изменив его в ручную, через блокнот и залив его обратно добавляет новую скорость в список ключей.

    Baud rate = pskey_value/0.004096

    Some common values are:

    1k2 baud - 5 (0x0005)

    38k4 baud - 157 (0x009d)
    57k6 baud - 236 (0x00ec)
    115k2 baud - 472 (0x01d8)
    230k4 baud - 944 (0x03b0)
    460k8 baud - 1887 (0x075f)
    921k6 baud - 3775 (0x0ebf)
    1382k4 baud - 5662 (0x161e)
     
    #262
  3. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.567
    Симпатии:
    2.092
    Адрес:
    Москва
    А стоит оно того?

    1200бод, да ещё и 7 бит, это же первое поколение приборов. Есть ли смысл вообще пытаться с ними связываться? Это же разработки 20-30-летней давности, уже 2/3 таких приборов по идее умерли, а остальные либо не испльзуются, либо на ладан дышат.
     
    #263
  4. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    В том то и дело, что люди спрашивают.У меня есть такой прибор в руках и он довольно таки шустро работает при этих настройках.Есть идея прикрутить маленький экран и пару кнопок, для настройки модуля на нужные параметры.Хотя честно говоря овчинка выделки не стоит, но здесь больше спортивный интерес, да и чтоб возможность такая была, мало ли, что.
     
    #264
    sherkhan нравится это.
  5. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.567
    Симпатии:
    2.092
    Адрес:
    Москва
    А чего ему тормозить-то... 150байт в секунду вполне хватит и на команды и на один очень длинный ответ прибора (или на два коротких).

    Я предыдущее устройство собирал на HC-05, а новое собрал на HC-06. Проверил дальность связи (сильно не заморачивался, дальше 100м не отходил), связь стабильная.
     
    #265
  6. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    Да, HC-06 то что нужно, но к сожалению универсальности Topcon-Sokkia не выйдет в ряде случаев.
     
    #266
  7. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    Кстати такие настройки связаны с особенностями протокола ввода вывода Topcon-а, а не с тем, что устройства старые, кроме того они позволяют производить контроль передачи данных не используя контрольную сумму.
     
    #267
  8. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.567
    Симпатии:
    2.092
    Адрес:
    Москва
    Оффтоп

    Да нет. Такие настройки связаны с тем, что прибор физически не приспособлен для любого языка кроме латиницы (первая половина стандартной кодировки). Кроме этого он не способен воспринимать и воспроизводить не только символы расширенной кодировки, но также и некоторые спецсимволы. В утиль, в общем - чисто англоязычный прибор не для продажи и использования за пределами...

    Подозреваю, что криптографы и пр. с вами не согласятся. Вроде как с точностью до наоборот (если я ничего не путаю).

    Грубо говоря... Условно:
    1. 1 бит (состояние 0 или 1), вероятность сбоя 1/2
    2. 8 бит, вероятность сбоя для одного бита такая же, но в целом невероятно чтобы сбой произошёл сразу во всех 8 битах, таким образом вероятность сбоя тем меньше чем больше бит в пакете данных.
    В общем - чем меньше бит в пакете, тем больше требуется контроля для них.
     
    #268
  9. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    Из Википедии:
    В последовательной передаче данных часто используется формат 7 бит данных, бит чётности, один или два стоповых бита. Такой формат аккуратно размещает все 7-битные ASCII символы в удобный 8-битный байт.
    При обмене данными применяется ASCII символы из стандартной таблицы не из расширенной, там только латиница и управляющие символы.Аналогично, как мы оба знаем и в современном Sokkia.
    --- Сообщения объединены, 22 авг 2016, Оригинальное время сообщения: 22 авг 2016 ---
    Контроль некой двоичной последовательности (например, машинного слова) с помощью бита чётности также называют контролем по паритету. Контроль по паритету представляет собой наиболее простой и наименее мощный метод контроля данных. С его помощью можно обнаружить только одиночные ошибки в проверяемых данных. Двойная ошибка будет неверно принята за корректные данные. Поэтому контроль по паритету применяется к небольшим порциям данных, как правило к каждому байту, что даёт коэффициент избыточности для этого метода 1/8.
     
    #269
  10. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.567
    Симпатии:
    2.092
    Адрес:
    Москва
    Оффтоп

    Нет :)

    SDR33 подразумевает 8 бит расширенную таблицу.

    Даже древние приборы передают все 8 бит везде, а заметить это можно в блоке "00NMSDR33". Если прибор не чисто английский, то название месяца в нём на том языке (в той расширенной части кодировки) в котором работает прибор.

    Вот такое вот дело.

    Т.е. 7 бит просто не хватит на достоверную передачу данных Sokkia. Вместо данных будет каша.

    В прибор я могу записать точки с русскими именами. Предварительно только надо понять в какой 8-битной кодировке он работает KOI8-R или Альтернативная или CP866.

    Да, с клавиатуры прибора невозможно ввести русские символы, но сам прибор нормально воспринимает принятые через COM порт точки с русскими именами (только не надо пытаться в него передавать виндовую CP-1251)
     
    #270
    igor kruchkovskiy нравится это.
  11. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    Да, точно при передаче файла с русскими именами точек с настройками в 7 бит тахеометр заменяет их на латинские.В остальном все в роди бы идентично.В принципе не вижу в этом ничего плохого, до того момента пока не придумали тахеометры с русской клавиатурой.Честно говоря не знаю человека, который именует точки Кириллицей.
     
    #271
  12. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.567
    Симпатии:
    2.092
    Адрес:
    Москва
    Оффтоп

    Просто никто не знает, что это возможно :) Да и софт только "буржуйский", который тоже не в состоянии работать с кириллицей.

    Я теперь слои (коды точек) при съёмке именую только кириллицей. Т.к. теперь такая возможность есть :)
     
    #272
    sherkhan нравится это.
  13. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    А я до сих пор опасаюсь отсутствия оной в буржуйском софте, да и легко писать русские слова латинскими буквами, не парит это вовсе.
    --- Сообщения объединены, 22 авг 2016, Оригинальное время сообщения: 22 авг 2016 ---
    Забыл уточнить, что прибор замечательно передает на скоростях 1200- 9600 бод, в сочетании с 8 бит данных или 7, но управление с контроллера получается только при 1200,7,E,1 и больше ни как.
     
    #273
  14. Палыч

    Форумчанин

    Регистрация:
    16 июл 2007
    Сообщения:
    2.332
    Симпатии:
    176
    Адрес:
    Беларусь
    А для чего такие расстояния? Вы же не с роботом работаете,
     
    #274
  15. Мимокрокодил

    Форумчанин

    Регистрация:
    29 янв 2013
    Сообщения:
    1.189
    Симпатии:
    608
    Я купил этот планшет, после сообщения Филина
     
    #275
  16. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    И как ощущения?
     
    #276
  17. Мимокрокодил

    Форумчанин

    Регистрация:
    29 янв 2013
    Сообщения:
    1.189
    Симпатии:
    608
    Пока так себе... Magnet field полной версии стоит около 70000 и у планшета слишком большой экран. Не очень удобно и веху держать, и в планшет тыкать. Нужно что-то с креплением думать. Пока только такие впечатления. Отходил от таха на 75 метров. Потерь связи небыло. В солнечную погоду плохо виден створоуказатель, но это не имеет отношения к планшету)))
    --- Сообщения объединены, 23 авг 2016, Оригинальное время сообщения: 23 авг 2016 ---
    К самому планшету претензий нет...
     
    #277
  18. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    Поставьте Карлсон.У вас на тахе штатный блютус?
     
    #278
  19. Мимокрокодил

    Форумчанин

    Регистрация:
    29 янв 2013
    Сообщения:
    1.189
    Симпатии:
    608
    да. А карлсон бесплатный?
     
    #279
  20. igor kruchkovskiy

    Форумчанин

    Регистрация:
    10 июн 2012
    Сообщения:
    3.474
    Симпатии:
    1.861
    Адрес:
    Астрахань
    ))))
     
    #280

Поделиться этой страницей

  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление