9 заметок с тегом

технологии

Li-Ion аккумуляторы — Doing it wrong

Недавно я приобрел себе новый смартфон. Настроив его и немного поюзав, на нем остался заряд, и я подумал: «стоит ли разрядить его полностью для калибровки?». Тогда я и решил написать эту статью, в которой я не только отвечу на свой же вопрос, а еще и дам советы по эффективному и безопасному использованию Li-Ion аккумуляторов.

Собственно, сабж.

Литий-ионные (или, теперь уже чаще встречающиеся, литий-полимерные) аккумуляторы прочно вошли в нашу жизнь. Они есть в подавляющем большинстве устройств, имеющих автономное питание. Но этой технологии предшествовала другая — Ni-Cd или никель-кадмиевые аккумуляторы. Особенностью их являлся «эффект памяти», это когда аккумулятор надо полностью разряжать и полностью заряжать всегда, в противном случае он теряет емкость. Такие аккумуляторы на данный момент вымерли чуть более, чем полностью, однако, оставили за собой ряд мифов, крепко засевших в сознании многих людей. Так как же правильно обращаться с литиевыми элементами питания?

Когда аккумулятор новый

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

Повседневное использование

Литиевые аккумуляторы имеют ограниченное количество циклов заряда/разряда — около 1000. Так что, если есть возможность, подключайте зарядное устройство. Не нужно ждать, пока аккумулятор полностью разрядится, от этого он быстро потеряет емкость. А вот поддержание полного заряда не вредит аккумулятору.
Никогда не заряжайте аккумулятор на морозе. Разрядка на морозе не вредит аккумулятору, хоть и разрядится он быстрее. Перегрева тоже допускать нельзя — можно даже фейерверк устроить. Рабочие температуры аккумулятора: от —40°C до +50°C.

Как хранить?

Если вы собираетесь долго не использовать литиевый аккумулятор, его нужно зарядить до 60-70% (именно поэтому телефоны из коробки уже имеют заряд) и отключить от устройства. Не кладите аккумулятор в холодильник, это не банка пеппера, ему там делать нечего. Коррозия, возникающая в результате процессов микроконденсации снаружи и внутри аккумулятора убьют его.

Следование этим советам должно продлить срок службы ваших аккумуляторов. Пишите в комменты, насколько долго живут ваши аккумы.

20 марта   гайд   срыв покровов   технологии   электроника

Онлайн-радио на Liquidsoap и Icecast

На одном из эфиров на Iriscot Radio меня попросили рассказать о том, как сделать своё собственное онлайн-радио. Что ж, я и расскажу и покажу, как это делается.

Что понадобится?

На хосте:

  1. Браузер
  2. SSH-клиент
  3. FTP-клиент
  4. Текстовый редактор

На сервере (подойдет любой Linux-сервер)

  1. FTP-доступ (я использую vsftpd. Мануал по настройке есть на сайте Ubuntu)
  2. Права администратора

Итак, для начала немного теории. Сердцем онлайн-радио является Liquidsoap (a.k.a. «жидкое мыло»). Именно эта программа читает аудио-файлы, формирует из них поток и выдаёт в эфир. Icecast, в свою очередь, дополнительная прослойка, позволяющая смотреть статистику по потокам и блокировать слушателей. Мы рассмотрим конфигурации как с использованием Icecast, так и без него.

Приступим к настройке сервера.
Установим нужные пакеты:

sudo apt install liquidsoap icecast2

Нам предложат настроить пароли для Icecast. Отвечаем утвердительно и решительно.

Имя узла: оставляем localhost;
Пароль к источникам: ставим любой и запоминаем. Я поставил «pwned»;
Пароль к релею: ставим любой, запоминать необязательно;
Административный пароль: ставим удобный для себя пароль, чтобы заходить в веб-интерфейс.

Теперь надо подготовить папку для радио. Я создал папку «onlineradio» в домашней директории. Вы можете выбрать для неё любое место. Внутри папки также создана папка «music» для хранения музыки, которую мы будем крутить на радио. Эта папка может быть отдельно от радио, я создал всё в одном месте для удобства. Сразу загружаем туда нужную нам музыку.

Настало время конфига. Создаем файл «radio.conf» (имя может быть любым) и начинаем заполнять.

Логгирование

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

set("log.stdout", true)  # вывод в консоль 
set("log.level", 3)  # уровень логгирования - 3
set("log.file.path","radio.log")  # дополнительно вывод в файл

Кодировка

Устанавливаем кодировку тегов в UTF-8, чтобы избежать кракозябр.

set("tag.encodings",["UTF-8"])

Первоначальный поток

