Мне очень понравилась работа команды, создавшей Flipper Zero. Став обладателем этого устройства, в процессе эксплуатации я пришёл к выводу, что оно очень полезно, но, на мой взгляд, недостаточно удобно в эксплуатации ввиду наличия только джойстика для управления этим устройством. Да, можно подключить отдельную плату расширения с нужным количеством кнопок для быстрого набора цифровых данных, но… Очень захотелось, чтобы на одном устройстве было всё максимально удобно для использования, и чтобы это максимальное удобство не занимало много места. Так как я - человек, детство которого прошло во времена Советского Союза, я стал свидетелем вхождения в наш обиход первых мобильных телефонов, тех самых легендарных Motorolа, SonyEricsson, Nokia, и мне очень захотелось создать нечто похожее по функционалу на Flipper Zero, но в то же время напоминающее те самые первые мобильники… Ностальгия, так сказать…

Программированием микропроцессоров я занимаюсь с начала 2000-х годов, со времен своего студенчества, и именно тогда у меня родилась интересная идея – а почему бы не попробовать сделать свой, особенный, телефон, с моим «сердцем» внутри - взять за основу один из тех самых легендарных телефонов и расположить всё то, что я хочу, в нём!

 Бороздя просторы Интернета и воскрешая в памяти все эти сейчас уже ставшие легендами первые мобильники, я неоднократно наталкивался на хохмы про телефон Nokia 3310. Как-то на выходных, разобрав пару-тройку полок в своём гараже, я отыскал ЕГО, телефон, который когда-то, в году эдак 2002-ом, а может, и в 2003-м, был самой настоящей гордостью студента!

 

А почему бы и нет…

После многих раздумий было решено  взять за основу решение ESP32-S3. Это было сделано по следующему ряду преимуществ:

  • двухъядерный микроконтроллер XTensa LX7 MCU, способный работать на частоте 240 МГц. 

  • Wi-Fi + Bluetooth 5 (LE): поддерживает Wi-Fi с частотой 2,4 ГГц (802.11 b/ g/ n) и полосой пропускания 40 МГц. Подсистема Bluetooth с низким энергопотреблением поддерживает большие расстояния благодаря кодированному PHY и расширению. Он также поддерживает более высокую скорость передачи и пропускную способность данных, до 2 Мбит/с. Как Wi-Fi, так и Bluetooth LE обладают превосходной радиочастотной производительностью, которая сохраняется даже при высоких температурах.

  • оснащен 45 программируемыми портами ввода-вывода и поддерживает богатый набор периферийных устройств (GPIOs, SPI, I2S, I2C, PWM, RMT, ADC and UART, SD/MMC host and TWAITM

  • поддерживает более высокоскоростную SPI flash и PSRAM с настраиваемым кэшем данных и команд.

Далее рассматривались дополнительные «обвесы» и в настоящий момент принято решение реализовать следующие возможности:

  • дисплей будет использоваться от самого телефона, его характеристики: контроллер PCD8544; разрешение экрана:  84 x 48 точек; размеры экрана: 36 х 24 мм; напряжение питания логики: 2,7 – 3,3В; габариты: 43,8 х 43,4 х 13,2 мм;

  • вторая модификация с 1,3 дюймовым OLED дисплеем;

  • клавиатура от телефона так же будет использоваться в полном объеме, с возможностью набора текста как в «старые добрые времена»;

  • аккумулятор BLC-2, за зарядку которого будет отвечать линейное зарядное устройство с терморегуляцией LTC4054-4.2;

  • разъем для зарядки, обновления ПО и взаимодействие с компьютером Type-C;

  • поддержка карт формата MicroSD объемом до 32 Гб включительно, с поддержкой файловых систем Fat, Fat32, NTFS;

  • внутренний инфракрасный приемо-передатчик с функцией обучения, записи и воспроизведения сигналов. Возможности будут расширяться, база стандартизируется;

  • возможность чтения, записи и эмулирования ключей IButton, RFid (125КГц, 13,56 МГц);

  • работа с цифровыми сигналами в диапазоне частот 300-928 МГц. Данная функция будет реализована в 2 вариантах: на основе трансивера TI CC1101 и трансивера Si4463;

  • прошивка с полностью открытым исходным кодом, которая будет регулярно выкладываться на Github с целью возможности расширения функциональности. Изменив код, каждый пользователь сможет написать свои собственные плагины и получить необходимый именно ему функционал и неповторимость, а так же отключить ненужное.

Спустя 2 недели ночных «бдений» было собрано «нечто» и написана первая прошивка:

При отладке с целью увеличения свободных портов ввода-вывода ESP32-S3 было принято решение перевести клавиатуру, модуль IButton, Rfid и ИК приемо-передатчик на отдельный микропроцессор PIC16F1938 посредством I2C.

Спустя еще 1,5 недели трассировки и «впихания невпихуемого», получил:

 

Первый заказ платы с завода…

Ожидание…

И вот мой первый мультитул…

Неубиваемый «кирпич», а не «пеноблоки» современности, легенда начала 2000-х…

Далее гоняем по функционалу:

        

Написана функция блокировки устройства на пароль. В функционале ввода информации с клавиатуры реализована возможность ввода текстовых данных как на английском, так и на русском языках. Прорабатываю возможность дополнения словаря дополнительными языками.

В настоящий момент полностью написан код, отвечающий за чтение, копирование и эмулирование Rfid ключей 125 кГц, IButton ключей, работа с ключами диапазона 13,56 мГц находится в отладке.

ИК приемник/передатчик расположен сверху, рядом с кнопкой включения. Работает в режиме чтения/обучения и управления.

Работает функционал мини-Web-сервера, Wi-Fi точки доступа с DHCP.

В тестовом режиме работает Bluetooth 5 (LE).

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

По мере продвижения разработки будут регулярно выкладываться новости и текущие Beta-прошивки на Github и Яндекс.Диск.

Комментарии (45)


  1. SUNsung
    30.09.2023 18:06
    +6

    Хоть бы ссылку на гитхаб..


    1. lomovtsevdn Автор
      30.09.2023 18:06
      +16

      Сейчас вношу очень большую доработку, на следующей неделе будет все выложено, стыдно с глюками выкладывать...


  1. hphphp
    30.09.2023 18:06
    +6

    Может немного не по теме, а чем вас так флиппер восхитил? У меня кроме шлагбаумов и домофонов ему, практического применения, так и не нашлось...(


    1. lomovtsevdn Автор
      30.09.2023 18:06
      +9

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


      1. sneg2015
        30.09.2023 18:06
        +6

        Это понятно. Но можно реальный пример использования от владельца?


        1. lomovtsevdn Автор
          30.09.2023 18:06
          +21

          Не так давно был небольшой заказ для отладки радиосвязи между устройствами в дипазоне 433 мГц, на расстоянии около 700 метров, может 1 км (точно не замерял), отладка проходила в полевых условиях, флипер пригодился: есть экран, это +; акб +; но дальше, отсутствует мини клавиатура, в той ситуации минус был огромный, ну ладно. Вытравил мини клавиатуру, дописал код, вроде бы ок, но блин, в России ребята закупают радиомодули что подешевле(hc-12), а они на трансивере Si4463, опять двадцать пять, еду в офис, переделываю доп плату, пишу код, теряю еще 1 день, в результате сделал. А если бы не было флипера под рукой, то я опять с кучей разово изготовленных плат, перемотанные изолентой и висящим экраном на проводах, а так брелока в возможностью закинуть свой код, отладить на stm'ке, просчитать итоговое решение, отредактировать под нужний микрик. Удобство в работе то же нужно.


          1. Melonom
            30.09.2023 18:06
            +65

            Что то на радиоинженерном.


          1. DarkTiger
            30.09.2023 18:06
            +6

            А ноут тогда чем не подошел? Казалось бы, пускаем с одного конца алфавит или шахматы, с другого смотрим на ноуте, что получилось, через простейший usb-uart и терминалку...
            И, насколько я понял, там не особо сложная схема была. Почему принципиально не подходила breadboard? На висящих проводах и правда неудобно :)

            Без такого чемоданчика в полях тоскливо, так в офис не наездишься.


            1. lomovtsevdn Автор
              30.09.2023 18:06
              +1

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


              1. DarkTiger
                30.09.2023 18:06
                +3

                Тогда данный пример нельзя назвать типовым, поясняющим необходимость Флиппера. Частный случай, вроде истории про девушку, таскавшую в сумочке гаечный ключ на 13.


                1. lomovtsevdn Автор
                  30.09.2023 18:06
                  +3

                  Меня просили привести пример, как я лично его использовал, мне было неудобно им пользоваться в виду отсутствия клавиатуры, ни о какой необходимости Флиппера речи не шло


              1. Serge78rus
                30.09.2023 18:06
                +1

                Требование заказчика исключало наличие ноутбука...

                Думается, что @DarkTiger имел ввиду использование ноутбука при отладке прототипа, а не в конечном изделии. Или заказчик и это запретил?


                1. lomovtsevdn Автор
                  30.09.2023 18:06

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


                  1. osmanpasha
                    30.09.2023 18:06
                    +14

                    Аргумент против ноутбуков, мягко говоря, странный


                    1. lomovtsevdn Автор
                      30.09.2023 18:06
                      +1

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


                      1. Serge78rus
                        30.09.2023 18:06
                        +11

                        То есть, если бы заказчика кинул человек в кепке, то требования к следующему исполнителю было бы носить ушанку?


                      1. ZiggiPop
                        30.09.2023 18:06
                        +11

                        "Заказывал услуги плотника, приехал человек с ножовкой и молотком, ничего не сделал, на бабки кинул. Теперь требование к другим плотникам — никаких ножовок и молотков"


                  1. DarkTiger
                    30.09.2023 18:06

                    Аргумент далеко не типовый, но и из ряда вон его тоже назвать нельзя. Поля - они такие, там всякие люди встречаются, живое общение с народом и все такое. Это нас в офисе охраняют от подобных заказчиков те самые мальчики в костюмах на выезде, которых мы так не любим


                    1. lomovtsevdn Автор
                      30.09.2023 18:06

                      Абсолютно согласен, у каждого свои тараканы в голове....


        1. xakep2011
          30.09.2023 18:06
          +2

          Bluetooth-пульт уже неоднократно пригодился и для презентаций, и в формате Media, как пульт для музыки с ноута. Там же, на презентации, скопировал радиосигналы разворачивания экрана для проектора, но это скорее just for fun.

          Есть режим USB-накопителя, с отдельно создаваемым образом для этой цели, тоже уже использовался по назначению.

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

          Восстановил повреждённый ключ от домофона, соединив вручную катушку и перенеся данные на новую болванку.


        1. bolk
          30.09.2023 18:06

          Я снял данные от ключей родственников, теперь просто захожу в подъезд и иду в квартиру (я всегда заранее звоню, конечно, что к такому-то времени приду в гости). Однажды забыл рабочую карточку дома и открывал в офисе двери Флиппером (он у меня в рюкзаке лежит всегда).


  1. NeoCode
    30.09.2023 18:06
    +1

    Отличная идея! Предполагаю, что в торце корпуса будет универсальный порт, к которому уже будут подключаться сменные адаптеры для различных проводных протоколов - например того же iButton (как ключа так и считывателя)?


    1. lomovtsevdn Автор
      30.09.2023 18:06
      +3

      IButton

      Разьемы ввода-вывода, питание 3,3 и 5 вольт, согласованы логические уровни 3,3 и 5 вольт


      1. Vindicar
        30.09.2023 18:06
        +2

        Первая мысль по фото была: "о, ещё и тазер в комплекте..."


  1. Weron2
    30.09.2023 18:06
    +3

    Очень круто! Помню что флиппер от идеи до прототипа пиарился тут на хабре наверное с год точно. А манюня вот уже сразу, практически)


  1. Darka
    30.09.2023 18:06
    +7

    Лучше запихните туда Lora и будет прикольный Meshtastic терминал


    1. sdore
      30.09.2023 18:06
      +2

      Звучит как обесценивание.


  1. iShkval
    30.09.2023 18:06
    +3

    Кстати автоугонщики делают из 3310 заводилки-ретрансляторы. Но при этом сохраняется функционал телефона, интересно бы было посмотреть как это реализовали.


  1. utor
    30.09.2023 18:06
    +1

    КДПВ - еще одна стена падёт


  1. osmanpasha
    30.09.2023 18:06

    Это восхитительно!

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


    1. lomovtsevdn Автор
      30.09.2023 18:06
      +1

      Благодарю, плата 4-ех слойная, с золочением. Переходы с кнопок межслойные. Плату изготавливал завод по чертежам, до этого была груда мелких платок на проводах.


      1. MaFrance351
        30.09.2023 18:06

        О, кстати. А плёнка для клавиатуры с оригинального телефона, или новую нашли?


        1. lomovtsevdn Автор
          30.09.2023 18:06
          +3

          Плата подгонялась под готовую клавиатуру, дисплей, кнопку включения, корпус. Был убран разьем сим-карты (заменен на порты ввода-вывода), нижняя пластиковая вставка напечатана на 3d принтере (под разьем type-c и разьем для контактных ключей IButton), вехняя резинка заменена на пластик (сейчас серый, завтра отпечатаю прозрачным, рядом с кнопкой расположен ИК приемо-передатчик). В остальном оригинал, включая спикер и вибромотор.


    1. drauger
      30.09.2023 18:06

      На 3310 / 3330 кнопки выведены на пятаки. У меня получилось подпаяться и использовать родную клавиатуру. Кстати, к экрану так тоже можно подключиться. Главная проблема - уместить все допы в отсек аккумулятора.


      1. osmanpasha
        30.09.2023 18:06

        А аккумулятор куда?)


        1. drauger
          30.09.2023 18:06

          Туда же. Я ставил неродной.


  1. id_potassium_chloride
    30.09.2023 18:06
    +3

    Ещё когда Флиппер только выходил, у меня появлялось желание сделать что-то типа такого устройства: со своим набором датчиков и более удобным управлением. Сейчас у меня девайс в стиле звуковой отвёртки Доктора Кто (тоже с ESP32, кстати), штука полезная, но функционал маловат и схемотехника плохая (не радиоинженер я всё-таки). Проекту плюсую, буду следить за обновлениями


  1. khanz
    30.09.2023 18:06
    +1

    Это Люто! Это мне нравится!


  1. arider77
    30.09.2023 18:06

    Приятно читать статьи от профессионалов своего дела, а не просто копирайтеров или тех кто по верхам нахватался!

    Проект просто зачёт! Автор молодец. Побольше должно быть таких статей на Хабре!


    1. lomovtsevdn Автор
      30.09.2023 18:06

      Благодарю за понимание!


  1. FloppaTheBig
    30.09.2023 18:06

    Вот бы туда osmocom)


  1. misha55robby
    30.09.2023 18:06
    +1

    Голосую за Моторолу рейзер в 3. Я думаю это всё таки был флагман целого поколения


  1. FVVSHARK
    30.09.2023 18:06

    Валяется без дела 3310, есть свободные платы, чтоб пачку с завода не заказывать?



  1. vaxxabait
    30.09.2023 18:06

    В 3310 затолкали и Lora в дополнение к - https://www.mastrogippo.it/2018/07/1337-3310-wifi-hardware-design/. Но с E63 с Lora чатится поудобнее будет - https://github.com/TrevorAttema/OTGMessenger