Pull to refresh
4
0

Embedded programmer

Send message
Там константы замазаны.

Впрочем, можно поснимать штук н-цать логов с родного MUT-3 и попробовать перебрать значения. Там, насколько я понимаю, 16 (начальное значение) + 8 (множитель 1) + 8 (множитель 2) бит перебирать, по современным меркам — любой калькулятор справится.

Автору в любом случае спасибо, занятная информация.
Простите, а когда бензовоз стал «гражданским»?

Да, имелась в виду не военная (я не знаю, что там с требованиями. Лет 50 назад на военную технику прерыватель массы ставили) и не гоночная (там по регламенту положено) техника.

Да и вообще, часто вы видите новые самосвалы или бетономешалки?

Ежедневно, к сожалению. У нас под окнами очередной торговый центр строят.
А несколько лет назад, когда занимался разработкой железяки для авто, ещё и «изнутри» видел.

Я к чему это. Если мы говорим «ТБ», должно быть какое-то официальное требование. А его нету, и все автопроизводители не считают необходимым полностью обесточивать машину (более того, это несёт кучу неудобств и проблем как для пользователя, так и для самого производителя).

Прикуриватель, кстати, часто на цепь аксессуаров замка зажигания подключается, и питание там «автоматически» пропадает на заглушенной машине.
Ну это самое простое.
По-хорошему, надо блокировать уже заведённый двигатель (так сложнее для злоумышленника, плюс можно сделать защиту от угона авто, которое завёл сам владелец), но дополнительно проверять, что клиент никуда быстро не едет (чтобы не устроить аварию в случае ложного срабатывания). Как именно производитель определяет факт неподвижности, нигде толком не описано. Иногда — по ручнику, иногда — по открывающимся дверям. Ещё есть акселерометр, но равномерное движение от стоянки он плохо отличает.
«Запустить» и «заглушить» — вещи прямо противоположные :-)
Так что работа автозапуска ни о чём не говорит.
Возможно, люди, которые ставили эту сигнализацию, заблокировали только запуск двигателя (методом разрывания проводов стартера или штатного иммо).
Тогда, действительно, уже запущенный двигатель заглушить не получится.
Мне проверять лень (да и на работе я буду только в понедельник), но даташит на самый обыкновенный BZX84 обещает пару-тройку мкА утечки (максимум). Возможно, для этого его надо подогреть.
Остановить не значит педаль в пол сделать.

Остановить — значит остановить. Заглушить двигатель. Если это произойдёт на широкой магистрали в левом (четвёртом, предположим) ряду, у вас есть несколько сотен метров инерции, чтобы понять, что за фигня происходит, перестроиться и припарковаться у отбойника. Ну окей, это возможно.
А вот что будет, если это решит заблокировать двигатель в момент обгона, думайте сами.
В общем, умные люди, которым не хочется тюрьма сидеть, выпускают иммобилайзеры, которые блокируют неподвижный (или только-только начинающий двигаться) автомобиль.

Кто запрещает совместить?

Ну, можно, да. Но в современном понимании: трекер это маячок, который изредка сообщает свои координаты, никак не отсвечивая всё остальное время. Устанавливается куда-нибудь подальше и поглубже. Для удобства установки оборудован только проводами питания.
Иммобилайзер — штука, которая, собственно, не даёт уехать, кому не следует. Подключается к питанию, датчикам дверей (понимание, что сейчас, возможно, кто-то вышел, сильно упрощает алгоритмы), блокируемой цепи (последнее время модно делать само устройство блокировки отдельным, со связью по радиоканалу). Умеет бибикать и моргать, если что-то пошло не так.
У меня плохие новости. В современном гражданском автомобиле выключатель обязателен только на бензовозах. И то есть исключения (в виде устройств, которые штатно запитаны в обход этого выключателя).
Все остальные авто ни «железно отключить» нельзя.
Очень хорошая статья, особенно на фоне «фигак-фигак, кубМХ, лампочка моргает! смотрите продолжение в следующей серии».
Человек, который знает, как внутри работает АЦП, а не только имеет примерное представление о разнице ардуиновских DigitalRead и AnalogRead — это какой-то уникум по нынешним временам…

