Допустим, у вас есть некое устройство, питаемое от внешнего аккумулятора. Для определенности скажем, от это LiIon или LiPo, часто используемые в квадракоптерах. При питании от внешнего источника всегда есть неплохие шансы сжечь устройство. Самый простой способ это сделать — перепутать полярность. Еще можно запитать устройство от блока питания и, случайно крутанув ручку, превысить допустимое напряжение. Давайте рассмотрим классическую схему, защищающую от таких ошибок при помощи компонентов общей стоимостью менее 5$.
Ранее в этом блоге многократно упоминались чипы производства компании FTDI, такие, как FT232RL и FT2232HL — смотри заметки раз, два и далее по ссылкам. В частности, было сказано, что этими чипами можно управлять с компьютера, что позволяет использовать их, например, в качестве программатора. При этом чипы FTDI поддерживают несколько режимов работы. Далее будет рассмотрен, пожалуй, самый простой режим под названием bitbang.
Хотите верьте, хотите нет, но это уже двадцатый по счету пост с рецензиями на прочитанные книги. Так получилось, что в последнее время в основном я читал про радио и обработку сигналов, но не только. Прочитать предыдущие мои рецензии можно здесь: девятнадцатый десяток, восемнадцатый десяток, семнадцатый десяток, шестнадцатый десяток, и далее по ссылкам.
Wiznet W5500 — это Ethernet-контроллер с интерфейсом SPI. Чип поддерживает стандарты 10baseT и 100baseT. Характерной особенностью контроллера является то, что он имеет аппаратную реализацию TCP/IPv4. Это позволяет существенно разгрузить работающий с ним микроконтроллер. Wiznet W5500 поддерживает до 8 сокетов и имеет суммарно 16 Кб памяти на прием и еще 16 Кб на передачу. Эта память может быть распределена между сокетами произвольным образом. Давайте же разберемся, как работать с этим чипом на примере МК STM32.
Хотелось бы продолжить серию постов на тему «что прикольного можно сделать с RTL-SDR». Поскольку в последний раз речь зашла об одном из протоколов любительского радио в лице APRS, давайте разовьем эту тему и научимся принимать CW (то есть, морзянку), SSB (общение голосом) и RTTY (текстовые чаты по радио). Заодно будет дан ответ на вопрос, будоражущий умы миллионов. А именно — живо ли любительское радио?
По моему печальному опыту, многие люди, включая даже тех, кто работает в сфере ИБ, считают, что атака «человек посередине» (Man in the Middle, MITM) является теоретической, и на практике не представляет реальной угрозы. Дескать, зачем сайту TLS, если это «всего лишь блог» (на WordPress, с админкой). Хотя, казалось бы, прикрутить Let’s Encrypt — дело пяти минут. Так или иначе, я подумал, что будет нелишним рассказать/напомнить о том, как легко делается MITM в современных реалиях. И для этого совсем не обязательно быть интернет-провайдером.
OpenOCD (Open On-Chip Debugger) — это открытое ПО для программирования и отладки различного железа. Допустим, к вашему компьютеру подключен один из программаторов, поддерживаемых проектом. OpenOCD позволяет сходить через программатор в некий микроконтроллер или FPGA, используя такой протокол, как JTAG или SWD. В качестве более конкретного примера, рассмотрим, как OpenOCD может быть использован для прошивки и отладки микроконтроллеров STM32.
Сегодня мне хотелось бы рассказать о небольшом устройстве, сделанном чисто для развлечения. Проект не мой, о нем сравнительно недавно рассказывалось в блоге Hackaday. Устройство представляет собой тестер Ethernet-кабелей. У меня как раз никогда не было такого тестера. Так почему бы не сделать его самому? Особенно учитывая, что почти все необходимые компоненты у меня уже были, и все равно валялись по коробкам без дела.
Беспроводные роутеры имеют несколько неприятных особенностей. Во-первых, они небезопасны, если только не разобраться с установкой OpenWrt. Во-вторых, со временем они перестают выпускаться, а значит, если ваш роутер сломается, вам придется разбираться с установкой OpenWrt на совершенно другой роутер. В-третьих, как правило, они довольно ограничены в ресурсах, а значит возложить на роутер какие-то дополнительные функции может быть проблематично. Между тем, абсолютно любой компьютер под управлением Linux может быть настроен в качестве полноценного Wi-Fi роутера, что решает проблемы безопасности, повторяемости и производительности. Для примера, рассмотрим создание беспроводного роутера на базе одноплатного компьютера Raspberry Pi.
Ранее в статье Учим iCEstick передавать видео-сигнал по VGA мы узнали, как работает VGA. Однако кое-что осталось за кадром. Когда я подключаю VGA-кабель к ноутбуку и говорю xrandr
, программа выводит список разрешений, поддерживаемых монитором. Как она получает эту информацию?