Меню
andipanda.dev

CaRadio v2: як проблема живлення змінила концепцію проекту

Перша версія CaRadio на базі Raspberry Pi досить довго використовувалася в моєму Volkswagen Golf Plus. Загалом магнітола виконувала свої завдання, але залишалося кілька питань, які я так і не вирішив остаточно.

Одним із головних було керування живленням.

На відміну від звичайних автомобільних магнітол, Raspberry Pi не має повноцінного режиму сну або гібернації. Після вимкнення запалювання пристрій може коректно завершити роботу, але під час наступного ввімкнення йому знову доведеться пройти повний процес завантаження.

Я довго розмірковував над тим, як правильно організувати живлення, забезпечити безпечне вимкнення й водночас уникнути тривалого очікування запуску магнітоли.

Розглядалися різні варіанти, але кожен із них так чи інакше ускладнював конструкцію.

Зміна підходу

Паралельно я займався розробкою CaRaBack і CaRadioGui.

Саме під час роботи над цими проектами прийшло розуміння, що більше немає потреби прив'язувати всю систему до конкретного одноплатного комп'ютера.

Якщо розділити завдання між окремими компонентами, то пристрій, на якому працює користувацький інтерфейс, уже не обов'язково має бути Raspberry Pi.

Це суттєво розширювало вибір апаратної платформи.

Додатковим поштовхом став інший експеримент. Мені вдалося встановити Linux на звичайний Android TV Box і успішно запустити на ньому Klipper для керування 3D-принтером.

Цей досвід показав, що недорогі пристрої, спочатку призначені зовсім для інших завдань, цілком можна використовувати у власних проектах.

Так я почав шукати альтернативу Raspberry Pi.

Не лише живлення

Окрім керування живленням, у першої версії CaRadio були й інші недоліки.

Наприклад, зовнішній вигляд.

Екран був встановлений не найвдалішим чином. Він не надто гармонійно вписувався в інтер'єр автомобіля, а перехідну рамку, яку я збирався виготовити на 3D-принтері, так і не зробив.

До того ж хотілося отримати дисплей трохи більшої діагоналі, з кращою яскравістю та контрастністю.

Виходило, що під час подальшого розвитку проекту мені все одно довелося б вирішувати одразу кілька завдань:

  • організувати керування живленням;
  • підібрати нову апаратну платформу;
  • замінити дисплей;
  • виготовити кріплення та перехідну рамку;
  • вирішити питання підключення автомобільної електроніки.

І в якийсь момент виникло цілком логічне запитання: навіщо збирати все це окремо, якщо можна спробувати використати готовий пристрій?

Ідея використати Android-магнітолу

Я почав вивчати недорогі автомобільні магнітоли, призначені для встановлення замість штатних пристроїв.

На перший погляд це могло здатися дивним рішенням. Адже спочатку CaRadio задумувалася саме як саморобна магнітола, а тепер я розглядав купівлю готової.

Але мене цікавила не стільки сама система Android і попередньо встановлене програмне забезпечення, скільки апаратна частина.

За порівняно невелику суму можна було отримати одразу кілька необхідних компонентів:

  • екран відповідного розміру;
  • вбудований підсилювач звуку;
  • систему керування живленням;
  • готовий корпус, придатний для встановлення в автомобіль;
  • можливість підключення передньої та задньої камер.

Фактично залишалося підібрати пристрій із відповідним процесором і з'ясувати, наскільки вільно можна використовувати його апаратні можливості.

Вибір Vordon VW-910S

Після вивчення безлічі варіантів мій вибір зупинився на Vordon VW-910S.

Одним із вирішальних чинників стала інформація про процесор, який, згідно зі знайденими описами, підтримував режим сну. Крім того, існували передумови для встановлення Linux.

Саме поєднання цих можливостей робило магнітолу особливо цікавою.

Я розраховував отримати готову апаратну платформу, на якій можна буде запускати власне програмне забезпечення, не займаючись розробкою всієї електроніки з нуля.

При цьому пристрій одразу вирішував кілька проблем першої версії CaRadio: керування живленням, дисплей і підсилювач звуку.

Додатковою перевагою стала штатна підтримка передньої та задньої камер. Хоча для версії на Raspberry Pi у мене вже існувало апаратне рішення для їх підключення, залишалося реалізувати відповідну програмну частину.

У випадку з готовою магнітолою ця функціональність уже була передбачена виробником.

У результаті Vordon VW-910S була придбана для подальших експериментів.

Нова концепція CaRadio

На цьому етапі стало остаточно зрозуміло, що підхід до розробки власної автомобільної магнітоли змінився.

Раніше CaRadio була системою, побудованою навколо Raspberry Pi, до якого підключалися необхідні периферійні пристрої.

Тепер ідея полягала в іншому.

Замість створення всієї апаратної частини з нуля можна використовувати готову автомобільну магнітолу як основу, а її штатне програмне забезпечення замінити або доповнити власним.

При цьому розробка CaRaBack і CaRadioGui вже показала, що окремі функції системи можна розділити між різними пристроями, не прив'язуючи проект до однієї апаратної платформи.

Таким чином, пошук рішення проблеми керування живленням несподівано призвів до значно серйозніших змін.

Так почалася історія CaRadio v2.

У наступних статтях розповім, що насправді виявилося всередині придбаної магнітоли, які можливості вдалося виявити та з якими труднощами довелося зіткнутися під час спроби перетворити готовий Android-пристрій на основу власного проекту.