Pull to refresh
38
0

Team Lead

Send message

Радиоприёмник из DVB стика за $8 — изучаем SDR с GNURadio

Reading time11 min
Views60K
Каждый день мы пользуемся множеством радио устройств. Однако редко понимаем, как они работают. Эпоха радиолюбителей фактически прошла, оставив в прошлом любителей спаять приёмник ДВ или СВ своими руками. Да и в методах кодирования техника ушла далеко вперёд. Мы часто слышим рассуждения о взломе умных домов на радио протоколах, о ненадёжности радио связи и т.д. Но многие ли из вас пробовали, например, подслушать Z-Wave сеть умного дома соседа и тем более поуправлять ей? Насколько велика эта угроза для вас?

К счастью в наши дни стали доступны очень удобные средства для работы с радио, а именно SDR.

SDR (Software Defined Radio) позволяет программно перестраивать приёмник и передатчик для работы на различных частотах от 20 до 2000 МГц, после чего произвести обработку сигнала на компьютере с помощью цифровых методов. Это существенно отличает SDR от аналоговых схем радиопрёмников и передатчиков, позволяя легко менять алгоритм обработки полученного сигнала.




Существует множество разных программ для обработки радио сигналов. Я изучил наиболее популярную из них GNURadio. Этот пакет позволяет строить процесс обработки из различных блоков, стыкуя их друг с другом в формате потоковой обработки (pipe). Каждый следующий блок принимает данный от одного или нескольких предыдущих, а вывод передаётся другим блокам.

Под катом я расскажу об основах SDR и GNURadio и о том, как за 8 баксов сделать приёмник AM/FM, китайской управляемой розетки, телеметрии со спутника и всего, что вздумается.

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

Критика статьи «Как писать на С в 2016 году»

Reading time12 min
Views30K

От переводчика:

Данная публикация является третьей и последней статьей цикла, стихийно возникшего после публикации перевода статьи "How to C in 2016" в блоге Inoventica Services. Тут критикуются некоторые изложенные в оригинале тезисы и окончательно формируется законченная "картина" мнений о поднимаемых автором первой публикации вопросах и методах написания кода на С. Наводку на англоязычный оригинал предоставил пользователь ImpureThought, за что ему отдельное спасибо. Со второй публикацией, наводку на текст которой дал, как я думаю, знакомый многим, пользователь CodeRush, можно ознакомиться здесь.

Мэтт (на сайте которого не указана фамилия автора, по крайней мере, насколько мне известно) опубликовал статью «Программирование на С в 2016 году», которая позже появилась на Reddit и Hacker News, именно на последнем ресурсе я ее и обнаружил.

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

Я не цитирую всю публикацию Мэтта. В частности, решил опустил некоторые пункты, с которыми согласен. Начнем.
Читать дальше →

Каверзные вопросы по C#

Reading time7 min
Views92K

Хочу представить вашему вниманию комические купле каверзные вопросы по C#.
Не удержался и решил запостить немного классики.
Некоторые вопросы в подборке кому-то могут показаться слишком простыми, но небольшой подвох в них, как правило, есть. Иногда можно и простым вопросом подловить. Будут полезны тем, кто изучает язык.
Всех, кому интересно, прошу под кат!
Пойти под кат!

Анонсирована ARM64 плата для разработчиков (и фана) за 40$ Odroid-C2 на Amlogic S905

Reading time5 min
Views23K

Добрый день, уважаемые читатели!


Странно, что пока еще не появилось короткой новости об этом, поэтому возьмусь написать. На прошлой неделе компания Hardkernel, знакомая в основном производством dev-плат на базе процессоров arm разных производителей (в основном Samsung Exynos и Amlogic, но была у них и плата полный аналог RPi более маленького формата, которой им крепко прижали выпуск), анонсировала выход новой платы Odroid-C2 на базе 64-битного процессора ARM S905 от Amlogic.

image

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

Советы о том, как писать на С в 2016 году

Reading time20 min
Views92K

Если бы язык С был оружием

От автора: Наброски для этой статьи появились еще в начале 2015 года, правда, до публикации материалов дело так и не дошло. Наконец, решив, что в ящике моего письменного стола от вышеупомянутого «черновика» не будет никакой пользы, представляю его вашему вниманию в исходном виде. Единственное, что изменилось в тексте – год, с 2015 на 2016.

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

Итак, статья ...


Первое правило программирования на С – не используйте его, если можно обойтись другими инструментами.

Когда найти альтернативный метод не удается, самое время вспомнить о современных заповедях программиста.
Читать дальше →

3d принтер на рельсах за «25 тысяч рублей» своими руками.Основные комплектующие

