• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Nufront, распиновка платы, подскажите

MikeK

Member
Добрый день,
в адаптере ELM327 установлена такая вот версия платы.
запаяно всего 5 точек (+,-,tx,rx), помогите опознать что там на пин 7?
Спасибо.
 

Вложения

A_D

Active member
Судя по внешней обвязке и кол-ву пинов - это не NL6621, а больше всего похоже на RTL8710AF\RTL8711AF.
 

pvvx

Активный участник сообщества
Последнее редактирование:

MikeK

Member
В общем этот модуль стоит в таком вот адаптере ELM327
скорость модуля 115200.
Сейчас я залил свой код в микроконтроллер адаптера и потестил - прога на винде посылает команду, например ATS1 - контроллер отвечает OK и так в цикле. Период обмена 32-35 мс... это много. должно быть меньше...
как туда залезть мне и поправить настройки?
смутно помню (когда-то читал) что некоторые модули которые с завода прошиты в режим прозрачного моста, откликаются на +++, но сейчас сходу найти не могу где это мне встречалось... может кто в теме?
Я так понимаю потом AT командами можно будет модуль отстроить и сохранить изменения...
 

pvvx

Активный участник сообщества
В общем этот модуль стоит в таком вот адаптере ELM327
скорость модуля 115200.
Сейчас я залил свой код в микроконтроллер адаптера и потестил - прога на винде посылает команду, например ATS1 - контроллер отвечает OK и так в цикле. Период обмена 32-35 мс... это много. должно быть меньше...
как туда залезть мне и поправить настройки?
смутно помню (когда-то читал) что некоторые модули которые с завода прошиты в режим прозрачного моста, откликаются на +++, но сейчас сходу найти не могу где это мне встречалось... может кто в теме?
Я так понимаю потом AT командами можно будет модуль отстроить и сохранить изменения...
Не думаю, что что-то выйдет. Если стоит RTL871x с корректированным SDK от Realtek, то там минимальный тик RTOS 1 ms, а настройки LwIP из AT недоступны. 32-35 мс - это задержка от включенного по умолчанию nagle algorithm для TCP в LwIP...
UART RTL имеет аппаратную особенность при приеме символов хоть по DMA - пауза после приема последнего символа до прерывания фиксирована и составляет (счас точно не помню) около 1.5 символа (16 тиков UART baud). По этому задержку более этого значения до передачи данных в TCP стек очень сложно сделать программно. :) Но китайцы могут всё :)
 
Последнее редактирование:

MikeK

Member
Не думаю, что что-то выйдет. Если стоит RTL871x с корректированным SDK от Realtek, то там минимальный тик RTOS 1 ms, а настройки LwIP из AT недоступны. 32-35 мс - это задержка от включенного по умолчанию nagle algorithm для TCP в LwIP...
моя железка работает по принципу "чтение-запись-чтение-запись", поэтому судя по ссылке на алгоритм не должно возникать таких ситуаций...
вообще мне эта проблема знакома давно и задержка (по моему мнению) была вызвана тем что модуль ждет например 20 мс прием пакета от контроллера и только потом отсылает... эта задержка настраиваемая, когда то давно она была 100мс и вообще все плохо работало, ставил 10-13 - вроде ничего, меньше были глюки... У вас то в прошивке вашего моста все летает быстро, потому что вы ждете период 3 байта и если нет за это время ничего то отправляете (если я правильно понял одно из сообщений от вас на этом форуме)... а китайцы по другому делают... хорошо когда на дорогих модулях это через веб настраивается, а тут я думаю его нету (хотя и не смотрел)
 

pvvx

Активный участник сообщества
моя железка работает по принципу "чтение-запись-чтение-запись", поэтому судя по ссылке на алгоритм не должно возникать таких ситуаций...
В честь чаго? В uart поступили символы. После паузы в 1.5 символа их передали в TCP стек. По другому сделать невозможно - аппаратная фича у данной UART. В стеке TCP отсчитывается задержка Nagle до их передачи. Её вы и наблюдаете.
 

MikeK

Member
Вы имеете в виду что так сделано в данной Soc или это везде так?
Ведь уарт может принять не один байт а пачку и передавать в стек по определенным условиям (таймаут, кол-во симоволов, "прием определнного символа")..
вот настройка например Bluetooth ELM-327 адаптер (Железо)
 

pvvx

Активный участник сообщества
Вы имеете в виду что так сделано в данной Soc или это везде так?
Так сделано в реализации UART контроллера в RTL871x. Пауза тишины после приема последнего символа. Не корректируется. см стандартный UART от Intel :) (Может и есть корректировка в дополнительных регистрах, но обращений к ним в HAL нет).
Возникает прерывание character timeout
// define Log UART Interrupt Indication ID
/*
IIR[3:0]:
0000 = modem status
0001 = no interrupt pending
0010 = THR empty
0100 = received data available
0110 = receiver line status
0111 = busy detect
1100 = character timeout
*/
От этого исторически и сложилось значение 1.5 символа в Modbus.
Т.е. все остальные задержки - искусственные и их надо вписывать самому :)
 
Последнее редактирование:

MikeK

Member
чтобы я правильно вас понял, проговорю: идет пакет допустим 20 байт сплошняком, UART их всех положил в буфер, потом через таймаут 1.5 символа генерируется прерывание и в нем эти 20 байт запихиваются в TCP пакет, и дальше вступает в действие алгоритм, который ждет некий таймаут2 вдруг еще что-то нужно будет передать... я правильно понял логику? и главное что таймаут2 алгоритма я не могу настроить\изменить\отключить (например AT командами)?
 

pvvx

Активный участник сообщества
чтобы я правильно вас понял, проговорю: идет пакет допустим 20 байт сплошняком, UART их всех положил в буфер, потом через таймаут 1.5 символа генерируется прерывание и в нем эти 20 байт запихиваются в TCP пакет, и дальше вступает в действие алгоритм, который ждет некий таймаут2 вдруг еще что-то нужно будет передать... я правильно понял логику?
Да.
 

MikeK

Member
как проверить? есть у меня какой-то свисток им я шил один раз по SWD, но уже не помню даже из какой софтины, ибо в начале года было...
 

MikeK

Member
визуально я не вижу, а при измерении мультметром на 200 Ом не обнаружил соединений с чипом...
 

pvvx

Активный участник сообщества
визуально я не вижу, а при измерении мультметром на 200 Ом не обнаружил соединений с чипом...
А как они его программировали?
Надпись стерли плохо, да и фото ужасное:
Снимок1142.gif
У NL AT-команды все c AT+xxx.

Определитесь с типом SoC - у вас он и тестер есть. Гадать по фото нет смысла.
 
Последнее редактирование:

MikeK

Member
снимал на телефон, да и не фотограф я в принципе... вот ишо 2 снимка (правда форум еще сживает картинку, но там мало что видно)
 

Вложения

MikeK

Member
объясните плиз, как определиться? по внешнему виду действительно похоже на RTL...
мне нужно что - отпаять плату и через UART подключиться к нему, но тогда как выйти из режима прозрачного моста?
т.е. опишите метод как определить чип.
если это NL, то я смогу изменить настройки уарта:
UARTFT Set/Query UART auto-frame trigger time
UARTFL Set/Query UART auto-frame trigger length
 
Сверху Снизу