Программист Cortex-M (STM32) на постоянку

Добавлю и сюда: в молодую, динамично развивающуюся компанию™ нужен программист, умеющий в STM32 под RTOS и с GNU Toolchain.

Мы занимаемся разработкой железа, низкоуровневого софта и сетевых протоколов для современных радиочастотных сетей — то, что называют интернетом вещей: LoRa/LoRaWAN и 6LoWPAN.

Что надо точно:

  • достойный внимания опыт с Cortex-M, особенно с STM32. Кроме STM32, мы используем TI CC1310 и CC2650, но с ними сталкиваться пока особо не потребуется;
  • языки программирования — C/C++, в исключительных случаях ассемблер;
  • опыт работы с GNU ARM Embedded Toolchain (gcc) и Eclipse IDE — по некоторым причинам мы пользуемся именно ими;
  • опыт работы с RTOS — мы используем RIOT и Contiki;
  • опыт отладки законченных электронных устройств;
  • умение описать русским языком, как работает написанное на вышеупомянутых языках, для ваших коллег.

Что было бы неплохо:

  • опыт работы с современными беспроводными сетями — ZigBee, Bluetooth, LoRa или 6LoWPAN, в т.ч. понимание базовых принципов работы радиочастотных систем вообще;
  • опыт проектирования электронных устройств;
  • знание основной элементной базы;
  • опыт работы с ОС Linux, и в частности с git;
  • опыт разработки ПО высокого уровня (под Linux/Windows);
  • холодная голова, горячее сердце, чистые руки и горящие глаза.

Чего как у нас:

  • 60-80 в белую на руки;
  • офис на метро Волгоградский проспект — 12 минут пешком или бесплатная маршрутка;
  • график гибкий на столько, на сколько это не мешает работе;
  • паять-лудить-клепать самому не надо, для этого есть специально обученные люди.

И о плохом:

  • фрилансеров не надо
  • разовых работ не надо
  • если вы живёте в области, можно появляться в офисе не каждый день — но 3 раза в неделю всё-таки надо

Тестовое задание: на собеседовании рассказать мне смешную историю про необычный глюк в STM32, с которым вы столкнулись.

Писать на oleg@unwds.com

Семинары в Алматы

Были с Юрием Панчулом и Тимуром Палташевым в Университете менеджмента Алматы, делали цикл лекций про всякое — я про «Интернет вещей», Юрий с Тимуром про проектирование микропроцессорных ядер и программирование ПЛИС (строго говоря, они его ещё делают — он идёт пять дней, закончится в ближайшую пятницу).

1186319_original[1]

Много рассказывал о том, какие бывают у интернета вещей применения в народном хозяйстве, какие в нём есть протоколы связи (ибо интернет вещей — это в первую очередь про обеспечение связи), чем они друг от друга отличаются, как работают и какие ограничения имеют. Еле вырвался в аэропорт — не хотели отпускать :) Несмотря на месяц отпусков и на то, что лекции были платными и в общем даже не очень дешёвыми, аудитория набралась полная — и с хорошей подготовкой. Причём люди были разные — от вузовских преподавателей до людей из промышленности с конкретными задачами, которые они хотели бы научиться решать или, как минимум, понимать, как эти задачи решаются.

Слайды были вот такие: http://www.slideshare.net/olegart/unwired-devices.

Чуть-чуть видео ниже.

Читать далее

Как мы хакатон про Интернет вещей делали

Этим полукреслом мастер Гамбс начинает новую партию мебели…
И. Ильф, Е. Петров, «Двенадцать стульев»

Совсем недавно мы — Mail.Ru Group, Intel и Unwired Devices — делали хакатон по Интернету вещей. В принципе, это могло бы быть рядовым событием — хакатоны по IoT сейчас не делает только ленивый. Но мы решили придумать формат, который выгодно отличал бы нас от других подобных мероприятий.

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


Ничтожная часть выпитого за два дня кофе

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

Читать далее

Семинары и хакатоны по IoT: 6LoWPAN, LoRa, SAYMON, Tarantool

Недавно в фейсбуке жаловался на то, что вменяемых мероприятий по «интернету вещей» нет: если хакатон — то очередная ардуина, если конференция — то говорящие головы и щёки, надутые что горловой мешок у лягушки.