Reading time2 min
Views34K
После публикации поста меня попросили написать о комплектующих, что-же, пожалуйста :)
В кавычках, потому что курс рубля слабо поддается прогнозу, но я уложился в такую сумму с курсом доллара 55-60 рублей.
Все запчасти относятся только к данному корпусу, который можно заказать написав этому человеку или если вы решите собирать в другой корпус, то могут быть незначительные изменения, но в целом комплектующие совпадают.
Читать дальше →

Эволюция домашнего 3d принтеростроения

Reading time4 min
Views21K
На написание публикации меня подтолкнула переписка с одним товарищем из моего города. Суть ее заключается в следующем: он советует другому собрать принтер по его схеме, а не так давно я разобрал свой первый 3d принтер Mendel 90.

image

Это был мой первый принтер, и он познакомил меня с удивительным миром 3d-печати. Прошло уже больше года с того момента, но я нисколько не жалею о своем выборе, хоть и было достаточно неприятных моментов, истрачено много нервов от непонимания происходящего процесса и возникающих проблем. Данный принтер я купил у человека в моем городе за 43 тысячи рублей, по сравнению с тем, что предлагали на рынке официальные представители (на данный момент цены только ползут вверх) за 100 тысяч, а такую сумму я явно не собирался тратить на неизвестную игрушку, то данный принтер выглядел вполне себе нормально: имелся подогрев стола, печать с SD-карты, сопла разного калибра, простота конструкции… Но были и недостатки, из-за которых я спустя год его и разобрал. Со временем я стал понимать ущербность данной компоновки:

  1. Жестко закрепленный стол без возможности тонкой калибровки в виде пружинок и болтов, все было скручено жестко;
  2. Из предыдущего пункта вылазит следующий — требуется строго соблюдать горизонтальность оси Z, если будет разница в 200-300 микрон по высоте в разных углах всё, печать бесполезна, первый слой просто не ляжет нормально;
  3. Сама конструкция, которая подразумевает одновременное движения столика взад/вперед по оси Y и самой оси X, которая двигается в это же время перпендикулярно оси Y, со стороны выглядит волшебно, но на практике это приводит к ненужным колебаниям модели на столе, а если вы делаете что-то высокое и небольшое по размеру в основании, то велик риск того, что модель просто упадет (что иногда происходило);
  4. Медленная печать, нет смысла разгонять тяжелую каретку с экструдером и мотором свыше 60 мм/сек — будут артефакты и прочие прелести;
  5. Большие размеры при стандартной области печати 20х20х20 см, все размещено крайне не компактно;
  6. Далее список можно продолжить, но там будут уже относительно небольшие недостатки принтера...

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

Низкоуровневая оптимизация параллельных алгоритмов или SIMD в .NET

Reading time12 min
Views47K
image

В настоящее время огромное количество задач требует большой производительности систем. Бесконечно увеличивать количество транзисторов на кристалле процессора не позволяют физические ограничения. Геометрические размеры транзисторов нельзя физически уменьшать, так как при превышении возможно допустимых размеров начинают проявляться явления, которые не заметны при больших размерах активных элементов — начинают сильно сказываться квантовые размерные эффекты. Транзисторы начинают работать не как транзисторы.
А закон Мура здесь ни при чем. Это был и остается законом стоимости, а увеличение количества транзисторов на кристалле — это скорее следствие из закона. Таким образом, для того, чтобы увеличивать мощность компьютерных систем приходится искать другие способы. Это использование мультипроцессоров, мультикомпьютеров. Такой подход характеризуется большим количеством процессорных элементов, что приводит к независимому исполнение подзадач на каждом вычислительном устройстве.
Читать дальше

Советы по оптимизации Windows для использования SSD

Reading time5 min
Views62K
Привет, Geektimes! Многие до сих пор продолжают утверждать, что твердотельные накопители ненадежные, поскольку имеют ограниченное количество циклов перезаписи и больше подвержены износу, нежели HDD. Сейчас большинство мифов об этом уже развенчаны, однако некоторые советы по оптимизации Windows для работы с SSD могут оказаться полезными.

image

Многие трюки по оптимизации устарели с того момента, когда SSD были слишком дорогими и ограничивались максимальной емкостью в 128 ГБ. Тем более в погоне за более высокой производительностью накопителя вы можете затронуть другие процессы и в конечном итоге сделать только хуже. Поэтому очень важно знать, какие советы действительно окажутся полезными и будут работать, а какие в современных реалиях бестолковые и не имеют практического смысла.
Читать дальше →

Квест. Как получить государственную электронную цифровую подпись в Беларуси

