Дякуємо, що виявили такий інтерес до цієї теми. Сподіваюся незасмучу тих хто хоче собі таке ж і ми зможемо щось придумати :)
Як я до цього прийшов?
Загалом купив я машину, особливо досвіду їзди заднім ходом не було, вирішив поставити парктроніки. Всіх був огидний (в плані поєднанняз інтер'єром машини) вигляд, коротше це просто жах якийсь, клеїтина двосторонній скотч якусь херню в машині та й щоб ще дроти з неїстирчали — мене таке не влаштовує.
<
І думав я, що ось було б круто виводити парктроніки на штатнийдисплей…
Перші спроби виведення даних на дисплей
Все почалося з того, що я почав шукати якісь схеми, на яких би бувцей дисплей, на будь-яких тематичних форумах я зареган не був, томушукав просто в інтернеті і це зайняло якийсь час.
<
Вивчивши схему я зрозумів дві речі:
1. Дисплей управляється по MS CAN шині.
2. MS і HS CAN шини присутні на OBD роз'ємі.
Підключив все це до Raspberry Pi, взяв в інтернеті перший-ліпшийCAN-сніфер, захопив ноут і погнав у машину пробувати слухатиCAN-шину.
Малинка, модуль SPI- CAN і подовжувач OBD
Ну загалом послухати вийшло, але не відразу, яка там швидкістьпередачі я поняття не мав (125 kbps), тому що ще з машинами в цьомуплані не стикався. На сніффері побачив, що літери на дисплей летятьу відкритому вигляді — шикарно. Написав скрипт який фігачить зацими адресами тестовий рядок у — все працювало, майже, є нюанс, свій рядок я побачив, тільки вона мерехтіла, а потім дисплейвзагалі зависав і не працював.
Висновки для себе я зробив такі:мерехтіння через те, що на дисплеййдуть не тільки мої посилки, а зависає тому, що я загажую шинусвоїми повідомленнями. Далі я спробував ловити повідомлення, якійдуть на дисплей і за ними навздогін відправляти відразу свої, цевирішило проблему із зависаннями, але не проблему з мерехтінням —стало ще гірше.
b> Перший варіант утройства
Прийшов я до висновку, що різати потрібно дроти на дисплей івклинюватися якось туди, тому що інакше ніфіга працювати не буде.План такий:роблю приблуду, яка з одного боку підключається додисплея, а з іншого до шини CAN, ті пакети, які мені цікаві (центральна частина дисплея), я фільтрую, підміняю в них дані наті, які потрібні мені і відправляю пакети далі на дисплей., всіінші пакети я просто пропускаю протягом (ліва частина —годинник/комп'ютер витрати, права частина — клімат). Я не перший, кілька людей вже робили таке (посилання), там я знайшов готовірозшифровки даних на CAN-шині це заощадило мені багато часу. Там жея знайшов пакет в якому є інформація про задню передачу, ручник іще багато чого цікавого. >
За основу взяв налагоджувальну плату STM32 Discovery, на якій вже є2 інтерфейси CAN (насправді працював лише один, тому що на другомубула розпаяна розсипка для роботи USB (якщо правильно пам'ятаю), загалом після випаювання зайвих деталей CAN запрацював), докупивCAN-трансівери (штука яка потрібна для перетворення "логічного" CANу фізичний інтерфейс), докупив ще роз'єми 4-пінові, для того щобможна було швидко відключати мою приблуду і підключати назаддисплей до шини.
Налагоджувальний модуль у зборі
Рознімне з'єднання дисплея
Фото в машині
З цього моменту я почав активно писати софт, і плавно підбиратисядо того, як це можна буде пов'язати з купленим парктроніком. Купивнайбюджетніший Falcon 2616, не бачив сенсу брати щось дорожче, взявлогічний аналізатор і почав дивитися щось він там шле надисплей.
Почав сидіти і намагатися зрозуміти, що це все таке і навіщо вонотреба, вставив датчики в коробку з-під системного блоку і на різнихдистанціях записував дані які шле парктронік на дисплей, черезякийсь час почав бачити закономірності Якщо все коротко, топактронік посилає дані кожні ~100 мс, пакет складається з 1стартового біта і 16 біт даних, в даних лежить ідентифікаторсенсора (їх же 4) і власне дистанція з цього сенсора.
Докладніше на гітхабі. Варіант
Дані з парктроніка декодовані, основна частина софту вже написанана налагоджувальній платі, пора проектувати плату.
Робота виконувалася в Altium Designer, 4-шарова плата, розмір 25 х60 мм, контролер STM32F103.
Контролер вибрав найдешевший можна сказати, спочатку хотів братиконтролер з 2 CAN інтерфейсами як на налагоджувальній платі, алепобачивши ціну на них я засмутився — приблизно 30$ в Україні (доцього вони начебто коштували до 10 $), у зв'язку з епідемією ціни намікросхеми просто злетіли. Вирішив все-таки взяти більш доступнийМК і контролер SPI-CAN MCP2515, так бюджетніше виходить. МК івсього іншого, купа резисторів і конденсаторів різнихноміналів.
Трасування плати виконував мій друг Артем Аногда, велике йому за цедякую, я тільки намалював схему і позиціонував детальки.
Плати замовлялися китайською JLCPCB.
Скріншот плати
Фото готової плати
Ось так виглядає схема підключення xD
Схема підключення<
Далі пайка і перший запуск, на диво за схемою навіть косяківособливо не було. Плату, запакував у прозору термоусадку і пішовусю цю справу встановлювати. Ах так, зовсім забув сказати, спочаткуя прошив програмку, яка виводить на дисплей всі ASCII символи щобдізнатися код символу зафарбованої стрілочки (трикутника).
> Ці стрілочки я підглянув у людини з хабра, який робив те саме, тому я був упевнений, що там ці стрілочки є, треба тільки знайти :)Тепер про несподіванки.
Справа в тому, що спочатку, як я і говорив, я планував повністювклинюватися між CAN-шиною і дисплеєм, але як виявилося в такомуразі виникають проблеми,
які я так і не вирішив, а саме:перестає працювати годинник, тобтовін ніяк не налаштовується і до того ж постійно збивається. Нащастя я додатково поставив мікросхемки FSUSB30, які є перемикачемдля шини даних (взагалі судячи з назви для USB, але я застосувавдля CAN), тобто я зробив так, щоб можна було пускати CAN як би вобхід мікроконтролера на платі, таким Таким чином відновлюєтьсязаводська схема роботи дисплея і цим можна керувати програмно.
Спочатку я планував включати парктронік як тільки встановиться бітзадньої передачі, але тепер у жодних даних немає. Щоб вирішити цепитання я завів 5V вихід з парктроніка на вхід своєї плати, тому щотам напруга з'являється тільки тоді, коли вмикається задній хід (разом з фарою заднього ходу), і таким чином моя приблуда розумієколи потрібно починати замінювати пакети. В цілому це майжевирішило проблему з годинником, вони тепер цокають іналаштовуються, але тільки за умови, що не включений задній хід:)
Взагалі від парктроніка до його дисплея йде 3 дроти:харчування, земля і сигнал.На своїй платі я робив роз'єм якраз 3-піновий, розрахунок тоді був на те, щоб можна було підключити парктроніки, уяких є ще додатковий провід — клок для синхронізації даних.
> Висновок
Робив я це все досить довго, у квітні почав, а закінчив аж ужовтні, не завжди було натхнення, та й плати довго робилися таїхали до мене.
Виходить користуюся я цією приблудою вже 5 місяців, особливопроблем ніяких не було. І ще пару разів було таке, що плата починаєїсти, продовжує це пару секунд і припиняється, при цьому на дисплеїданих парктроніка не з'являється. Можливо це навіть штатна пищалкамашини пищить.
До речі звук намагався зробити максимально схожим на штатниймаздовський, який ми чуємо наприклад коли кнопки натискаємо. Хочапо частоті вони ідентичні, але через те, що пищалки різні можнапочути невелику різницю.
Плати JLCPCB — 17$ за 5 шт
Контролер — 13$
Мікросхеми та розсипуха — 37$
Загалом я витратив близько 100 американських гривень, але взагалітам деякі позиції я брав не в одиничному екземплярі, тому якщопорахувати поштучно, то вийде менше.
Гербер файли плати поки нікуди не заливав, як і повний списокдеталей. Що у всіх у голові, вибачте мені будь ласка :)
Якщо хтось хоче таке ж, може щось придумаємо.
"хоча по частоті вони ідентичні, але через те, що пищалки різніможна почути невелику різницю.
Плати JLCPCB — 17$ за 5 шт
Контролер — 13$
Мікросхеми та розсипуха — 37$
Загалом я витратив близько 100 американських гривень, але взагалітам деякі позиції я брав не в одиничному екземплярі, тому якщопорахувати поштучно, то вийде менше.
Гербер файли плати поки нікуди не заливав, як і повний списокдеталей. Що у всіх у голові, вибачте мені будь ласка :)
Якщо хтось хоче таке ж, може щось придумаємо.
"хоча по частоті вони ідентичні, але через те, що пищалки різніможна почути невелику різницю.
Плати JLCPCB — 17$ за 5 шт
Контролер — 13$
Мікросхеми та розсипуха — 37$
Загалом я витратив близько 100 американських гривень, але взагалітам деякі позиції я брав не в одиничному екземплярі, тому якщопорахувати поштучно, то вийде менше.
Гербер файли плати поки нікуди не заливав, як і повний списокдеталей. Що у всіх у голові, вибачте мені будь ласка :)
Якщо хтось хоче таке ж, може щось придумаємо.