music = mksafe(audio_to_stereo(playlist(reload=1, reload_mode="rounds", mode="randomize", "./music/")))

Разложим по полочкам всё вышенаписанное.
playlist() — создаёт плейлист с музыкой из папки music, находящейся в одной папке с конфигом. reload_mode=«rounds» — обеспечивает равномерность треков при рандоме. mode=«randomize» — собственно, сам рандом (normal — по порядку). reload=1 — перезагружает плейлист каждую секунду;
audio_to_stereo() — конвертирует полученный поток в формат стерео;
mksafe() — делает поток infaillible, добавляя тишину, когда ничего не играет.

Кстати, пару слов о видах потоках. В Liquidsoap их два:
faillible — когда поток может оборваться в любой момент. Например, если это поток из студии во время прямого эфира — ведущий может в любой момент отключиться от эфира;
infaillible — когда поток не обрывается. Как в примере выше, это может быть проигрывание локальных ресурсов.

У нас получился поток music. Дальше мы можем работать с ним — навешивать дополнительные примочки или выводить в эфир.

Делаем приятно ушам

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

music = crossfade(start_next=2.,fade_out=3.,fade_in=1.,music)

start_next — длительность эффекта;
fade_out, fade_in — длительности затухания заканчивающегося и следующего треков соответственно.

ON AIR!

Как уже писалось, решить проблему вывода потока в эфир можно двумя способами. Рассмотрим простейший способ без Icecast, с использованием harbour.

output.harbor(%mp3.vbr,
port = 1337, encoding = "UTF-8",
mount = "radio-live", music)

%mp3.vbr — задаем кодирование в MP3 с переменным битрейтом;
port — можете выбрать любой;
encoding — как обычно, только UTF-8;
mount — точка монтирования. По сути являет собой путь на сервере, по которому будет доступен поток;
music — поток для вывода.

Запускаем сервер

cd ~/onlineradio
liquidsoap /path/to/radio.conf

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

Готово! Открываем в браузере адрес http://[адрес сервера]:[порт]/[точка монтирования] и слушаем результат.

Казалось бы, на этом можно остановиться, но мы-то заслуживаем большего...

Настройка Icecast

Внесем некоторые изменения в конфигурационный файл /etc/icecast2/icecast.xml.

sudo nano /etc/icecast2/icecast.xml

В самом начале можете прописать справочную информацию о сервере — место нахождения и почта админа:

<location>Earth</location>
    <admin>[email protected]</admin>

В разделе <authentication> можно поменять пароли, или подсмотреть их, если забыли.

И, самое главное здесь — <port> в <listen-socket>. Это порт, на котором будет работать Icecast. Пропишем там тоже 1337 для аутентичности.

Сохраняем и выходим из редактора. Чтобы изменения конфига вступили в силу, нужен перезапуск Icecast:

sudo service icecast2 restart

Теперь поменяем в основном конфиге (radio.conf) вывод на Icecast. Удаляем последнюю секцию, связанную с harbour и вместо неё пишем:

output.icecast(%mp3.vbr,
description="Iriscot Radio",
genre="Вичуха",
url="https://radio.iriscot.org/",
host="localhost", port=1337, password="pwned",
mount="radio-live", music)

Как видите, здесь уже больше простора: можно указать описание потока, жанры музыки, и ссылку на страницу, где можно послушать это всё. host — это адрес, на котором крутится Icecast. В данном случае он у нас на той же машине, что и жидкое мыло. port — то, что мы прописывали выше, password — пароль к источникам. Все остальное идентично harbor’у.

Запускаем радио, открываем в браузере тот же адрес, что и раньше. Играет? Отлично, но это не всё. В соседней вкладке открываем этот же адрес, но без точки монтирования (корневой) и сразу же попадаем в веб-интерфейс:

Здесь можно посмотреть, что сейчас играет на сервере и сколько людей его слушают. В разделе Administration (логин — admin, пароль — указали на этапе установки) можно посмотреть более детальную информацию о сервере, посмотреть список слушателей, переместить их, забанить, а также отключить источник. Штука довольно удобная и в основном используется как API для получения текущего трека средствами того же PHP, например.

Более удобный запуск радио

liquidsoap /path/to/radio.conf >> /dev/null &

Эта команда запускает радио в фоновом режиме, а все сообщения выводятся в мусорку /dev/null. В терминал при этом выведется номер процесса. Такую строку можно также вставить в скрипт автозагрузки.

Чтобы завершить процесс радио сначала ищем номер процесса (или вспоминаем число, которое нам дали при запуске):

ps aux | grep liquidsoap

Затем завершаем его:

kill [номер]

Что дальше?

У нас есть рабочее радио, можно теперь его красиво оформить, сверстав веб-плеер, провести рекламную кампанию и всё, вы успешны.

2019   Linux   гайд   радио   технологии

Proton — долгожданная фича от Valve

Помните времена, когда приходилось настраивать Wine (a.k.a. винишко), чтобы поиграть в свои любимые игрища, будучи на Линуксе? Я в своем блоге даже пару раз писал об этом. Так вот, это в прошлом.
Valve готовит Proton — технология, которая позволит играть в Windows-игры на Линуксе прямо через Стим. То есть, больше никаких эмуляторов, виртуальных машин и т. п. Все, как говорится, из-коробки.

Наша цель состоит в том, чтобы у пользователей Steam, использующих Linux, была возможность получить доступ ко множеству игр задним числом.
Valve, линк

Учитывая факт, что Valve активно поддерживает разработку Wine, Proton будет иметь преимущества по сравнению с обычным запуском через винишко, в том числе:

  • Поддержка DirectX 11 и 12, основанная на Vulkan — улучшит совместимость, уменьшит лаги;
  • Улучшена поддержка полного экрана: игры будут растягиваться до родного разрешения монитора, а не менять его;
  • Будут определяться все игровые контроллеры;
  • Увеличена производительность многопоточных игр по сравнению с ванильным винишком.

На данный момент технология поддерживает не все игры. Вот их список на данный момент:

  • Beat Saber
  • Bejeweled 2 Deluxe
  • Doki Doki Literature Club! (да! самая главная игра поддерживается!)
  • DOOM
  • DOOM II: Hell on Earth
  • DOOM VFR
  • Fallout Shelter
  • FATE
  • FINAL FANTASY VI
  • Geometry Dash
  • Google Earth VR
  • Into The Breach
  • Magic: The Gathering — Duels of the Planeswalkers 2012
  • Magic: The Gathering — Duels of the Planeswalkers 2013
  • Mount & Blade
  • Mount & Blade: With Fire & Sword
  • NieR: Automata
  • PAYDAY: The Heist
  • QUAKE
  • S.T.A.L.K.E.R.: Shadow of Chernobyl
  • Star Wars: Battlefront 2
  • Tekken 7
  • The Last Remnant
  • Tropico 4
  • Ultimate Doom
  • Warhammer® 40,000: Dawn of War® — Dark Crusade
  • Warhammer® 40,000: Dawn of War® — Soulstorm

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

После этого Стим перезагрузится и можно будет скачать игру из списка:

Что ж, ждем дальнейшего развития этой технологии, чтобы играть во все игры.

2018   Linux   игры   обзор   технологии

Пара лайфхаков по Windows 10

Понадобилось мне как-то поставить десятку на виртуальную машину. И заметил я одну интересную вещь... В этой статье будет сразу два лайфхака (вдруг кто не знал) на случай, если вы вдруг решите установить Windows 10. Нет, ну, в жизни всякое бывает, даже такое.
Лайфхак первый: десяткой можно пользоваться совершенно бесплатно. Да, просто скачиваете образ и ставите. Будут некоторые ограничения в плане персонализации и какие-то еще, не помню, но на работу программ это никак не влияет. И все это полностью легитимно.
А теперь второй лайфхак непосредственно о персонализации. В неактивированной системе вы не сможете ставить обои на рабочий стол, менять цвета и т. д.. Однако, есть одна багофича. Если перед установкой выдернуть сетевой кабель, то когда свежая система загрузится, она будет думать, что полностью активирована. Соответственно, мы просто кидаем на диск пак с нашей вайфу (на флешке или через Drag&Drop) и устанавливаем на фон. По вкусу настраиваем все остальное и втыкаем сеть. Винда очухается и поймет, что не активирована, но будет уже поздно...

Результат работы

Правда, теперь мы не можем поменять фон, но я могу предложить несколько путей решения. Я сам их не пробовал, потому что первый мне пришел в голову уже после подключения сети, а для второго нет желания приобретать программу.
Первый способ: создаем папку, кидаем туда картинки, в Персонализации ставим Слайд-шоу и показываем путь к папке. Можно будет потом в эту папку кидать другие картинки.
Второй способ: использовать Wallpaper Engine. Погуглите в стиме.
А вообще, ребята, используйте лучше Linux. Там намного проще можно поменять обои :)
Пишите в комментарии, получилось ли у вас обмануть систему.

2018   лайфхак   технологии   хак

RAMDisk — или когда накупил оперативки, а на SSD не хватило

Сегодня речь пойдет о так называемом RAMDisk, или использовании оперативной памяти компьютера как дискового хранилища.

Благодаря своему главному преимуществу, огромной скорости, оперативная память используется для хранения данных запущенных программ и операционной системы. Однако, остающуюся память можно использовать также для хранения файлов, и будет даже быстрее, чем на SSD.

Уже заинтригованы? Без лишних слов перейдем к созданию своего рамдиска. Работать, как обычно, будем из-под Linux, здесь рамдиск можно сделать двумя командами, для винды есть какие-то васянопрограммы, гуглите сами.

sudo mkdir -p /mnt/ramdisk
sudo mount  -t tmpfs -o size=1024m tmpfs /mnt/ramdisk

Первая команда создает папку для монтирования диска, вторая подключает туда наш рамдиск с файловой системой tmpfs и объемом 1 гигабайт (1024Мб). Для еще более удобного подключения рамдиска я написал Shell-скрипт.

#!/usr/bin/env

echo "RAMDisk creation script";
read -p "Enter maximum capacity of RAMDisk. For example, 1024m. : " rdsize;

sudo mkdir -p /mnt/ramdisk
sudo mount  -t tmpfs -o size=$rdsize tmpfs /mnt/ramdisk

Здесь вас спросят, какого объема вы хотели бы себе диск, потом это значение подставляется в команду, которую мы рассмотрели выше.

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

Для того, чтобы каждый раз вручную не включать рамдиск, можно добавить запись в /etc/fstab:

tmpfs       /mnt/ramdisk tmpfs   nodev,nosuid,noexec,nodiratime,size=1024M   0 0

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

Тем не менее, даже так есть много применений рамдиска. Вот несколько из них:

Папка Загрузки

Если вы скачиваете много файлов из Сети, а потом вас бесит, что в Загрузках полно файлов и ничего невозможно найти, назначьте эту папку на рамдиск. Файлы будут быстрее скачиваться, а тот факт, что они удаляются при перезагрузке станет мотивацией быстрее отсортировать скачанное. Также туда удобно скачивать новые эпизоды онгоингов :)

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

Виртуализация
Если у вас ОЧЕНЬ МНОГО памяти, можно разместить там диск виртуальной машины.

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

Рабочая папка для программ
Из рамдиска хорошо работают программы, которым важна скорость реакции диска, в том числе видеоигры, но здесь, опять же, надо ОЧЕНЬ МНОГО памяти.

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

dd if=/dev/zero of=/mnt/ramdisk/testspeed.img bs=1G count=1 conv=fdatasync

Вывод команды:

1073741824 байт (1,1 GB, 1,0 GiB) скопирован, 1,10704 s, 970 MB/s

Т. е. скорость RAMDisk примерно равна 1Гб/c, что в два раза больше, чем у SSD.

Пишите в комменты свой опыт и способы применения RAMDisk.

2018   Linux   защита информации   лайфхак   технологии   хак

Фингербокс своими руками

Если вы не знаете, что такое фингербокс — прочитайте сначала тут и тут.

А мы будем делать его своими руками.

Итак, для начала нужно определиться с размерами и материалами. Я выбрал куб 8x8x8 и сосновые доски. Далее, нам нужно рассчитать размеры, исходя из толщины досок и выпилить стенки.

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

Центр удобно находить с помощью диагоналей

Просверлили.

Правда, получилось немного не по центру :с

Оставляем боковые стенки склеиваться, а сами идем делать дизайн наклейки.

Склеивание начинаем по периметру

5 минут в фотошопе.

Наш стикер

Поскольку, размер одной стороны ящика 8x8, я буду печатать стикер размером 6x6, то есть с отступом 10 мм от края.

Напечатали

Вернемся к нашему фингербоксу и приклеим дно и крышку.

Намазываем льняным маслом, приклеиваем наклейку...

PROFIT!!!!

2016   diy   ламповость   технологии

Эксперименты с TFT

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

Точнее, один эксперимент — нагревание.
Результаты:

Время Что происходит
Меньше 3 сек Появляется черное пятно, восстанавливается
3-6 сек Кристаллы высыхают, желтое пятно, не восстанавливается
Больше 6 сек Плавится стекло матрицы
2016   diy   технологии   трэш   эксперимент

Теплая ламповость

Нашел у себя старый достаточно (1988 год) черно-белый телевизор «Фотон 234». Вопреки названию поста, он вовсе не ламповый, а на микросхемах.

Кстати, на нем еще распаян вход аналогового видео под Спектрум и есть переключатель с режима ТВ на режим видео.
К сожалению, самого Спектрума у меня нет...

2015   ламповость   обзор   технологии