Reading time2 min
Views7.1K
Сейчас многие государственные организации в Беларуси в срочном порядке оформляют на своих руководителей электронные цифровые подписи. Почему срочно? В том числе, потому что 01.01.2016 наступит срок исполнения Указа Президента Республики Беларусь №157, изданного 4 апреля 2013 года, в соответствии с которым все государственные организации, и даже все ОАО с долей собственности государства более 50% до 1 января 2016 должны подключить свои ведомственные электронные системы документооборота к межведомственной системе электронного документооборота, так называемой СМДО. Конечно, для начала эти системы электронного документооборота должны быть.
И наступит цифровой рай. Постепенно будет исчезать бумага из документооборота, и будет все ускоряться и автоматизироваться.
Но получить эту цифровую подпись — это небольшой такой квест. Вот об этом квесте здесь я напишу подробнее.
Итак, по пунктам.

1. Определить, кто в организации имеет право подписи.
Ясно, как день, что право подписи имеет сам руководитель (директор, генеральный директор). А вот его заместители имеют такое право по доверенности, либо по приказу о распределении обязанностей.Еще в этом списке может быть главбух. Значит, определяем круг лиц, которые будут получать ЭЦП путем опроса и изучения документов.

2. Подготовка пакета документов для каждого получающего ЭЦП
Тут начинать нужно немного с конца.
а) Сначала качаем с сайта Республиканского удостоверяющего центра (РУЦ) форму , которая является приложением к договору о получении открытого ключа. Это перечень сведений о потребителе.

б) Форму заполняем на каждого получающего ЭЦП.

в) Напрягаем юристов организации, чтобы выдали копии свидетельств о регистрации организации и доверенности на всех, кроме генерального директора. Форму доверенности менять нельзя, как бы юристам ни хотелось, она — железобетонная.

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

Использование putty и ssh ключей в Windows

Reading time2 min
Views297K
Так как приходиться уже не первый раз объяснять как это делается, решил оформить в виде How-To в картинках
Скачиваем архив putty отсюда putty.zip
1. Распаковываем и запускаем ssh-keygen

Выбираем ключ ssh-rsa и длину 2048 бит. Жмем «Generate».
Читать дальше →

Памятка пользователям ssh

Reading time13 min
Views1.6M
abstract: В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые не боятся шелла. В отличие от большинства руководств, которые кроме ключей и -L/D/R опций ничего не описывают, я попытался собрать все интересные фичи и удобства, которые с собой несёт ssh.

Предупреждение: пост очень объёмный, но для удобства использования я решил не резать его на части.

Оглавление:
  • управление ключами
  • копирование файлов через ssh
  • Проброс потоков ввода/вывода
  • Монтирование удалённой FS через ssh
  • Удалённое исполнение кода
  • Алиасы и опции для подключений в .ssh/config
  • Опции по-умолчанию
  • Проброс X-сервера
  • ssh в качестве socks-proxy
  • Проброс портов — прямой и обратный
  • Реверс-сокс-прокси
  • туннелирование L2/L3 трафика
  • Проброс агента авторизации
  • Туннелирование ssh через ssh сквозь недоверенный сервер (с большой вероятностью вы этого не знаете)
Читать дальше →

Подлый трюк. Microsoft переименовала шпионский сервис DiagTrack и снова запустила его у всех пользователей

Reading time2 min
Views154K
Две недели назад вышло большое обновление Threshold 2 для Windows 10. Прошедшего времени достаточно, чтобы досконально разобраться в том, что из себя представляет апдейт. В целом, его приняли положительно: хороших нововведений там явно больше, чем плохих.

Но всё-таки несколько ложек дёгтя Microsoft приготовила. Во-первых, операционная система зачем-то автоматически удаляет на отдельных компьютерах некоторые установленные программы. Судя по сообщениям на форумах, среди «пострадавших» — CPU-Z, speccy, 8gadgetpack, клиент Cisco VPN, драйверы SATA, SpyBot, RSAT, F5 VPN, HWMonitor и другие. После обновления Windows программы можно без проблем установить обратно.

Во-вторых, после обновления Windows 10 изменяет некоторые настройки по умолчанию обратно на сервисы Microsoft. Опять же, потом дают возможность вернуть всё обратно.

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

Алкомат

Reading time4 min
Views53K
Иван Арнольдович, покорнейше прошу, пива Шарикову не предлагать.
профессор Преображенский. «Собачье Сердце»

