Pull to refresh
149
-4
Max Filippov @jcmvbkbc

low level freak

Send message

SDR приемник GPS на микроконтроллере

Level of difficultyMedium
Reading time28 min
Views20K

В этой статье я расскажу о том, как я делал самодельный SDR GPS приемник на микроконтроллере. SDR в данном случае означает, что приемник не содержит готовых GPS-модулей или специализированных микросхем для обработки GPS сигналов - вся обработка "сырых" данных выполняется в реальном времени на микроконтроллере (STM32 или ESP32).
Зачем я это сделал — просто Just for fun, плюс - получение опыта.

Читать далее
Total votes 162: ↑161 and ↓1+160
Comments209

Разбираемся с Bluetooth Low Energy на примере превращения USB-клавиатуры в беспроводную

Level of difficultyMedium
Reading time16 min
Views15K


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

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

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

Данная статья ставит целью на примере разработки собственной Bluetooth-клавиатуры помочь разобраться в базовых понятиях Bluetooth, так как чтение скучных спецификаций и статей с введением в технологию даёт мало пользы.
Читать дальше →
Total votes 76: ↑74 and ↓2+72
Comments76

Фазовая автоподстройка частоты

Level of difficultyEasy
Reading time11 min
Views11K


Или по-английски — phase locked loop, PLL. В технической литературе нам часто встречаются эти словосочетания и аббревиатуры. Возможно, это название раньше вводило вас в заблуждение.

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

Сегодня мы соберем и испытаем микромощный ЧМ стерео радиопередатчик (модулятор) с ФАПЧ, а также изучим историю и основные принципы этого замечательного изобретения.
Читать дальше →
Total votes 45: ↑43 and ↓2+41
Comments13

Определяем направление на аэропорт с помощью RTL-SDR и GNU Radio

Reading time4 min
Views17K
Привет, Хабр!

В настоящее время существует не так уж много стандартов связи, которые с одной стороны, любопытны и интересны, с другой стороны, их описание не занимает 500 страниц в формате PDF. Одним из таких, несложных для декодирования, является сигнал VHF Omni-directional Radio Beacon (VOR), используемый в аэронавигации.


VOR Beacon (с) wikimedia.org

Для начала вопрос читателям — как сформировать сигнал так, чтобы с помощью ненаправленной приемной антенны можно было определять направление? Ответ под катом.
Читать дальше →
Total votes 70: ↑70 and ↓0+70
Comments49

Краткая история космических микропроцессоров, часть первая

Reading time29 min
Views40K
Десятого июля 1962 года с космодрома на мысе Канаверал стартовала ракета “Тор” с первым коммерческим телекоммуникационным спутником на борту. Telstar-1 стал зарей новой эры космонавтики, показавшей, что космос может приносить людям реальную пользу. Этот аппарат ждало большое будущее, но днем раньше в небе над атоллом Джонсон, расположенном в пустынной части Тихого океана, взорвалась атомная бомба Starfish Prime. Взрыв уничтожил три сотни уличных фонарей на расположенных в полутора тысячах километров Гавайях, а также создал огромное количество свободных электронов, подхваченных магнитным полем Земли в рукотворный радиационный пояс. Каждый раз, когда Telsat-1 проходил через этот пояс, продвинутая транзисторная начинка набирала дозу радиации, и уже к ноябрю 1962 года он перестал работать. С изучения последствий этого инцидента началась история защиты космической электроники от радиации.

С высотными ядерными взрывами, к счастью, довольно быстро завязали, но и без них работы достаточно, и требования по надежности и долговечности, предъявляемые к современным спутникам, становятся все амбициознее. Рассказать обо всем невозможно, но я постараюсь кратко осветить прошлое и настоящее космических микропроцессоров из разных стран. Почему именно микропроцессоров? Про них больше всего информации и они лучше понятны неспециалистам. Статья получилась длинной, поэтому я разбил ее на две части: ранняя история на примере США и Европы (под катом) и современная – на примере России (вот тут). Поехали!
Читать дальше →
Total votes 111: ↑111 and ↓0+111
Comments47

Что слышно в радиоэфире? Принимаем и декодируем наиболее интересные сигналы. Часть 2, УКВ

Reading time6 min
Views133K
Привет, Хабр.

