Комментарии 97
Супер! Спасибо, это круто! А я как раз подумывал железку для домашнего сервера покупать, а тут такая статья :)
Больше всего в таких проектах меня беспокоит вопрос батареи - не вздуется ли она от постоянного нахождения девайса на зарядке и не перестанет ли девайс включатся когда батарея неминуемо помрет опять же от постоянного нахождения на зарядке.
Но куча современных ноутов имеют зарядку слабее чем его потребление на полной производительности и соотв. батарея постоянно участвует в поддержании работы, что значительно сокращает срок её жизни, даже если ноут никогда не снимается с зарядки.
Теперь уже даже есть режим стационарной работы, аку заряжается до 80-85% и ждет разрядки до 50-55%
Это эффективно. Для смартфонов тоже рекомендуется заряжать до 80%.
Но вопрос не в продлении жизни батареи, а не вздуется ли она. Раньше у ноутов таких умных режимов частичной зарядки не было, при этом работали годами будучи значительное время подключенными к сети.
У меня вон до сих еще IBMовский ноут живет 15-летней давности. Кроме Debian 32 bit и не знаю, что поставить. Правда батрейку держит только из комнаты в комнату перейти, но не "взбухает" же.
Другое дело, что там и элементы питания были другие, нежели в смартфонах. И это не дает мне спокойно экстраполировать опыт ноутбуков на смартфоны (как старые десятилетней давности типа LG Nexus 4, так и более новые)
Там 18650, даже незнаю что надо сделать чтоб они "взбухли" :)
У меня до сих пор жив ноут, списанный в 2003 году - RoverBook, PIII 1000. Акк родной, но заряд держит минут 5. А у смартфонов всех лет через 5 аккумуляторы вздуваются, независимо от нахождения на зарядке или в ящике стола, но некоторые (увы, меньшинство) умеют работать просто от зарядки.
Хочу себе такой режим, как мне больше узнать о нём? Как называется? На Винде доступен, драйвер может какой-то специальный надо или где-то включается? Или такое только на уровне железа бывает и если производитель не дал, то и ничего не поделать? В общем, вопросов много.
Знаю два производителя у которых есть софт для ограничения заряда. Это ASUS Battery Health Charging и Lenovo Vantage (отдельная функция).
У Dell такой тоже есть. Включается в биосе, поддержка софта/драйверов нужна только если хотите без перезагрузки настройки менять, например командой:
/opt/dell/dcc/cctk --PrimaryBattChargeCfg=Custom:50-80
Не знаю, есть ли специальные софтины для такого. Но у некоторых новых буков уже есть по дефолту такая функция. У меня MSI Modern 14, в штатной утилите Creator Center есть возможность настроить несколько режимов заряда батареи: до 100%, до 80% и до 60%. У меня стоят две системы, винда и линукс. Здорово то, что если под виндой выставил режим заряда до 60%, то это работет и под линуксом, т.е. ноут заряжается до 60% и дальше работает от сети, пока батарея не разрядится до 49%, потом он снова заряжает её до 60%. Скорее всего это реализовано на уровне железа и управляется через специальные софтины от производителя.
У меня аккумуляторы от Nokia E51 и Redmi Note 3 вздувались спустя несколько месяцев при 100% на зарядке. Чтобы этого не было, надо ограничивать зарядку в пределах 55 - 60%. Сейчас на Redmi работает Battery Charge Limit и спустя 7 месяцев висения на проводе аккумулятор не вздулся и вполне живой.
У меня заряженный Oneplus One лежит уже довольно долго, отключал я его за три месяца только раз или два. Пока что батарея в порядке.
По моим наблюдениям, при достижении 100% заряда ядро переключает контроллер в режим "trickle-charge". Если CPU телефона начинает активно использоваться и батарея тратится, через некоторое время ядро переключает контроллер обратно в "fast-charge", и так пока заряд снова не станет 100%.
Отпишу здесь доп. комментарий, если начнутся проблемы
по опыту скажу: через год постоянной подзарядки ощутимо вздувается. через полтора - выпирает так что гнется задняя стенка.
мобила самсунг. работала как 4g модем нон-стоп 3 года. два раза менял батареи.
Motorola Droid 4 (батарея в принципе вздулась, но ей было точно больше 5 лет)
Xiaomi Redmi Note 8 (год полет нормальный, пока не разбирал)
Jellyfish Pro (прямо сейчас разобрал — батарея немного выпуклая)
Да ну к черту, как пользоваться этими смартфонами если они быстро разряжаются и их нельзя держать на зарядке. Если я ими пользуюсь реже чем раз в день и работаю дома. Ничтожества, а не телефоны.
Подтверждаю. У меня старый Самсунг в качестве дверного глазка. Изначально был постоянно подключен к зарядке. Через несколько месяцев батарея вздулась так, что выперло крышку. Проблема в том, что он у меня постоянно транслирует по rtsp во внутреннюю сеть по Wi-Fi и соответственно "кушает" много.
Я поступил немного по другому: самодельный БП, контролирующий уровень заряда телефона, чтобы при достижении 85% зарядки, БП отключался, а ниже 15% - включался. Почти год так работает, вроде пока нормально. Хотя во время зарядки греется заметно больше, чем при работе от аккума.Оно и понятно: аккум заряжается, а телефон в это время ещё и в режиме повышенного потребления (видео по rtsp транслирует).
Меня другое удивляет: все производимые телефоны не хотят работать без аккумулятора! Для меня это было открытием, когда я делал этот дверной глазок! Первым делом вытащил аккумулятор и думаю: "Щас я его запитаю от зарядки и дело в шляпе!". А фиг там :-(
Все аккумуляторы телефонные идут с контроллером на борту. Я даже пробовал выдрать его из старого аккума и "обмануть" телефон, подведя к контроллеру питание (около 3.6 В по-моему) . Но не "срослось". Телефон вроде загружается, а потом всё равно говорит, что очень низкий заряд и уходит в shutdown.
Так Вы к контактам для батареи подключались или к юсб? Надо питать через БП вместо батареи и чтоб БП хотя бы в импульсе 1-2 сек твердо отдавал 4А без проседания напряжения. И напряжение строго 3.6-3.7В, хотя от батареи работает и при расширеном диапазоне више и ниже этого напряжения.
К контактам батареи. Точнее к контактам контроллера, к которому подсоединяется сам аккум (Если аккуратно отодрать плашку с контактами от самого аккума, то там обнаружится небольной "контроллер"). К контроллеру вместо самой батареи было подведено напряжение в районе 3.6В с блока питания (5В, 3А) через понижающий DC преобразователь. Ну и сам контроллер контактами к телефону, имитирую тем самым как бы наличие батареи в нём самом.
Да, я потом где-то читал про ток в 4А, но уже не стал эксперементировать, т.к. к этому времени сделал по схеме, что описал выше. Может попробую потом. Спасибо за подсказку!
самодельный БП, контролирующий уровень заряда телефона, чтобы при достижении 85% зарядки, БП отключался, а ниже 15% — включался.4pda.to/forum/index.php?showtopic=997661
Все аккумуляторы телефонные идут с контроллером на борту. Я даже пробовал выдрать его из старого аккума и «обмануть» телефон, подведя к контроллеру питание (около 3.6 В по-моему).У меня получалось вместо аккума сразу ~4.0 В подавать и запустить телефон, но это была Xperia Ray 2011 года :)
Я старенький htc 500 запитал от сети. На место аккумулятора поставил mini360 с али, выставив на нем около 4 в. Это напряжение надо очень аккуратно подбирать -- от него зависит процент заряда, который покажет телефон при включении.
Но дальше началось самое интересное -- телефон считал "потраченные" ампер-часы и через несколько дней телефон "разряжался" и выключался. После включения все повторялось заново. Поэтому пришлось прокинуть проводок к юсб-порту для фиктивной зарядки. При этом еще оказалось, что батарея соединена с портом не минусовым, а плюсовым контактом.
У меня то же самое произошло с аккумулятором в китайской action камере, которая использовалась для видеонаблюдения за двором и работала 24x7 в течение года.
У меня Pixel так работал какое-то время airplay-приёмником, постоянно на зарядке. Через месяц заряд упал до каких-то совсем минимальным процентов (хотя зарядка была воткнута и устройство работало). Через какое-то время потребность в приёмнике отпала, и я перевёл телефон в обычный режим (лежит, редко пользуется, со старой симкой) -- и вроде никаких серьёзных последствий не обнаружено (я разрядил полностью телефон и зарядил его в выключенном состоянии).
У меня 4G-модем, подключенный к роутеру (фактически на постоянной зарядке), работает уже лет 5. Батарея модема, скорее всего, уже деградировала по емкости, но не вздулась и до сих пор способна 2-3 часа поддерживать работу модема.
Тут много комментариев, но почти все не учли, что телефон до того как его поставили в режим 'постоянно от сети" эксплуатировался. Так что к производителю и батарее добавьте еще фактор использования. Я бы еще добавил "бюджетность" телефона, которая не позволяет поставить хороший контроллер питания ...
Скорее соглашусь - все модели смартфонов, которые у меня "соглашались" работать без аккумулятора - довольно старые, без обновления до андроида 4.х
Возможно, в самом ядре впилили проверку наличия аккумулятора.
А на старте что у смартфона, что у ноута на несколько секунд как минимум ток потребления превышает возможности зарядки, а после первичной/полной загрузки частоты ЦП/ГП срезаются софтом до минимально необходимых(для экономии заряда очевидно). Вот техника и не стартует.
A ethernet подключение работать будет? Для серверного применения провод всегда лучше. Я пробовал ради интереса Ethernet на Андроиде, работает, но не на всех типах адаптеров USB Ethernet, и скорость не 1000, а где-то 350 мегабит в секунду максимум. Но на Андроиде телефон умеет только принимать интернет по проводу. А если захочется раздавать? Можно ли сделать из смартфона продвинутый роутер, например, с функциями поддержания резервного канала по мобильной сети, а основного через Ethernet, или даже SIP-GSM шлюза (принимает звонки на симку, и перенаправляет по SIP)?
Проблема в том, что USB-to-Ethernet переходник займёт единственный порт телефона, и заряжаться будет неоткуда.
Тут есть два варианта. Первый - держать телефон воткнутым в USB-порт роутера, а на роутере настроить форвардинг, как в пункте настройка сети. Тогда будет и заряд, и быстрая сеть. По крайней мере с ПК у меня это сработало.
Второй вариант - купить док-станцию c Power-Delivery например, такую. Там, по идее, есть и порт для Ethernet, и PD-порт, через который заряжается телефон. Но такую конфигурацию я проверить уже не могу, так как у OnePlus One только Micro-USB порт, а не Type-C.
Мне кажется что OTG кабель с питанием (по типу https://aliexpress.ru/item/32824528102.html) вполне должен решить проблему одновременной зарядки и подключения внешних устройств.
Выглядит как то, что надо. Поищу такой в городе, отпишусь по результатам эксперимента.
Проблема в том что сам телефон это не поддерживает, а кабель можно какой угодно сделать. Максимум чего вы этим добьетесь, устройство подключенное будет брать энергию не с телефона, а с зарядки. А телефон умеет или принимать заряд, или работать в режиме otg и отдавать.
Все самсунги прекрасно заряжаются и работают с девайсом.
Да те же пульты от DJI всегда работали как OTG девайс и как зарядник, проблем не было.
В списке поддержки работы функций совместимых телефонов для PostmarketOS почти у всех функция ОТГ работает.
а нельзя вместо батареи подключить источник питания например 4В ?
тогда и батарею мучать не надо и отг свободно.
основноая проблема мне кажется только в том что до батареи сложно добраться и сложные/мелкие коннекторы, не как раньше 2-3 контакта.
Да почему нельзя, вполне можно, но придется телефон курочить, можно даже я думаю поставить дешманскую платку с али и заряжать штатную батарейку в обход контроллера в телефоне. От батарейки к телефону вроде как и раньше идёт ровно 3 провода: "+", "-" и 3 подключен к терморезистору(аналоговый датчик температуры).
Соответственно, обмануть телефон и сделать "эмулятор" батарейки не так уж и сложно, измеряем тестером сопротивление между минусом и 3-м проводом, ставим туда обычный резистор на нужный номинал перемычкой и подаём питание, главное не перепутать полярность и не превысить напряжение ну и ток источник питание должен обеспечить необходимым, собственно все.
Другой вопрос в том что там все мелкое и лезть туда с дедушкины паяльником на 100+ ватт, точно не стоит. :)
На xiaomi mi2 с таким подключением только как OTG работал, зарядка не шла. На samsung должно работать
Эти кабели работают только там, где разработчики устройства прямо об этом позаботились.Что весьма не тривиально.
Второй вариант — купить док-станцию c Power-Delivery например, такую. Там, по идее, есть и порт для Ethernet, и PD-порт, через который заряжается телефонЯ подобной пользуюсь на Galaxy S9. Нужно только зарядное именно с Power Delivery. Всякие QuickCharge не катят.
Третий вариант — выкинуть аккум и питать телефон от стаба на ~3.7V.
Четвертый вариант — взять телефон с разъемом для док-станции (sony xperia 2013-2015 года), и заряжать через него
Это очень круто! Спасибо за статью!
Уже долго пылилась в черновиках, но когда в PmOS добавили докер из коробки, понял что пора публиковать, а то со временем и на статью-то не наберётся. Рад что вам понравилось.
Termux тоже в докер умеет: https://gist.github.com/oofnikj/e79aef095cd08756f7f26ed244355d62
И поставить все это можно на любой телефон, без регистрации и смс:)
Подскажите пожалуйста что за утилита запущена на первой фотографии ?
Из Raspberry Pi как раз недавно делали и всё сетовали на недостаток места.
В первую очередь большое спасибо за статью и популяризацию PostmarketOS! Но хочется заметить, что в статье пропущена вероятно самая большая боль. Установить Postmarket просто если ваше устройство поддерживается. Но! Если ваше устройство не поддерживается или его поддержка в зачаточном состоянии (привет драйвера в виде бинарных блобов из андроида) то поднять там хотя бы wi-fi будет делом нетривиальным. Просидел месяц в попытках заставить адекватно всё это работать на mi-2s но не вышло. С энергопотреблением там тоже какие-то проблемы. У меня телефон всё время был как печка, даже с выключенным экраном. До докера не дошел так как даже wi-fi не завел, а без этого смысла нет.
P.S. Установить мобильный линукс может быть сильно сложнее чем раче/генту, но необычный опыт гарантирован.
Вы совершенно правы, я упоминаю об этом в заключении. И, в таком случае, я бы хотел ещё раз это подчеркнуть. Я немного разбираюсь в железе и линуксе, но и в моём случае это заняло совершенно нетривиальное количество времени. На внесение изменений для поддержки моего устройства ушло порядка месяца, пришлось по крупицам собирать информацию из исходников downstream-ядра производителя, и ещё месяц я ждал ревью предложенных патчей в PostmarketOS.
Пробуйте PostmarketOS только если у вас хорошо поддерживаемый им телефон, или есть немалый запас свободного времени.
Отличное замечание по поводу wi-fi. По моему опыта запуска чистого линукса на смартфонах, наиболее универсальный путь получения начального ssh - установка usb контроллера в режим девайса и загрузка драйвера гаджета rndis. Таким образом можно сходу получить ssh на полумертвом линуксе, и далее, на реальном железе, запускать прочую периферию.
Нередко на старых китайских ноунеймах для создания wifi девайса требуется заслать андоковый ioctl в комбочип, и в статике эту штуку разреверсить нереально.
а через отг нельзя сделать сеть? лично я бы выбрал провод. и надежнее как то и эфир не забивается и со специфическими драйверами не надо лишний раз мучаться.
а для питания, вместо батареи подключить просто 4В.
С GPIO я знаю только один телефон, и это Pinephone (см. "six pogo pins" в описании), но вряд ли он у кого-то пылится на полке.
Любопытно, получилось бы у вас собрать что-то подобное по функциональности на старых телефонах?
Наверное, если бы я подключал через USB-OTG к ним что-то вроде Lime SDR, что-то и вышло бы, но это уже больше похоже на троллейбус из буханки.
Нет, если нужна именно функциональность GPIO, нужно смело брать RPi.
С GPIO зачастую вопрос решаемый. Все зависит от конкретного девайса, а если к нему удается нагуглить boardview - все становится в разы проще. Зачастую на платах имеются тестпойнты с различными интерфейсами вроде usb, uart или i2c. Также, например, физические кнопки типа vol+/- можно реюзать как GPIO in, а статус лед как GPIO out.
Это, конечно, не для всех подойдет, но мне например всегда интересно покопаться в плате и что-то такое захачить.
Подключить arduino или любой другой микроконтроллер и работать с ним через libusb.
Будущее Termux, например, вообще неясно
На сколько я могу судить по комментам в GP, многие пользователи все еще не понимают почему у них сбоит Termux. А Termux не может в описании указать, что они окончательно перешли с GP (политика GP не одобряет) на F-droid и там продолжают развивать проект на прежних щах, реализовав уже новые, недостающие функции, например, прокрутка в cli > 2k строк...
del
А что за клавиатура на фото?
Или вот вроде оно же на Али aliexpress.ru/item/33021242524.html
И что тут народ переживает по поводу вздутой АКБ ?
Если телефон больше не мобильный, то можно вобще родную батарею выкинуть и приделать внешнюю со своем зарядником. Припаять провода к плате и вывести за корпус...
От внешнего БП телефоны очень даже работают. Контроллер в АКБ это только у дорогих, навороченных. У обычных телефонов в АКБ только защита. Так что проблем не будет. А верность отображения емкость и уровень при таким применении не имеют значения.
А какую работу можно поручить такому серверу так, чтобы это было комфортно? На скриншоте - Nextcloud, который весьма прожорлив. Неужели с ним комфортно работать или это просто демонстрация возможностей?
Я почти не использую веб-интерфейс Nextcloud, чаще захожу через Android-приложение стянуть/загрузить пару файлов и синхронизирую контакты и календари через CardDav/CalDav. Вполне себе тянет.
Помимо этого делал на нём бэкапы через rsnapshot и различные ежедневные/еженедельные cron-задачи, пока это не переехало на отдельный NAS.
Чисто теоретически, может-ли андроид телефон работать без батареи? Потому что по-идее, если телефон обнаруживает, что у него заряд только от зарядного устройства, он может понизить частоту процессора и яркость экрана, и ему в принципе должно хватить тока от зарядки. Но все телефоны, на которых я это пробовал, ругались на то, что нет батареи и не включались.
Один из моих телефонов так умел, правда от более-менее серьезных нагрузок вырубался, но это прямо совсем старый и бюджетный телефон.
Возможно наличие батареи они как раз определяли по отсутствию сопротивления на том самом терморезисторе о котором я писал чуть выше и если его туда впиндюрить, вполне бы работали от зарядки, разумеется если зарядка вообще способна выдать нужный ток.
В статье удивила категоричность выбора между "выкинуть" и "сделать сервер". Реальный выбор - выкинуть или продать. Недавно я продал свой Galaxy A7 2017 за $70 - просто запостил объявление, телефону больше 3 лет, и его продолжат использовать по назначению. Сколько стоит удобный мини-компьютер? :)
Статью можно назвать "запускаем линукс на телефоне, когда ничего придумать не можем, а написать хочется".
Ну можно ведь еще подарить!
А по поводу статьи, так надо еще уточнять "на поддерживаемых моделях телефонов", иначе у читателя сложится неверное впечатление от заголовка, подумает вот он способ запустить линукс на любом телефоне, а на самом деле все не настолько радужно!
Загрузчик ерунда, тут наоборот найти телефон с намертво заблокированным еще постараться нужно, как правило производители дают возможность его разблокировать кто то проще кто то сложнее. Тут скорее вопрос будет ли периферия поддерживается, в том числе критически нужная даже для работы в режиме сервера?
Для информации: существует версия Ubuntu для смартфонов - Ubuntu Touch (https://ubuntu-touch.io/ru/) и список совместимых смартфонов практически совпадает с указанной выше ОС.
Интересная и познавательная статья, благодарю. Как раз лежит куча Moto G5S, есть на чем потестировать.
Благодарю. Давно валяется стопка старых аппаратов. Пора давать им вторую жизнь.
А как бы ещё подключить к телефону хранилище в виде массива дисков...
Делаем сервер из Android-телефона