Как-то, путешествуя по просторам Интернет, увидел разработку Rumbot. Мне всегда нравилось чем-то управлять и в итоге пришла идея улучшить разработку и привнести в нее новые элементы. Получился проект, включающий в себя не только разработку железа и софта, но также и 3D-моделирование корпуса, экскурс в изготовление мебели, работа со звуком, некоторые хитрости работы барменов и многое другое, что сопутствовало разработке. Получился забавный аппарат для вечеринок с друзьями. Главное было пройти весь путь от идеи до разработки конечного продукта. Аппарат позволяет делать алкогольные коктейли для пяти человек. Назвал я его «Алкомат».



Подробности ниже. Много больших фото.
Читать дальше →

Беспроводный Lighting-Sensor с питанием от CR2450

Reading time6 min
Views26K
Сделать какой-нибудь беспроводный датчик, содержащий барометр, термометр, гигрометр или все в одном флаконе, с питанием от 220В — это не проблема. А вот запитать такое устройство от батареек или аккумуляторов уже интереснее. Ну а если это будет дисковая литиевая батарейка (таблетка) — вообще здорово, потому как устройство получится весьма компактным.
Единственным препятствием для использования «таблетки» является ее небольшая емкость. Но и среди «таблеток» есть вполне подходящие экземпляры, например CR2450, с заявленной емкостью 550-610 мАч.
Читать дальше →

Предельная производительность: C#

Reading time56 min
Views266K
performanceЯ поделюсь 30 практиками для достижения максимальной производительности приложений, которые этого требуют. Затем, я расскажу, как применил их для коммерческого продукта и добился небывалых результатов!
Приложение было написано на C# для платформы Windows, работающее с Microsoft SQL Server. Никаких профайлеров – содержание основывается на понимании работы различных технологий, поэтому многие топики пригодятся для других платформ и языков программирования.
Читать дальше →

Ethernet Library или почему в природе не существует серверов на Arduino

Reading time8 min
Views67K
image

В этой статье я опишу ситуацию с которой столкнулся во время разработки проекта Arduino Mega Server. Суть дела заключается в том, что существует такая библиотека Arduino Ethernet Library, написанная для поддержки сетевой платы Ethernet Shield на чипе W5100. Это стандартная плата и стандартная библиотека, которая многие годы поставляется в комплекте со средой разработки Arduino.

И эта библиотека является основой для всех проектов, использующих обмен информацией по проводной сети. Так вот, оказалось, что эта библиотека попросту профнепригодна. На ней в принципе невозможно построить нормальное сетевое взаимодействие. Можно только «баловаться» одиночными запросами и ответами. Ни о каком построении серверов на базе этой библиотеки речь не может идти. Почему?
Читать дальше →

Подальше от обыденной реальности: фантастические романы, которые стоит прочитать

Reading time4 min
Views142K
image

Фантастика как жанр заставляет читателей и писателей выйти за пределы разумного, дать волю своему воображению и отправиться в неизведанные миры. За это мы и любим этот жанр. RoboHunter этой осенью предлагает с головой погрузиться в мир научной фантастики.
Читать дальше →

Фильтр Калмана

Reading time10 min
Views455K


В интернете, в том числе и на хабре, можно найти много информации про фильтр Калмана. Но тяжело найти легкоперевариваемый вывод самих формул. Без вывода вся эта наука воспринимается как некое шаманство, формулы выглядят как безликий набор символов, а главное, многие простые утверждения, лежащие на поверхности теории, оказываются за пределами понимания. Целью этой статьи будет рассказать об этом фильтре на как можно более доступном языке.
Фильтр Калмана — это мощнейший инструмент фильтрации данных. Основной его принцип состоит в том, что при фильтрации используется информация о физике самого явления. Скажем, если вы фильтруете данные со спидометра машины, то инерционность машины дает вам право воспринимать слишком быстрые скачки скорости как ошибку измерения. Фильтр Калмана интересен тем, что в каком-то смысле, это самый лучший фильтр. Подробнее обсудим ниже, что конкретно означают слова «самый лучший». В конце статьи я покажу, что во многих случаях формулы можно до такой степени упростить, что от них почти ничего и не останется.
Читать дальше →

Знакомство с межпроцессным взаимодействием на Linux

Reading time11 min
Views224K
Межпроцессное взаимодействие (Inter-process communication (IPC)) — это набор методов для обмена данными между потоками процессов. Процессы могут быть запущены как на одном и том же компьютере, так и на разных, соединенных сетью. IPC бывают нескольких типов: «сигнал», «сокет», «семафор», «файл», «сообщение»…

В данной статье я хочу рассмотреть всего 3 типа IPC:
  1. именованный канал
  2. разделенная память
  3. семафор
Отступление: данная статья является учебной и расчитана на людей, только еще вступающих на путь системного программирования. Ее главный замысел — познакомиться с различными способами взаимодействия между процессами на POSIX-совместимой ОС.
Читать дальше →

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Registered
Activity