В первой части были описаны некоторые сигналы, которые можно принять на длинных и коротких волнах. Не менее интересным является диапазон УКВ, на котором тоже можно найти кое-что интересное.


Как и в первой части, будут рассмотрены те сигналы, которые можно самостоятельно декодировать с помощью компьютера. Кому интересно, как это работает, продолжение под катом.
Читать дальше →
Total votes 48: ↑48 and ↓0+48
Comments27

Что слышно в радиоэфире? Принимаем и декодируем наиболее интересные сигналы

Reading time6 min
Views89K
Привет, Хабр.

На дворе уже 21й век, и казалось бы, передать данные можно в HD-качестве даже на Марс. Однако, до сих пор в радиоэфире работает немало интересных устройств и можно услышать немало интересных сигналов.


Все из них рассмотреть разумеется, нереально, попробуем выбрать самые интересные, те которые можно принять и декодировать самостоятельно с помощью компьютера. Для приема сигналов мы воспользуемся голландским онлайн-приемником WebSDR, декодером MultiPSK и программой Virtual Audio Cable.
Читать дальше →
Total votes 113: ↑111 and ↓2+109
Comments114

Хакаем CAN шину авто. Виртуальная панель приборов

Reading time14 min
Views213K


В первой статье «Хакаем CAN шину авто для голосового управления» я подключался непосредственно к CAN шине Comfort в двери своего авто и исследовал пролетающий траффик, это позволило определить команды управления стеклоподъемниками, центральным замком и др.

В этой статье я расскажу как собрать свою уникальную виртуальную или цифровую панель приборов и получить данные с любых датчиков в автомобилях группы VAG (Volkswagen, Audi, Seat, Skoda).

Мною был собран новый CAN сниффер и CAN шилд для Raspberry Pi на базе модуля MCP2515 TJA1050 Niren, полученные с их помощью данные я применил в разработке цифровой панели приборов с использованием 7″ дисплея для Raspberry Pi. Помимо простого отображения информации цифровая панель реагирует на кнопки подрулевого переключателя и другие события в машине.

В качестве фреймворка для рисования приборов отлично подошел Kivy для Python. Работает без Иксов и для вывода графики использует GL.

  1. CAN сниффер из Arduino Uno
  2. Подслушиваем запросы с помощью диагностической системы VAG-COM (VCDS)
  3. Разработка панели приборов на основе Raspberry Pi и 7″ дисплея
  4. Софт панели приборов на Python и Kivy (UI framework)
  5. Видео работы цифровой панели приборов на базе Raspberry Pi

Под катом полная реализация проекта, будет интересно!
Total votes 195: ↑192 and ↓3+189
Comments224

О простых вещах-сложно. Письмо химика 3D-печатнику. Растворители для пластмасс и защита от них

Reading time15 min
Views98K
DIY посвящается...

Одним из наиболее часто задаваемых вопросов в моей консультационной практике являются вопросы связанные с растворением/склейкой пластмасс с помощью всевозможных органических растворителей. В последнее время произошел настоящий всплеск интереса к химии высокомолекулярных соединений, связанный с появлением доступных 3D принтеров и необходимостью ориентироваться в «чернилах» для них (т.е. полимерных нитях-филаментах). Лишний раз убеждаюсь в том, что ни один, даже самый продвинутый «музей науки» с эффектным шоу не может так заставить IT-шника интересоваться пластмассами, как собственный 3D-принтер. Так что, читатель, если тебе хоть раз приходилось думать чем склеить пластмассу, которую не клеил default-ный суперклей, если мучали сомнения по поводу растворения поддержек свежеотпечатанной детали, да и просто интересно, чем можно отмыть клей от магазинного ценника на подарке — прошу под кат. Также настоятельно рекомендую страницу отправить в закладки не только тем, кто часто занимается склеиванием пластмасс, но и всем тем, кому часто приходится работать с различными растворителями/разбавителями. Делалось для себя — подарено Хабру!

Читать дальше →
Total votes 115: ↑114 and ↓1+113
Comments194

Несколько сетей для энтузиастов

Reading time29 min
Views30K
Несмотря на обилие материала в сети, в том числе на русском, в том числе на Хабре, в комментариях к публикациям периодически можно встретить удивление открывшимся фактам в обсуждении. Поэтому я решил написать короткую обзорную статью, перечислив в ней сети, в которых может участвовать любой желающий.

Фактически эта публикация краткий дайджест статей на Хабре о технических хобби, в основном, на грани IT, программирования и радиолюбительства.

И первым в списке станет популярный Народный мониторинг.


The Hitchhiker's Guide to the Habr
Total votes 56: ↑55 and ↓1+54
Comments65

Лайфхаки изготовления двухслойных плат (ЛУТ)

Reading time8 min
Views60K

Потребность делать железо периодически возникает у многих технарей. Иногда задача позволяет нафигачить всё проводами на макетке, а иногда, к сожалению, нужно нечто посерьёзнее. Вот и меня однажды настигла потребность делать печатные платы… Лазерно-утюжная технология кустарного изготовления плат по началу сильно отталкивает своей рандомностью (на чём печатать, как греть, с какой силой давить, как отдирать, и т.д.), но друзья поделились опытом, и оказалось, что это действительно не так уж сложно. ЛУТ бесспорно дешевле любого другого варианта, и (внезапно) вполне подходит для двухслойных плат.


Кому интересно посложнее, подороже и поточнее, можно делать фоторезистом, но наша методика (основным элементом которой является особая бумага) позволяет стабильно прорабатывать шины 0.3/0.3 мм, так что в нашем сообществе бытует мнение что тян фоторезисты не нужны.


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


Под катом я поделюсь детерминированной методикой изготовления двухслойных печатных плат по технологии ЛУТ с различными резервными схемами на случай косяков. От идеи до включения. Будем работать с KiCad, Inkscape, наждачкой, утюгом, персульфатом аммония и гравёром.


Total votes 50: ↑50 and ↓0+50
Comments152

Как собрать GSM телефон на базе SDR

Reading time13 min
Views38K


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

В отличие от проприетарного программного обеспечения проекты с открытым исходным кодом всегда получают больше внимания со стороны исследователей безопасности. Возможность заглянуть «под капот» и узнать, как работает тот или иной компонент программы, позволяет не только находить и исправлять всевозможные ошибки, но и убедиться в отсутствии так называемых «закладок» в коде. Кроме того, открытый исходный код позволяет начинающим разработчикам учиться на примере более опытных, используя результаты их работы в качестве опоры.
Total votes 37: ↑37 and ↓0+37
Comments7

Пишем и собираем приложения для Android в linux консоли

Reading time6 min
Views35K

image


В данной статье я покажу как можно собрать apk файл в Ubuntu используя лишь
утилиты командной строки.


Обычно для создания приложений для Adroid используется Android Studio. Но для сборки небольших программ можно обойтись командной строкой. Например, когда ресурсы компьютера ограничены и ваше приложение очень простое.


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

Читать дальше →
Total votes 29: ↑27 and ↓2+25
Comments18

Реверс-инжиниринг радиоуправляемого танка с помощью GNU Radio и HackRF

Reading time10 min
Views31K

Год назад наша CTF-команда на крупном международном соревновании RuCTF в Екатеринбурге в качестве одного из призов получила радиоуправляемый танк.


Зачем команде хакеров игрушечный радиоуправляемый танк? Чтобы его реверсить, конечно.


В статье я расскажу, как при помощи GNU Radio и HackRF One можно c нуля разобраться в беспроводном протоколе управления танком, как декодировать его пакеты и генерировать их программно, чтобы управлять танком с компьютера.


image

Читать дальше →
Total votes 60: ↑55 and ↓5+50
Comments21

Что думают ваши смартфоны про автомобильные USB-зарядки

Reading time5 min
Views85K
Наверняка многие подметили, что отдельные автомобильные зарядки заряжают смартфоны медленнее, чем сетевые ЗУ. Особенно это касается дешевых моделей. При этом в них можно ткнуть тестером с тарированной нагрузкой и убедиться, что свои положенные вольты и амперы они выдают исправно.



Причин тому две. Но сначала несколько слов о зарядке «литий-иона», логике работы контроллеров в смартфонах и вранье китайских производителей зарядок.
Читать дальше →
Total votes 59: ↑56 and ↓3+53
Comments140

Уходим из банковской системы. Как жить только на биткоины

Reading time5 min
Views57K


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

Несколько лет назад покупка или продажа BTC за фиат («настоящую» валюту вроде долларов, евро, рублей и т.д.) была вообще непростым делом, но сейчас времена изменились, всё стало гораздо проще.

Поэтому я решил жить только на биткоины, и вот как я пытаюсь реализовать этот план.
Читать дальше →
Total votes 32: ↑24 and ↓8+16
Comments319

Junior FPGA Design Engineer: как стать?

Reading time11 min
Views141K
Всем привет!

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

Разработка под FPGA (ПЛИС) — это не просто какой-то язык. Это очень объемная область, с огромным количеством подводных камней и нюансов.

В этой статье вы найдете:
  • список тем, которые должен освоить начинающий разработчик под FPGA
  • рекомендуемую литературу по каждой из тем
  • набор тестовых вопросов и лабораторных работ
  • классические ошибки новичков (и советы по исправлению)

Добро пожаловать под кат!
Читать дальше →
Total votes 44: ↑44 and ↓0+44
Comments58

[ В закладки ] Алгоритмы и структуры данных в ядре Linux, Chromium и не только

Reading time9 min
Views85K
Многие студенты, впервые сталкиваясь с описанием какой-нибудь хитроумной штуки, вроде алгоритма Кнута – Морриса – Пратта или красно-чёрных деревьев, тут же задаются вопросами: «К чему такие сложности? И это, кроме авторов учебников, кому-нибудь нужно?». Лучший способ доказать пользу алгоритмов – это примеры из жизни. Причём, в идеале – конкретные примеры применения широко известных алгоритмов в современных, повсеместно используемых, программных продуктах.



Посмотрим, что можно обнаружить в коде ядра Linux, браузера Chromium и ещё в некоторых проектах.
Читать дальше →
Total votes 158: ↑149 and ↓9+140
Comments15

Существует ли отечественный процессор Мультиклет?

Reading time8 min
Views45K
В этом посте я хочу рассказать о наших усилиях по использованию российского процессора с оригинальной архитектурой Мультиклет. Нам интересен перенос нашей ОСРВ Embox на данную платформу, так как это даст возможность использовать довольно большое количество приложений, которые у нас имеются — например, SIP-телефон, о котором мы уже рассказывали.

Речь пойдёт о проблемах, с которыми мы столкнулись в процессе переноса, и о том, как мы эти проблемы устраняли. Возможно, это будет интересно не только тем, кто планирует использовать данный процессор, но и тем, кому по каким-то причинам будет необходимо перейти со стандарта c99 и gcc на стандарт c89 и какой-нибудь несовместимый с gcc компилятор. Также в заключении я позволю себе добавить личные ощущения от взаимодействия с данной платформой.
Читать дальше →
Total votes 76: ↑74 and ↓2+72
Comments95

Магия тензорной алгебры: Часть 14 — Нестандартное введение в динамику твердого тела

Reading time10 min
Views13K

Содержание


  1. Что такое тензор и для чего он нужен?
  2. Векторные и тензорные операции. Ранги тензоров
  3. Криволинейные координаты
  4. Динамика точки в тензорном изложении
  5. Действия над тензорами и некоторые другие теоретические вопросы
  6. Кинематика свободного твердого тела. Природа угловой скорости
  7. Конечный поворот твердого тела. Свойства тензора поворота и способ его вычисления
  8. О свертках тензора Леви-Чивиты
  9. Вывод тензора угловой скорости через параметры конечного поворота. Применяем голову и Maxima
  10. Получаем вектор угловой скорости. Работаем над недочетами
  11. Ускорение точки тела при свободном движении. Угловое ускорение твердого тела
  12. Параметры Родрига-Гамильтона в кинематике твердого тела
  13. СКА Maxima в задачах преобразования тензорных выражений. Угловые скорость и ускорения в параметрах Родрига-Гамильтона
  14. Нестандартное введение в динамику твердого тела
  15. Движение несвободного твердого тела
  16. Свойства тензора инерции твердого тела
  17. Зарисовка о гайке Джанибекова
  18. Математическое моделирование эффекта Джанибекова


Введение


Динамика твердого тела — раздел механики, который в своё время задал четкий вектор развития этой науки. Это один из самых сложных разделов динамики, и задача интегрирования уравнения сферического движения для произвольного случая распределения массы тела не решена до сих пор.

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


Интегрирование уравнений движения этой детской игрушки — одна из до сих пор не решенных задач механики...

Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments0

Information

Rating
Does not participate
Location
Fremont, California, США
Registered
Activity