В общем, if you want something done right — do it yourself, решили мы с партнёрами и запланировали два мероприятия на ближайшее будущее (а потом запланируем ещё, если нам понравится):

  • 25 июля, Санкт-Петербург — семинар по IoT совместно с компанией «Россинно»
  • 30-31 июля, Москва — IoT-хакатон в офисе Mail.Ru Group совместно с компанией Intel

На обоих мероприятиях все желающие смогут лично познакомиться с современным IoT: с аппаратными платформами TI SimpleLink (6LoWPAN) и Semtech LoRa, программными платформы для сбора, обработки и визуализации данных (SCADA-система SAYMON в Питере и NoSQL СУБД Tarantool в Москве), пообщаться с разработчиками, обсудить текущие проблемы и тенденции и так далее.

Семинар 25 июля, Санкт-Петербург

Участники: Unwired Devices, «Россинно» и HP

780887ec2d5e486bb460b230a03c63e8[1]

Введение в «Интернет вещей» для тех, кто заинтересован в его практическом применении: существующие технологии, их общие черты и различия, области применения, живое знакомство как с модулями связи 6LoWPAN и LoRa (LoRaWAN), так и со SCADA-системой SAYMON, позволяющей строить системы диспетчеризации и инвентаризации IoT-систем в масштабе от офиса до целого города.

  • Протоколы связи для «Интернета вещей»: сравнение и примеры использования (Wi-Fi, BLE, ZigBee, Z-Wave, 6LoWPAN, Thread, Sigfox, LoRa)
  • Аппаратные платформы для «Интернета вещей» (TI, Semtech и другие)
  • Обзор технологий хранения больших данных
  • Современные технологии визуализации данных
  • Интеграция IoT в платформу SAYMON
  • Решение HP Vertica для работы с большими данными

Подробности и регистрация — на TimePad. Число свободных мест ограничено.

Хакатон 30-31 июля, Москва

Участники: Unwired Devices, Mail.Ru Group, Intel и CommIT Capital

ee67b9352e354a5f94493e90fb1a1d3b[1]

Хакатон, посвящённый применению СУБД Tarantool в IoT-проектах — и участникам для реализации их идей будет предоставлено всё необходимое: как модули сети 6LoWPAN с различными датчиками и модулями управления, так и микрокомпьютеры Intel Edison, позволяющие не без помощи Tarantool собирать с 6LoWPAN-сети данные, накапливать их и обрабатывать.

Tarantool — это боевая СУБД разработки Mail.Ru, которая а) масштабируется вниз до устройств с ARM или x86 и 128-256 МБ памяти, б) имеет встроенный сервер приложений с языком LUA и в) имеет средства надёжной репликации данных даже при плохом качестве канала связи. То есть, в общем, всё, что надо иметь на IoT-шлюзе: собрать данные с датчиков внутрь недорогой железки, немного их переварить и отправить «наверх». При этом, например, вопросы интеграции с MQTT API, предоставляемым IoT-шлюзом Unwired Devices, в Tarantool уже решены.

Про хакатон можно подробнее прочитать в блоге Mail.Ru Group. Регистрация — по ссылке.

Стартапы, страпоны, митапы, митболы

Бизнес с высоким использованием знаний и информации (KIBS) более продуктивен в более плотных городских агломерациях, утверждает в статье японской исследовательской сети RIETI экономист Масаюки Морикава. Исходя из его выводов, российские эксперименты по созданию инноградов и Кремниевых долин, по крайней мере частично, основывались на неверных представлениях об инновационных процессах — так, в пределах Токио и Осаки KIBS, как и R&D-подразделения, более продуктивен, нежели в выделенных инноградах

Японские учёные с блеском подтверждают то, о чём Капитан Очевидность догадывался уже довольно давно: город предоставляет ресурсы для бизнеса, а любое отделение от города создаёт дефицит этих ресурсов. И внезапно работа в условиях дефицита ресурсов оказывается менее эффективна.