Коментарі16
Крутотень але не з моїми знаннями електроніки це робити)))
Хехе, насправді справа навіть не в тому, що мені сильно той парктронік потрібен був, просто я загорівся ідеєю запхати його саме в дисплей )А за термінами я собі ніяких рамок не ставив, це було просто фонове хобі.
Знайомо. Коли важливий сам процес, а в кінці - кайф від факту досягнення бажаного результату ...))
Шайтан)
Я б прикупив готовий комплект)
Вау, вибух мозку))) Круто! Респект!
Нічого не зрозумів, але зрозумів, що складно і прикольно - повага!
Скільки буде коштувати готовий комплект?!
У ти заморочився)))
Та тут деякі і не так морочилися)
Цікаво, але дуже не зрозуміло для простого користувача. А взагалі респект 👍. Якби такі голови на автовазі працювали...
Я таке точно не зможу провернути, красень 👍
Ох тиж е) а теоретично для чужих деталей таке зможете зробити?) що потрібно буде надіслати, купити і тд?)
Все залежить від того, який у вас стоїть парктронік. Якщо він не відрізняється від мого, то достатньо цієї плати з роз'ємами. Якщо він відрізняється від мого, а ви хочете саме свій, то мені потрібен парктронік як у вас, щоб зрозуміти як він працює і ...
У мене парктронік був на старому бампері, в обваження не ставила, але хочеться. В принципі, якщо ваш не гірше, та й сильно простіше буде встановити, можна і розглянути варіант покупки аналогічного вашого. Давайте я свій дістану з гаражних покладів, і...
Дякую!