Starduino (или Arduino + StarLine)

В этой статье будет рассказано как на основе популярной платформы Arduino сделать кодграббер для StarLine.

Несколько месяцев назад, впервые только заинтересовавшись изучением уязвимостей, в тот момент меня интересовали только шлагбаумы, которых поставили много и не проехать и не запарковать машину в центре города, я натолкнулся на ряд интересных тем. Особенно меня заинтересовал проект tahion`а. USB универсальный, можно перепрограммировать под что угодно и т.д.  Это был мой первый девайс, который мне собрали друзья.

Но везде требовалось, во-первых, изрядное владение паяльником (чего я совсем не умел в тот момент), а во-вторых, хорошее знание особенностей различных МК (программированием, а в том числе и реверс инженирингом я занимаюсь уже лет 20, но изучать еще один ассемблер меня как-то не прикалывало).

Причем очень сильно удручало что везде использовались свои МК — у кого-то PIC, у кого-то AVR, у кого-то что-то еще, что требовало изучение разных МК, вкуривание на даташиты от этих самых МК и т.д. и т.п.

Плюс никто не давал исходных кодов — только готовые прошивки (можно легко взять IDA Pro в руки и превратить прошивку в исходник на асме, но в нём то тоже еще разобраться нужно!).

Я решил попробовать сделать прототип, который:

  1. будет универсальным, т.е. подходящим под большинство задач;
  2. не требует хорошего владения паяльным делом;
  3. не требует особенных знаний МК;
  4. легко превращается из прототипа в готовое устройство;
  5. легко расширяется, позволяя достигнув определенных успехов расти дальше, а также использовать его в других областях.

Сразу скажу, что ни второго, ни третьего пункта в итоге избежать не удалось. И теперь я спокойно паяю lqfp-64 микросхемы и неплохо знаю структуру нескольких типов МК, равно как и читаю даташиты по диагонали.

В итоге была выбрана платформа Arduino. Почему она? Потому, что она с легкостью решает почти все поставленные задачи:

  1. Одна из самых распространенных платформ для прототипирования. Наберите в гугле arduino и посмотрите количество найденных ссылок (на сегодня, порядка 13,5 млн).
  2. Она доступна, купить готовую arduino-совместимую плату можно за 800 рублей и ничего не требуется паять.
  3. Для нее существует просто огромное количество различной переферии (в терминологии ардуины — шилдов) и просто неисчислимое количество описаний и примеров.
  4. Язык программирования ориентирован на новичков (в т.ч. школьников и студентов) и осваивается буквально за несколько часов и уже можно начать ваять прошивки (скетчи  — в терминологии ардуины).
  5. Из ардуины можно взять МК (или купить отдельный) и сделать вполне портативное устройство.
  6. Профи могут выкинуть arduino ide в помойку, взять avr studio и спокойно выжимать из железа всё доступное им.

Есть несколько ардуино-совместимых плат, они ничем не отличаются, кроме количества и качества используемых компонентов, аналоги иногда даже лучше оригинала.  Фирменная Arduino:


Фирменная красивее, но фридруина использует ftdi232rl для usb, а значит будет на ура работать даже под заковыристыми системами. В общем, выбор платы — дело ваше — любая ардуино-совместимая подойдет.

Далее, нужен был трансивер. Для этой цели был выбран приёмопередатчик от старлайн,  по многим причинам:

  1.  Один из очень надежных (над ним можно долго извращаться и он сохранит свою работоспособность).
  2. Толерантный к 5 вольтам (у ардуины вся периферия работает на 5 вольтах, в отличие от брелков, где много что сделано от 1.8 или 3.3в).
  3. Легко достать (я у знакомых на СТО увидел целый ящик таких трансиверов и легко выклянчил парочку).

Далее, нужно все это соединить (сделать шилд). У меня было несколько вариантов (в порядке моего развития):

Взять протошилд и на основании его, проводков, изоленты, соплей и слюней собрать нечто такое  (специально сохранил как свою самую первую поделку):

Тоже самое, только без соплей, зато с эпоксидкой:

Освоить ЛУТ и сделать нормальный переходник:

Как тут быть — решать тоже вам, все схемы работают, включая первую. Для третьей разводку в формате Sprint LayOut прилагаю: starduino

Продолжение следует…

Дальше, при наличии интереса от посетителей и наличия свободного времени я продолжу и расскажу про:

  1. Написание скетчей по приёму StarLine, KeeLoq, CAME и т.д.
  2. Подключение Scher-Khan и иных трансиверов.
  3. Расскажу про создание шилдов под другие ардуины/платформы.
  4. Расскажу как делать свои девайсы (в том числе и на других МК — PIC, MSP430, ARM, …)кучу фана и драйва — обещаю ))

Обсуждение и продолжение на форуме:  http://phreakerclub.com/forum/showthread.php?p=6745.

(с) kab
phreakerclub.com 

  1. Пока что нет комментариев.
Необходимо войти на сайт, чтобы написать комментарий.
Яндекс.Метрика