Ресурсы, которые потребляет любой бизнес — это:

  1. Кадры. Банально — сотрудники. Чем дальше вы от мест, населённых потенциальными сотрудниками — тем труднее вам заманить их на работу. Для многих необходимость добираться в офис 2-2,5 часа в один конец просто неприемлема, для других она будет означать снижение общей эффективности: чем больше времени уходит на дорогу, тем меньше остаётся на работу и отдых (и если вы считаете, что ваши сотрудники просто будут меньше спать и меньше смотреть сериалы, а работать столько же, то вы очень наивный человек). Организация проживания в инновационном центре (если даже закрыть глаза на то, что в 9 из 10 таких центров никакого жилья нет) тоже проблему не решает — люди, обременённые семьёй, друзьями и собственным жильём почему-то обычно не рвутся по-быстрому переехать к чёрту на кулички. Крупные компании с офисами в замкадье решают проблему доступности запуском фирменного автобуса (или просто выбирают бизнес-центр, уже имеющий такие автобусы). Что сделало Сколково в прошлом году? Правильно, отменило фирменные автобусы.
  2. Клиенты. Любители Долины часто забывают, что Долина поднялась за счёт госконтрактов, преимущественно военных. Если же у вас мелкий или средний бизнес, ориентированный на обычный коммерческий сегмент, то вам придётся встречаться с потенциальными клиентами часто и регулярно. И большинство ваших клиентов будет находиться — правильно, в черте города. Значит, либо на все такие встречи придётся ездить вам, каждый раз тратя на дорогу в оба конца по несколько часов, либо часть клиентов вы потеряете, потому что на данном этапе вы для них недостаточно важны, чтобы бросить всё и потратить на встречу с вами большую часть дня. И нет, скайп вам не поможет — люди любят встречаться лично. И нет, наличие в Сколково представительства крупной компании никак не поможет вам в общении с ней — потому что как только общение выйдет за рамки «ути какой хорошенький стартапчик!» во что-то деловое, встречаться вы будете не с представительством, а с конкретными людьми, ведущими конкретные проекты — и сидящими в центральном офисе. Правильно, в черте города.
  3. Партнёры. Собственно, вся ваша логистика падёт жертвой той же транспортной доступности. Курьеры к вам будут ехать долго, дорого и печально. За заказами к субподрядчикам в половине случаев вы будете ездить сами. Продукцию вы также будете отвозить сами.

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

Казань, 6-7 июня

Мы тут заслали нашу презентацию на конкурс «Rusbase» и «Ростеха» — и прошли в финал.

2016-06-03_13-59-54

В связи с чем я буду в Казани с вечера 6 июня, а 7-го июня буду выступать от имени Unwired Devices на ЦИПРе. 7-го вечером улетаю обратно в Москву.

Unwired Devices LLC и «Интернет вещей»

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

С октября прошлого года — то есть фактически с момента основания — основным нашим направлением является разработка базовой программно-аппаратной платформы для «Интернета вещей», или, если говорить простым языком, разработка модулей связи для типичных для IoT протоколов (ячеистые сети 6LoWPAN, сети большого радиуса LoRa), прошивок для них и устройств на их базе.

Ячеистые сети с протоколом 6LoWPAN — это локальные сети сбора данных и управления (SCADA) с характерными размерами от единиц до сотен метров, с числом устройств от единиц до тысяч в одной сети и со скоростями до 250 кбит/с. На сетевом уровне технология более новая, чем широко известный ZigBee, и фактически представляет собой адаптацию IPv6 на специфический для подобных сетей MAC-уровень 802.15.4 (в ZigBee используется он же, кстати). Может работать на разных частотах — конкретно мы делаем модули на 2450 МГц и 868 МГц; у первых выше скорость и меньше задержки, у вторых — больше дальность и не требуется никакого лицензирования для разворачивания сети на улице. С внешним по отношению к ней миром сеть общается через шлюз в Wi-Fi/Ethernet/3G нашей же разработки, API — MQTT.

Модули мы делаем на чипах TI CC1310 и CC2650 — и, кажется, мы чуть ли не единственные, кто умеет готовить Contiki (единственную на данный момент RTOS, одновременно и поддерживающую эти чипы, и имеющую готовый стек 6LoWPAN) так, чтобы она стабильно на них работала и поддерживала всю основную периферию — АЦП, I²C, ШИМ, таймеры и так далее. Вы удивитесь, но «из которобки» не работает примерно ничто из перечисленного — включая 6LoWPAN, от которого устройства регулярно отваливаются. Впрочем, из-за того, что чем дальше в лес — тем наглее партизаны, в ближайшем будущем мы хотим с Contiki уехать навсегда, портировав на CC26xx/CC13xx RTOS, в ядре которой меньше ада.

Ах да, и ещё в каком-то обозримом будущем мы хотим открыть интернет-магазин, где будет представлено много-много разных плат расширения для наших модулей на этих чипах, а также веб-сервис по сборке прошивок для CC13xx/CC26xx с добавлением своих функций.

Стопка модулей — 48-вольтовых управляемых драйверов светодиодных ламп. Каждый умеет работать с двумя потолочными панелями по 40 Вт каждая. Стоимость офисного «цифрового потолка»  с такими модулями — в районе $25 на лампу (не считая самих ламп).

Стопка модулей — 48-вольтовых управляемых драйверов светодиодных ламп. Каждый умеет работать с двумя потолочными панелями по 40 Вт каждая. Стоимость офисного «цифрового потолка» с такими модулями — в районе $25 на лампу (не считая самих ламп).

Сети LoRa — это сети топологии «звезда», работающие в безлицензионном диапазоне 868 МГц с мощностью до 25 мВт и при этом обеспечивающие дальность до 3-5 км в городских условиях и до 30 км в прямой видимости в поле. Скорость — до 50 кбит/с. Физический уровень LoRa относится к широкополосным и является прямым конкурентом таким узкополосным технологиям, как Sigfox и «Стриж», обеспечивая при сравнимой дальности большую скорость, а главное — будучи значительно более открытым; хотя сама технология принадлежит компании Semtech, последняя свободно продаёт чипы с поддержкой LoRa, открыто распространяет примеры кода и никак не ограничивает их использование. На базе LoRa можно строить два типа сетей: локальные с одной базовой станцией и сотовые с множеством станций; для последних Semtech предлагает открытый протокол LoRaWAN. Хотя разговоры применительно к LoRa идут в основном о сотовых сетях масштаба города, на практике LoRa крайне удобна для проектов масштаба объекта (предприятия, посёлка, бизнес-центра, торгового центра) с одной БС.

Модуль LoRa слева, модуль 6LoWPAN — справа.

Модуль LoRa слева, модуль 6LoWPAN — справа.

Универсальный модуль LoRa у нас сейчас в разработке — железо готово, идёт написание прошивки. В отличие от большинства модулей на рынке, наш будет сразу включать в себя микроконтроллер уровня от Cortex-M0 до Cortex-M4F. Модуль механически и на 90 % электрически совместим с нашими модулями 6LoWPAN, что позволяет менять один на другой на уровне готового устройства.

Читать далее

Ищем таланты (2) — теперь без серьёзных требований

В прошлый раз мне в комментариях писали, что молодёжь-то нынче уже не та, где уж там умеющего хотя бы диодный мост правильно нарисовать найти. Пока вы это писали, мы нашли замечательного студента из казанского Университета Иннополис, на данный момент уже успешно утрамбовывающего RIOT OS в модули LoRa нашей разработки.

Но теперь нам нужен человек строго в московский офис и на задачи попроще:

  1. Ручной* монтаж единичных образцов и мелких партий наших электронных модулей
  2. Работа с заказами (комплектация, упаковка, отправка) и тому подобные вспомогательные вещи

* — ну, весьма относительно ручной. У нас, например, 90 % компонентов — SMD, и паять их паяльником глупо и неэффективно, давно есть технологии существенно более удобные.

Ни одно из этих двух дел даже близко не занимает пока 100 % времени (да и вряд ли будет: как только что-то вырастает до крупных масштабов, аутсорс и автоматизация становятся эффективнее), поэтому таки да, нам нужен человек, который совместит в себе менеджера интернет-магазина и монтажника РЭА.

Требования и пожелания:

  • Усидчивость и аккуратность
  • Навыки пайки
  • Базовые знания номенклатуры электронных компонентов, способность отличить резистор от конденсатора
  • Базовые знания об устройстве электроники, способность отличить блок питания от платы видеовыхода

Так как монтаж у нас относительно несложный (по крайней мере, по числу и разнообразности компонентов на один собираемый модуль), ассортимент компонентов тоже вполне разумного размера, то серьёзные навыки работы с электроникой не обязательны — достаточно базовых, остальному научим по ходу дела. Усидчивость и аккуратность намного важнее. Если будет желание учиться проектированию электроники, современных технологиям её монтажа или embedded-программированию — это можно устроить.

r2dcomr8wrq0[1]

У нас:

  • Офис с высокими потолками и окнами на юг, 10-15 минут пешком от метро Волгоградский проспект
  • Маленькая компания без излишнего бюрократического формализма
  • График гибкий настолько, насколько это не мешает работе
  • Оплата на 100 % в белую

Лайк, шер, ретвит.

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

Контакты: oleg@unwds.com, Skype olartamonov, телефон +7 (967) 215-20-43

UPD. ГОРШОЧЕК, НЕ ВАРИ.

Ищем таланты (лайк, шер, репост, ретвит)

Нам довольно-таки срочно нужен программист на микроконтроллеры. Для настоящего IoT. Не Arduino, не гербалайф, не Raspberry Pi. Задачи — от небольших по впиливанию конкретного специфического функционала (например, поддержки определённых периферийных устройств) до глобальной по развитию софта для нод и контроллеров сетей LoRa.

Вообще, я с интересом рассматриваю взаимовыгодное сотрудничество со студентами 3-5 курсов, имеющими опыт работы с электроникой и желающими предпринять некоторые усилия для расширения своих знаний и умений (помимо того, что эти усилия при условии успешного сотрудничества ещё и оплачиваться будут). То, что делаем мы — это диапазон от «умного офиса» до промышленных SCADA-систем, так что через год работы на 9 из 10 стартапов, занимающихся тем, что они понимают под «интернетом вещей», можно будет плевать свысока, даже не дослушав до конца их питч в лифте (ну или где они там сейчас выступают с гастролями).

d7bafecs-960

Что мы хотим (пункты, где не указано «зачёт автоматом», обязательны):

— опыт работы с микроконтроллерами на низком уровне (язык C), предпочтительно — ARM Cortex-M (те же STM32 подойдут). Arduino, Raspberry Pi и т.п. нерелевантны — этого вы у нас просто никогда не увидите, с этими игрушками к детям в песочницу.

— опыт работы с Contiki RTOS или Riot OS — зачёт автоматом

— опыт работы с IoT-сетями (Zigbee, Z-Wave, etc.) на низком уровне — зачёт автоматом

— понимание основ работы сетей, умение не путать MAC-уровень с уровнем приложений

— навыки работы с линуксом, в т.ч. разработки в нём и связанных с этим базовых концепций (Makefile и т.п.)

— навыки работы с электроникой (понимание различных программных и аппаратных интерфейсов, базовых вопросов их согласования и т.п.).

Пол, возраст и вероисповедание значения не имеют (если требуется молиться какому-либо из богов, это можно делать в соседней комнате).

Если есть желание подтягиваться также в разработке и изготовлении самой электроники — будет возможность участвовать. «Железо» у нас всё своё.

IMG_20160401_175718

Офис — пешком от метро Волгоградский проспект. График свободный, но иногда появляться надо.

Ну и как обычно: зарплата нищенская, условия рабские, зато весело.

oleg@unwds.com

Щелкаем реле правильно: коммутация мощных нагрузок

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

Управление мощными нагрузками — достаточно популярная тема среди людей, так или иначе касающихся автоматизации дома, причём в общем-то независимо от платформы: будь то Arduino, Rapsberry Pi, Unwired One или иная платформа, включать-выключать ей какой-нибудь обогреватель, котёл или канальный вентилятор рано или поздно приходится.

Традиционная дилемма здесь — чем, собственно, коммутировать. Как убедились многие на своём печальном опыте, китайские реле не обладают должной надёжностью — при коммутации мощной индуктивной нагрузки контакты сильно искрят, и в один прекрасный момент могут попросту залипнуть. Приходится ставить два реле — второе для подстраховки на размыкание.

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

12743913_1079257212124368_7632067464010217130_n[1]