Pull to refresh
9
0
Руслан @solarplexus

User

Send message

Kodi перестал обновлять информацию о фильмах, потому что TMDB заблокировал доступ пользователям из России

Level of difficultyEasy
Reading time3 min
Views30K

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

The Movie Database (TMDB) - это популярная редактируемая пользователями база данных фильмов и сериалов, которая содержит описания большинства фильмов и обложки на русском языке.

При помощи своего парсера Kodi может идентифицировать фильм по названию файла, а затем скачать описание, обложку, актёров и многое другое с TMDB.

Блокировка доступа пользователям из России к TMDB произошла примерно в апреле 2022 года, но я разбираюсь с этим сейчас, потому что актуальным для меня стало только теперь, а конкретного решения проблемы коди не скачивает обложки, не работает скрепер я не нашёл.

Kodi c The Movie Database (TMDB) без VPN

Где хранятся ваши константы на микроконтроллере CortexM (на примере С++ IAR компилятора)

Reading time18 min
Views24K
Я обучаю своих студентов работе с микроконтроллером STM32F411RE, на борту которого имеется аж целых 512 кБайт ROM и 128 кБайт ОЗУ
Обычно на этом микроконтроллере в ROM память записывается программа, а в RAM изменяемые данные и очень часто нужно сделать так, чтобы константы лежали в ROM.
В микроконтроллере STM32F411RE, ROM память расположена по адресам с 0x08000000...0x0807FFFF, а RAM с 0x20000000...0x2001FFFF.

И если все настройки линкера правильные, студент рассчитывает, что вот в таком незамысловатом коде его константа лежит в ROM:

class WantToBeInROM
{
private:
  int i;
public:
  WantToBeInROM(int value): i(value) {}
  int Get() const
  {
    return i;
  }
};

const WantToBeInROM myConstInROM(10);

int main()
{  
  std::cout << &myConstInROM << std::endl ;
}

Вы тоже можете пробовать ответить на вопрос: где лежит константа myConstInROM в ROM или в RAM?

Если вы ответили на этот вопрос, что в ROM, поздравляю вас, на самом деле скорее всего вы не правы, константа в общем случае будет лежать в RAM и чтобы разобраться, как правильно и законно расположить ваши константы в ROM — добро пожаловать под кат.
Читать дальше →

Что Должно Быть в Каждом FirmWare Pепозитории

Reading time10 min
Views8.1K

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

То есть перечислить самые универсальные и переносимые программные компоненты (кирпичики), которые могут пригодиться в практически любой сборке.

Читать далее

Как самому за один вечер собрать минимальную ОС Linux из исходного кода

Level of difficultyMedium
Reading time11 min
Views106K
image

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

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

Такие разные устройства, а операционная система, работающая на них, собрана из одного и того же исходного кода! Это утверждение, конечно, верно лишь отчасти, так как фактически ядро обычно расширено и модифицировано разработчиками конкретных дистрибутивов Linux, а также разработчиками конкретных устройств, но общего исходного кода достаточно много.

Мне всегда хотелось собрать операционную систему Linux самому из исходного кода, но процесс этот всегда казался сложным и запутанным, да и многого я не понимал. Но всё-таки в определённый момент времени я накопил достаточное количество знаний, чтобы осуществить свою мечту. В этой статье я хочу рассказать вам, как собрать минимальную Linux из исходного кода и запустить её у себя на компьютере.
Читать дальше →

Отладка микроконтроллера через Type-C кабель

Reading time4 min
Views8.6K

Как избавиться от дополнительных разъемов на печатной плате IoT-устройств при наличии разъема Type-C?

Этим вопросом мы задались, когда в своих разработках начали переход с micro-USB на 24pin Type-C. В этой статье я постараюсь описать наш опыт использования Type-C, расскажу о распиновке разъемов Type-C для устройств с ESP32, STM32, Миландра, RISC-V или ARM, а также о том, что внутри кабеля Type-C и как его выбрать.

Читать далее

Электронная игра «лабиринт» на сервоприводах. Никаких arduino, только жесткая логика

Reading time4 min
Views9.6K
image

Устройство представляет собой площадку-лабиринт, балансирующую на сервоприводах. Цель игры: закатить шарик в центр диска. Когда-то разработал его для факультатива по электронике. Схема сделана из того, что в буквальном смысле было под рукой. А что еще нужно для детей? Немного поработать, а потом поиграть.

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

Преимущество схемы в том, что она полностью моделируется в ISIS Proteus. Это удобно для анализа принципа ее работы.
Читать дальше →

Ламповое звучание: о пользе второй гармоники

Reading time4 min
Views21K

Около десяти лет назад меня попросили о ремонте английского лампового усилителя - временами у него пропадал звук. Лампы оказались целы, видимых повреждений нет, все режимы в норме. Дефект обнаружился в переменном резисторе регулятора громкости и его замена решила проблему. К тому времени я уже был наслышан о феномене “теплого лампового” звучания и поэтому измерил все параметры усилителя по его спецификации. Представил работу владельцу усилителя и на некоторое время забыл об этом, так как у меня была основная задача улучшить качество звучания звуковой программы, получаемой по цифровому каналу.

Читать далее

VIM и редактирование файлов на удаленных серверах

Reading time3 min
Views15K

Статья о том, как настроить vim в одном месте, а все файлы, которые находятся на других серверах, подгружать и работать локально. Понятно, что можно поставить vim на каждый удаленный сервер, настроить и работать по ssh, но не всегда есть такая возможность, хотя бы потому, что все быстро устаревает и чтобы использовать супер-современный vim со всеми плагинами и наворотами порой надо заменить OS на удалённом хосте.

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

Читать далее

Простейшее профилирование памяти на STM32 и других микроконтроллерах

Reading time7 min
Views49K
«С опытом приходит стандартный, научный подход к вычислению правильного размера стека: взять случайное число и надеяться на лучшее»
— Jack Ganssle, «The Art of Designing Embedded Systems»


Привет, Хабр!

Как ни странно, но в абсолютном большинстве виденных мной «учебников для начинающих» по STM32 в частности и микроконтроллерам вообще нет, как правило, вообще ничего про такую вещь, как распределение памяти, размещение стека и, главное, недопущение переполнения памяти — в результате которого одна область перетирает другую и всё рушится, обычно с феерическими эффектами.

Отчасти это объясняется простотой учебных проектов, выполняемых при этом на отладочных платах с относительно жирными микроконтроллерами, на которых влететь в нехватку памяти, мигая светодиодом, довольно сложно — однако в последнее время даже у начинающих любителей мне всё чаще встречаются упоминания, например, контроллеров типа STM32F030F4P6, простых в монтаже, стоящих копейки, но и памяти имеющих единицы килобайт.

Такие контроллеры позволяют делать вполне себе серьёзные штуки (ну вот у нас, например, такая вполне себе годная измериловка сделана на STM32F042K6T6 с 6 КБ ОЗУ, от которых свободными остаются чуть больше 100 байт), но при обращении с памятью при работе с ними нужна определённая аккуратность.

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

Читать дальше →

Приручение черного дракона. Этичный хакинг с Kali Linux. Часть 4. Сканирование и типы сканирования. Погружение в nmap

Reading time5 min
Views45K

Приветствую тебя, дорогой читатель, в четвертой части серии статей «Приручение черного дракона. Этичный хакинг с Kali Linux».

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

Как ты вероятно заметил, большая часть инструментов применяемых нами в прошлый раз, это различные сканеры, которые ищут определенную информацию об интересующем нас объекте используя различные подходы. Условно весь процесс сканирования можно разделить на несколько типов (методов):

1) Сканирование сети в целях построения ее карты и понимания того, какие устройства кроме нашего в нем присутствуют (например, как мы это делали утилитой arp-scan).

2) Сканирование портов в целях обнаружения активных служб используемых на целевом устройстве (тут подойдет простое сканирование утилитой nmap, а если использовать дополнительные ключи, то можно получить гораздо больше информации о цели).

Читать далее

Оригами Оскар

Reading time7 min
Views4.6K

А вы знали, что в мире оригами появилась премия аналогичная Оскару для кино?

Каждый год начиная с 2021 восемь художников в различных жанрах оригами будут награждены за выдающиеся достижения.

Награды:

Читать далее

Где открыть ИП или ООО со счетом за границей, находясь в РФ?

Reading time5 min
Views21K

В 2022 году многие российские компании, работающие с зарубежными контрагентами переносят бизнес в другие юрисдикции. Наиболее удобными для граждан РФ, проживающих в РФ остаются страны бывшего соцлагеря, где помимо льготных режимов налогообложения и специальных условий для IT компаний есть возможность удаленного открытия и возможность отправлять и получать валюту в рублях. Обзор по всем странам, про которые уже много писал, все вместе в одном посте.

Читать далее

Полевой набор пентестера

Reading time7 min
Views34K

Сегодня расскажем о составе нашего типового полевого набора, который пентестеры берут с собой, выезжая для проведения анализа беспроводных сетей или проектов в формате Red Team.

Заглянуть внутрь гаджет-органайзера

Курс по Ruby+Rails. Часть 2. Объектно-ориентированное программирование

Reading time8 min
Views5.9K

В этой лекции мы рассмотрим объектно-ориентированный стиль в Ruby: поговорим об объектах, классах и модулях, а также вспомним три принципа объектно-ориентированного программирования.

Читать далее

YubiKey головного мозга. Как подружить Ubuntu 22.04.1 LTS c аппаратным ключом безопасности?

Reading time4 min
Views10K

Итак вы решили переехать на новенькую свежую убунту и у вас на столе лежит Юбик 5ой серии без которого вы не можете жить в современном мире.

И как у любого нормального технаря перед Вами сразу встают ровным строем несколько вопросов...

Читать далее

Аппаратный ключ шифрования за 3$ — возможно ли это?

Reading time10 min
Views71K

Итоговый результат — ключ размером с флешку

Повсеместное шифрование и, как следствие, обилие ключей заставляет задуматься об их надежном хранении. Хранение ключей на внешних устройствах, откуда они не могут быть скопированы, уже давно считается хорошей практикой. Я расскажу о том, как за 3$ и 2 часа сделать такой девайс.
Читать дальше →

Как защититься от сканирования портов и Shodan?

Reading time5 min
Views21K

Серверы в опасности!

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

Это может быть перебор портов с целью найти открытые от какой-то компании, которая позиционирует себя борцом за безопасность, но которая собирает статистику открытых портов на будущее по всем доступным IP (например Censys).

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

Ну и собственно целевые атаки, во время которых ваши серверы в первую очередь тестируются на наличие открытых портов, а затем производятся атаки на найденные сервисы. Это может быть подбор эксплоитов для использования известных дыр или пока неизвестных 0-day, как и обычный DDoS.

Во всех этих сценариях используется предварительный перебор открытых портов. Скорее всего применение nmap или подобных утилит в каких-то скриптах.
Как защитить сервер от сканирования портов без CloudFlare и подобных прослоек?

Как стать невидимым для Shodan, Censys?

Как правильно отвечать на вопрос “Какие у вас зарплатные ожидания?” на рынке США

Reading time6 min
Views69K

На первом интервью чаще всего рекрутер может задать вопрос о зарплатных ожиданиях кандидата — “What Are Your Salary Expectations?”. Я принимаю участие в найме продукт-менеджеров, дизайнеров и инженеров и хочу поделиться с вами своим опытом как правильно отвечать на этот вопрос применительно к рынку США.

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

Читать далее

18 отборных однострочных команд Linux

Reading time4 min
Views40K

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

Приступим!
Читать дальше →

Kincony KC868-Server: не контроллер, а просто атомная бомба. Часть 1

Reading time9 min
Views21K


И вот мы, наконец, добрались до вершины технического творчества компании Kincony — её флагманского контроллера 868-й серии KC868-Server. Когда я первый раз увидел этот контроллер, у меня просто не было слов — кажется, это воплощённая мечта любого «автоматизатора» и гика — чего там только нет: ESP32, Raspberry Pi и ARM Cortex M3 в одном флаконе и всё это снабжено кучей периферии, разъёмов, антенн и т. д.

Подобная платформа может стать основой для разработки любого, даже самого изощрённого проекта по автоматизации — такой концентрации возможностей на одной плате я просто не встречал ранее, одних только модулей Wi-Fi на KC868-Server 3 штуки, 2 проводных Ethernet, 2 MCU и плюс полноценный Linux-компьютер — как говорил один известный персонаж «да это просто праздник какой-то».

Я бы сказал, что Kincony KC868-Server — это не контроллер, а просто атомная бомба и, конечно, мы не сможем отказать себе в удовольствии поближе с ним познакомиться, разобрать его устройство и, возможно, даже «запилить» на нём несколько умопомрачительных IoT проектов.

Итак, начнём…
Читать дальше →

Information

Rating
Does not participate
Location
Томск, Томская обл., Россия
Date of birth
Registered
Activity