Pull to refresh
44
0
Егор Марков @aectaan

HW Engineer

Send message

Rust, Telegram и GTFS против Петербургского транспорта

Level of difficultyEasy
Reading time12 min
Views6.6K

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

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

Читать далее
Total votes 30: ↑28 and ↓2+26
Comments7

Настройка VSCode для отладки китайского RISC-V SoC

Reading time8 min
Views7.1K

Я всей душой люблю малоизвестных производителей. Зачастую их продукты имеют фичи, недоступные у их более именитых конкурентов, по очень интересной цене (однажды меня очень выручило наличие встроенной в SoC полуамперной зарядки для аккумулятора и нескольких LDO, способных запитать всю периферию). Кроме того, сроки и условия поставки какого-нибудь Nanjing Qinheng Microelectronics могут приятно удивить разработчиков, привыкших за последние два ковидных года к конскому ценнику и 52+ неделям доставки на ST, TI, Nordic и прочие привычные вещи. Логистика становится особенно приятной, если массовое производство планируется в Китае и на площадке присутствует ваша китайская команда, способная разрулить возникающие проблемы. Да и доставка из Шеньчженя в Шеньчжень проще и предсказуемей, чем со склада глобального дистрибьютора и растаможка в России.

Погрузиться в дивный мир
Total votes 20: ↑17 and ↓3+14
Comments7

Bluetooth Low Energy: подробный гайд для начинающих. Bluetooth Mesh

Reading time16 min
Views20K

Внедрение стандарта BLE в 2010 году привело к быстрому росту вариантов использования устройств интернета вещей, таких как сенсоры, носимые устройства, портативные медицинские инструменты и прочие. В то же время, большим недостатком BLE, существующим с момента его внедрения, была невозможность организации ячеистых сетей, когда множество устройств могут посылать друг другу сообщения и ретранслировать их при необходимости на другие устройства в сети. Ситуация изменилась в июле 2017 года, когда Bluetooth SIG выпустила стандарт Bluetooth Mesh.

В этой главе мы рассмотрим наиболее важные основные понятия, чтобы облегчить начало вашего пути в изучении Bluetooth Mesh.

Читать далее
Total votes 17: ↑17 and ↓0+17
Comments0

Bluetooth Low Energy: подробный гайд для начинающих. Bluetooth 5 и безопасность

Reading time16 min
Views14K

Это четвертая часть перевода книги Мохаммада Афане “Intro to Bluetooth Low Energy”. Сегодня мы рассмотрим возможности, появившиеся в новой версии стандарта а также различные методы обеспечения безопасности соединения и пользовательских данных в BLE. Мы узнаем, за счет чего стало возможно четырехкратное увеличение дальности связи, двухкратное ускорение, и почему их нельзя получить одновременно.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments15

Bluetooth Low Energy: подробный гайд для начинающих. Соединения и сервисы

Reading time22 min
Views31K

Это третья часть перевода книги Мохаммада Афане “Intro to Bluetooth Low Energy”. Сегодня мы подробнее рассмотрим процесс подключения устройств и поговорим о сервисах.

Предыдущие части:
Про архитектуру BLE
Про типы устройств, адвертайзинг и сканирование

Благодаря сервисам происходит обмен как стандартными данными (уровень заряда батареи через Battery Service, текущее время устройства через Current Time Service и т.д.), так и кастомными, при помощи сервисов, созданных разработчиком устройства для удовлетворения специфических нужд. Например, для Atmotube Pro мы сделали два сервиса, в которые сгруппировали несколько характеристик для синхронизации истории, передачи данных о концентрации пыли и летучих органических соединений. 

Читать далее
Total votes 12: ↑12 and ↓0+12
Comments19

Bluetooth Low Energy: подробный гайд для начинающих. Часть 2

Reading time11 min
Views18K

Это вторая часть перевода книги Мохаммада Афане “Intro to Bluetooth Low Energy”. В представленных главах мы поговорим о типах устройств и об адвертайзинге, методе, с помощью которого периферийные устройства сообщают о своем присутствии. Первая часть – здесь.

Хочу сразу отметить, что адвертайзинг может использоваться не только для обнаружения устройств, но и для отправки кастомных данных. Например, в портативном мониторе качества воздуха Atmotube, пакеты адвертайзинга и ответа на сканирование используются для передачи сведений о текущих показаниях сенсоров. Это удобно для контроля показаний сенсоров на этапе производства и при сборе данных несколькими устройствами.

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments4

Bluetooth Low Energy: подробный гайд для начинающих

Reading time16 min
Views70K

Создание кастомного сервиса и тем более клиента Bluetooth Low Energy – прогулка по граблям с завязанными глазами. По крайне мере так было для меня 4 года назад, когда я только начинал работать с BLE-устройствами. Сейчас почти каждый мой проект предусматривает использование этого протокола, поэтому в свое время пришлось в нем долго и мучительно разбираться. 

Разложить все по полкам помогла книга Мохаммада Афане "Intro to Bluetooth Low Energy" и серия постов на Novel Bits. Лично для меня эта книга стала настоящим открытием. Изначально я делал ее перевод на русский для своих коллег, не имеющим опыт работы с BLE. С согласия автора (огромное ему спасибо) решил опубликовать свою работу здесь. Надеюсь, перевод окажется полезным.

Это первая часть перевода (всего их будет 5), которая рассказывает, что такое BLE, ее возможности и отличия от Bluetooth Classic и описывает архитектуру протокола.

Читать далее
Total votes 29: ↑29 and ↓0+29
Comments19

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Embedded Software Engineer, Hardware engineer
Lead