Парочка замечаний.
В цепи измерения внешнего напряжения стабилитрон имеет ток утечки, сравнимый с током делителя. Это надо бы перепроверить (партнамбер на стабилитрон я не увидел) и что-то сделать. Самое простое — выкинуть его, возложив защитные функции на встроенные диоды контроллера.
Я не знаю, откуда Вы взяли, что характеристика термистора линейная. В даташите на импользуемый NTCLE100E3 приведена совершенно стандартная формула с логарифмом.
ВАЗ-2101 по этому критерию можно считать современным автомобилем, там уже был соответствующий контакт на замке зажигания.
Правильный трекер при детекте глушилки должен остановить автомобиль

Как сделаете, повесьте, пожалуйста, на заднее стекло плакат «внимание! моя машина может внезапно и без предупреждений остановиться в любом месте и на любой скорости!».
Да и на лобовое тоже, чтоб не забыть.
Трекер — это трекер, иммобилайзер — это отдельное устройство. И никто никогда не делает иммобилайзер с привязкой к сотовым сетям.
Все эти вопросы легко решить созданием российской импортозаместительной читалки (с «кузнечиком» и Яровой) и уголовным преследованием чтения книг любым другим (общественно опасным) образом.
Игра секретная, нам про неё не расскажут. Вон, даже hex-файл в начале статьи исправленный, у него контрольные суммы не сходятся. Впрочем, даже если их поправить, там ничего сверхсекретного не видно: pastebin.com/1gzN7mnQ
это если case'ы подряд идут и компилятор достаточно умный. а вот для
case 1:…
case 2:…
case 100500:…
ничего кроме связки условных переходов и не придумаешь…
Нет, адреса методов невиртуальных С++ классов линкеру известны, и он, скорее всего, сделает вызов по константному адресу (исключений я не знаю. Впрочем, все архитектуры я тоже не знаю ;-) ).
Другой вопрос, что команд перехода может быть сильно больше одной (когда размер адресуемой памяти превышает размер регистра, фантазия проектировщика системы команд начинает бить ключом — может появиться пяток разных способов адресации в одном чипе).
Автомобиль вообще стрёмная штука.
На моём личном авто установлена некая противоугонная штука, которая опрашивает брелочек, и при его отсутствии блокирует двигатель. Сделана «профессионалами» и стоила ощутимых денег. Так вот, это поделие «последнего поколения, созданный на основе самых современных технологий по передаче данных» (цитата из документации) последние пару месяцев любит глушить движок после открытия двери (слава богу, опрос брелочка идёт только после того, как водитель потенциально вышел из авто). Вот потеплеет, вырежу я его к чертям, пока оно меня не угробило…

И да, я даже не заикался о том, что с ардуиной вместо замка зажигания надо ездить. Люди, которые делают такое… ну… неправы.
Ну это разные проекты, на самом деле. Мы тут выше обсуждали, что можно достать, просто подключившись к шине, а Вы предлагаете половину проводки перерезать. Управлять замками и моргать аварийкой методом прикручивания горсти релюшек умеет любой установщик автосигнализаций, это недостаточно айтишный метод :-)
А вот про запуск без ключа я б послушал. Или на нексии (?) иммобилайзера штатного не было?
ЭБУ не особо быстрая штука, на самом деле. Её до сих пор на 16-битных процессорах иногда делают (примечание 1: процессор специализированный. примечание 2: в большинстве случаев сейчас используются 32-битники).
Если вопрос «как самому сделать ЭБУ» интересен, можете погуглить «rusEFI». Просто как пример, что на коленке можно создать что-то работоспособное.
В изобилии. Все «родные» фирменные сканеры — закрытые и свои собственные. Разъем чаще всего используется тот же самый (для удобства сервисников), но шина может быть соседняя (на стандартный разъем могут выводить 2 CAN-шины и какой-нибудь KLine) и протокол свой собственный (хотя часто очень похожий на стандартный).
Т.е. минимальный набор параметров отдают все и всегда (потому что по закону положено), а всё остальное — только за деньги…
Ну, свой велосипед роднее :-)
Железка «сама» получилась методом выкидывания 90% кода из того устройства, которым я занимаюсь бОльшую часть рабочего времени (и поэтому она вряд-ли попадёт в открытый доступ).
А софтину пришлось делать, т.к. для исследований нужна была логика вида «запомнить пакет А, при получении пакета Б сложить байт 1 из А и байт 2 из Б и отправить обратно». Кто такое предоставляет (бесплатно или недорого), я не знаю.
Надо б это всё допилить до удобного состояния и выложить, авось не у одного меня руки чешутся… ;-)

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity