как загрузить телефон с флешки

Можно ли загрузить телефон Android с USB-накопителя?

Есть ли способ загрузить телефон Android * с USB-накопителя с питанием от шины **? Если да, то какие шаги для этого?

* Например, один с функцией USB OTG.

Пожалуйста, уточните, какова цель и почему?

Телефоны Android имеют свои собственные загрузчики и не могут быть переопределены другими способами.

Это не похоже на BIOS ПК, где вы можете переключать порядок загрузки для загрузки с определенных устройств, таких как Network PXE, USB, Primary / Secondary HDD.

Редактировать:

После комментариев ниже и в связи с вопросом ОП

Есть ли способ загрузить телефон Android (например, с функцией USB OTG) через USB-накопитель с питанием от шины

если ( нажата клавиша уменьшения громкости? ), то

конец если.

Примечание: Samsung любит PBL / SBL (который является Primary Boot Loader и Secondary Boot Loader соответственно) в их жаргоне, когда дело доходит до моддинга. Что касается Samsung, так это то, что в некоторых телефонах PBL и SBL могут быть зашифрованы (Samsung Wave GT-S8500 является одним из таких примеров, когда портировать Android на него было практически невозможно из-за DRM в загрузчиках, что было кошмаром). иметь дело с моддингом и сделать его чрезвычайно трудным, тем не менее, это своего рода работа через эксплойт в коде FOTA!)

Вот почему нет никаких дополнительных средств, таких как функциональность OTG или что-либо еще, таких как последовательная связь, чтение с SDCard, графика и т. Д., Поскольку это сделает ядро ​​lk больше, чем предполагалось. Другими словами, это наименьший возможный размер ядра, предназначенный для выполнения только что описанного выше псевдокода.

Источник

Запуск ОС Андроид с SD-карты для устройств на процессоре Amlogic S912

В статье детально, с приведением исходного кода, описывается работа, проведенная по переносу и запуску с SD-карты программной прошивки с ОС Андроид для устройств на процессоре Amlogic S912.

Мне нравятся миниатюрные компьютеры, выполненные по технологии система на чипе (SOC). За крошечные размеры и небольшое энергопотребление по сравнению с персональными компьютерами. Используя такие устройства, можно решать широкий круг задач. На миникомпьютеры можно установить как ОС Android (так делает большинство производителей данных «игрушек»), так и различные дистрибутивы Linux или Chrome OS.

Моя текущая работа — это разработка приложений для Андроид. В этой работе очень желательны тесты на реальных устройствах на различных версиях системы. Есть у меня пара миникомпьютеров от компаний Rockchip и Amlogic, на которых я также выполняю свои тесты. Андроид, как операционная система, довольно динамично развивается и сейчас на рынке используются ее модификации от 4.4 до 10 версии. А на подходе уже Андроид 11-й версии.

Многие компании, занимающиеся разработкой телеприставок на базе Андроид, вынуждены иметь недолгий срок сопровождения свои детищ в виду быстрого развития как аппаратных, так и программных средств. Один из моих основных рабочих инструментов для тестов — это приставка KM8P на процессоре S912 с двумя гигабайтами ОЗУ и предустановленной операционной системой Андроид версии 7.1. Время идет, и за пару-тройку лет на рынке последовательно появились версии 8.1, 9.0 и 10.0 ОС Андроид.

Очень хотелось бы потестировать свое приложение под этими самыми версиями. Но что делать? Или нужно покупать зверушки на новых процессорах и версиях Андроид, или заниматься самостоятельной адаптацией новых версий Андроида на имеющихся устройствах. Первый путь легок и прост: заплатив не очень большую сумму, проблема легко решается. Но легких путей мы не ищем, поэтому выбираем второй путь. Второй путь гораздо труднее, но интереснее. К тому же, и сам чип S912 является отличным 8-ядерным процессором, не намного уступающим по производительности новейшим процессорам Amlogic на чипе S905x.

Итак, был выбран второй вариант, как более интересный и отвечающий моим потребностям. Встал вопрос: а каким путем пойти? Текущая версия Андроид 7.1 под капотом имеет ядро Linux 3.14.29 и ПЗУ NAND на чипе SK Hynix H27UCG8T2ETR, для которого Amlogic разработала собственный драйвер aml_nftl_dev.ko.

Все новейшие версии Андроид базируются на ядре 4.9. И желательно использовать именно его. Однако, политика Amlogic такова, что последние несколько лет SDK Android компания предоставляет только юридическим компаниям, занимающимся производством устройств на базе чипов Amlogic.

Тем не менее, на просторах github’а можно найти исходники ядра 4.9 на основе SDK Android от Amlogic 2017-18 года. Например, git-репозитарий компании Khadas. Однако, дело, в том, что драйвер aml_nftl_dev для версии ядра 4.9 отсутствует. Что делать? Адаптировать данный драйвер для ядра 4.9? Но помимо адаптации драйвера, придется также править так называемое дерево устройств ядра. Это трудный путь.

Множество устройств на процессоре S912 имеет более современное ПЗУ с контроллером EMMC. К счастью, для обладателей таких устройств совсем недавно (в июне-июле 2020 года) появились прошивки на Андроид 9, собранные энтузиастами (ознакомиться можно здесь и здесь). Я не мог воспользоваться данными прошивками в виду отсутствия на моем устройстве чипа EMMC. Однако, прекрасно понимал, что имея на приставке слот для SD-карточки, для работы с которым используется все тот же драйвер MMC, что и для работы с микросхемой EMMC, можно попытаться использовать SD-карту вместо ПЗУ.

К сожалению, ситуация осложнялась тем, что Amlogic изначально не предусмотрел старт системы с SD-карты. Тем не менее, кое-что было. Amlogic реализовала возможность обновления прошивок с SD-карты. Эта и другие возможности были достигнуты компанией Amlogic путем существенной доработки загрузчика u-boot под свои нужды. В частности, имеется возможность запустить ядро системы с FAT-раздела SD-карты. Итак, было принято решение выяснить, можно ли адаптировать драйвер MMC для возможности старта с SD-карты. Я погрузился в изучение исходного кода драйвера.

Изучая исходный код, я выяснил, во-первых, что драйвер для монтирования загрузочного раздела ограничивается работой только с микросхемой EMMC, а остальные устройства игнорирует. А такими устройствами как раз является SDMMC-слот и SDIO-порт. А почему бы не изменить код так, чтобы драйвер не пропускал устройство SDMMC, а продолжал бы с ним работать, как с EMMC?

Во-вторых, было определено, что разработчики Amlogic используют собственную структуру данных для хранения таблицы разделов диска и записывают ее по некоторому смещению на диске. Структура данных несложная, в ней хранится смещение, имя, размер и некоторые другие характеристики раздела. После определения типа устройства, драйвер читает таблицу разделов на диске и создает блочные устройства в системе согласно этой таблице.

Получается, что разрешив драйверу работать с SDMMC, как с EMMC и записав таблицу разделов по заранее известному адресу на SD-карте, я смогу, таким образом, сымитировать EMMC и загрузить систему с SD-карты! Подумал, почему бы не сделать утилиту, которая будет записывать таблицу разделов в нужном формате и при необходимости проверять ее корректность. Сказано — сделано. Тем более, что сделать ее было несложно, благо практически вся инфраструктура уже была описана в исходном коде драйвера. Исходный код утилиты размещен на github’е, репозиторий amlpt. Утилита создана в ОС Ubuntu. Но, думаю, при необходимости, ее не сложно будет перенести и на Windows.

Для начала нужно заполнить параметры таблицы разделов в файле mmcparts_a9.c, указав там имена, смещения, размеры и тип разделов. Для обычных разделов указывается тип — 0x1, для разделов типа cache — 0x2, а для разделов типа data — 0x4. За начальное смещение первого раздела я взял значение 0x2800000 (40Мб). Далее заполнил имена, размеры и типы разделов в структурах partitions согласно таблице разделов из дерева устройств. Для 9-го Андроида таких разделов насчиталось 17.

Заполнив данные в файле mmcparts_a9.c, создаем утилиту для записи таблицы разделов, запустив скрипт make_amlptwrt.sh. Данный скрипт создает исполняемый файл amlptwrt, с помощью которого можно сформировать двоичный файл mmc_parts.bin. Это и есть наша таблица разделов, которую читает драйвер MMC. Аналогично запускаем скрипт make_amlptrdr.sh для создания утилиты чтения таблицы разделов amlptrdr, с помощью которой мы можем проверить правильность заполнения данной таблицы. После запуска amlptrdr в консоли отобразится таблица разделов с именами, смещениями и размерами в мегабайтах. Примерно так:

Для того, чтобы драйвер MMC заработал с устройством SDMMC, я внес два небольших исправления в исходный код драйвера, в файл drivers/amlogic/mmc/emmc_partitions.c:

а) Во-первых, разрешаем драйверу работать с устройствами, отличными от EMMC. Для этого меняем функцию is_card_emmc следующим образом:

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

б) Определяем смещение, по которому будет читаться таблица разделов. Правку делаем в функции mmc_read_partition_tbl:

Если посмотрим на исходный код драйвера, то сумма констант MMC_BOOT_PARTITION_SIZE + MMC_BOOT_PARTITION_RESERVED равна 36 Мб. Следует отметить, что данные правки подходят для моего варианта, когда в устройстве отсутствует чип EMMC или в дереве устройств он отключен. Для других случаев придется придумывать более корректный вариант правок.

Итак, смещение, по которому будет записана таблица разделов на SD-карте равна 36 Мб. Для того, чтобы разместить нашу таблицу разделов, созданную утилитой amlptwrt, на SD-карте достаточно выполнить команду:

При этом предполагается, что /dev/sdb — это SD-карта.

Далее компилируем ядро, создаем boot.img с нулевым initrd и примерно такими параметрами ядра:

Вспомним, что u-boot от Amlogic умеет стартовать ядро Linux c SD-карты с раздела FAT. Создаем на SD-карте в самом начале раздел FAT размером 32 Мб. Этого вполне достаточно для размещения нашего boot.img и dtb.img. В дереве устройств dtb.img необходимо отключить EMMC, чтобы нашей SD-карте было присвоено имя /dev/mmcblk0. Или не отключать, но тогда нужно будет изменить в boot.img параметры ядра, чтобы ядро смогло успешно подключить системный раздел, который в данном случае будет иметь имя /dev/mmcblk0p14.
И, как заключительная часть марлезонского балета, осталось записать разделы Андроид-прошивки на SD-карту. Для этого распаковываем прошивку и записываем на SD-карту подходящие разделы согласно смещениям в таблице разделов:

Те разделы, которые отсутствуют в прошивке, я просто заполнял нулями. Некоторые разделы, такие как system или vendor и некоторые другие, могут являться sparse-разделами. Их предварительно необходимо преобразовать в обычные разделы:

С разделами cache и data нужно поступить немного по-другому. Смотрим нашу таблицу разделов, созданную утилитой amlptwrt, и с помощью программы fdisk создаем соответствующие разделы с нужными смещениями и размерами на SD-карте и форматируем их в файловую систему ext4:

После форматирования, с помощью той же утилиты fdisk, удаляем уже ненужные разделы /dev/sdb2 и /dev/sdb3.

Чтобы загрузчик u-boot распознал, что нужно загрузиться именно с SD-карты, размещаем в FAT-разделе файл aml_autoscript. Сам файл aml_autoscript может быть создан с помощью утилиты mkimage из простого текстового файла следующего содержания:

Вот и все, что необходимо для переноса прошивки с Андроид на борту на SD-карту.

Несколько прошивок, которые были сделаны по данному методу, опубликованы в соответствующей теме на форуме 4PDA. Если что-то непонятно, задавайте вопросы в комментариях. Чем смогу — помогу.

За сим позвольте откланяться и удачи всем в переносе прошивок!

Источник

Как загрузить телефон с флешки

как загрузить телефон с флешкиФорум программистов > Операционные системы > Мобильные ОС (Android, iOS, Windows Phone)
как загрузить телефон с флешки Загрузка ОС в телефоне с флешки
Регистрация

честно говоря имея планшет с экраном 10″(разрешение экрана 1024*768)+USB-host(для клавы) не вижу такой радости.

честно говоря прочитав все сообщение, не вижу что хотите то.

ТС хочет из урезанного по железу телефона полноценный ПК, по подобию моторолы атрикса.

Но накой в таком случае полноценное железо, в транспорте STM плату тыкать? Сомневаюсь. Конечно, губозакаталку можно раскатать. Сомнительное удовольствие.

Купи расперри, он дороже ардуины, но и возможности на порядки-порядки выше.

другой вариант: я еду на отдых и ноутбук брать нельзя, так как много потребляет энергии. Беру солнечную батарею, но хочу не читать что-то, а программировать на природе STM32F407 камень:D Так вот, если делать свое железо, то ок, но муторно, и его нужно тоже складывать в рюкзак. А телефон я и так с собой беру, осталось взять плату, кабель, и загорать-прошиватькак загрузить телефон с флешки

Мне нужен компилятор GCC для ARM и интерфейс с st-linkом

Источник

Прошивка ОС Андроид через флешку

Примерно 80% всех смартфонов и планшетов, доступных на рынке мобильных устройств, работают на операционной системе Android. Она имеет ряд преимуществ перед остальными своими конкурентами, среди которых относительно невысокая стоимость, благодаря чему Android устанавливается даже на наиболее дешёвые девайсы, а также возможность тонкой настройки системы. В отличие от владельцев iPhone и iPad, для замены прошивки необязательно обращаться в сервисный центр. Если внимательно изучить инструкцию, это можно сделать самостоятельно.

как загрузить телефон с флешки

Прошивка планшета или телефона через флешку доступна без ПК.

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

В этой статье мы рассмотрим два способа как это правильно сделать: используя пользовательский режим восстановления либо же через специализированное мобильное приложение.

Подготовительный этап

Загрузка необходимых файлов

Первым делом вам нужно загрузить необходимые для прошивки файлы. Какие именно?

Проследите, чтобы все файлы были расположены в корне флешки. Файлы программ обязательно должны быть формата APK, прошивки — ZIP, а рекавери — IMG.

Получение root-прав

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

как загрузить телефон с флешки

Установка стороннего рекавери

Следующим важным шагом является замена стандартного режима восстановления на пользовательский. Это можно сделать при помощи либо Flashify, либо ROM Manager. Рассмотрим особенности процесса для каждой из продуктов.

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

как загрузить телефон с флешки

После выполнения всех этих манипуляций вы полностью подготовили свой аппарат к прошивке.

Прошивка через TWRP Recovery

Чтобы в этом recovery сделать переход между пунктами меню, нажимайте экран, как в обычных предложениях, а, чтобы подтвердить операцию, нужно провести пальцем по полоске в нижней части окна.

Обратите внимание, что первый раз система может включаться порядка 10 минут.

Прошивка через CWM Recovery

При использовании этого recovery передвигаться между пунктами меню необходимо кнопками громкости, а подтверждать действие — клавишей включения.

как загрузить телефон с флешки

Прошивка через ROM Manager

Если вы пользовались этой программой для установки рекавери, с её же помощью можно и прошить планшет через флешку. Причём вам не нужно запоминать последовательность переходов между меню в рекавери, так как утилита имеет удобное графическое меню. Вам нужно буквально нажать несколько кнопок.

Заключение

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

Источник

Как подключить USB флешку к Android

Мы уже давно все делаем на смартфонах, смотрим видео, ищем информацию, играем и так далее, список, что можно делать, можно еще долго перечислять. В нашей статье рассмотрим — как подключить USB флешку к Андроид смартфону. Например, для то го чтобы не заполнять память телефона очередным фильмом, или фотографиями. Подключаете обычную флешку и ваши файлы доступны на смартфоне, согласитесь это удобно?!

Кстати в одной из наших статей мы рассказываем как подключить джойстик к Android смартфону. Возможно вам будет интересна данная тема.

Как подключить флешку к смартфону на Андроид

Для того чтобы подключить USB флешку, необходимо, чтобы смартфон имел операционную систему Android не ниже чем 4.0. Помимо этого необходим еще кабель USB On-The-Go (его еще называют OTG) или Card Reader (USB OTG Adapter).

USB On-The-GoCard Reader или OTG Adapter
как загрузить телефон с флешки как загрузить телефон с флешки

Купить такой переходник не составит труда, они продаются чуть ли не на каждом шагу в переходах, а Samsung в комплект к своим смартфонам, например, Galaxy S7 кладет такой USB OTG Adapter.

Как проверить будет ли смартфон работать с USB OTG

Для того чтобы проверить свой смартфон на совместимость с кабелем USB On-The-Go нужно установить приложение для проверки USB OTG Checker, скачать его вы можете ниже, перейдя с нашей страницы в Google Play.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *