Как стать автором
Обновить

Контроллер умного дома (с Ethernet, WiFi, USB, блэкджеком и плюшками) за $20?

DIY или Сделай сам
Некоторое время назад к нам обратился один потенциальный заказчик со своей идеей проекта «умного дома». Мы заказчикам всегда рады, особенно если у них есть более-менее внятная идея и достаточно денег для ее воплощения (сразу скажу — этот заказчик пока что является идеалом сферического заказчика в вакууме, повезло нам с ним). Так что после пары встреч родилось общее описание проекта, и мы приступили к поиску вариантов технической реализации. Нужен был недорогой контроллер с поддержкой WiFi и USB, небольшим энергопотреблением и, главное, с достаточно открытой архитектурой, чтобы мы могли сделать на его базе собственное кастомизированное решение.

И тут очень удачно попалась нам на глаза статья. Ух ты, какие штуки бывают, оказывается! У меня самого в качестве передвижной точки доступа для поездок по Китаю (где до сих пор RJ-45 розетка в номере при отсутствии WiFi — довольно частое явление) давно уже используется мини-роутер TP-LINK TL-WR702N, купленный рублей за 700, но тот факт, что внутри живет вполне приличный одноплатный компьютер с кучей дополнительных возможностей, стал для меня приятным сюрпризом. А поскольку мы по своему основному бизнесу плотно завязаны с Китаем (и китайскими производителями электроники в частности), стало нам интересно — во сколько же нам обойдется собственная плата на базе SoC AR9331, если целое законченное решение в корпусе, в коробке, с проводами и блоком питания, стоит в России 700р (на то время — $22) в рознице?

image
И мы приступили к исследованиям...
Всего голосов 53: ↑53 и ↓0 +53
Просмотры 114K
Комментарии 146

Маленький сетевой одноплатный компьютер за 20 USD

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

Полгода разработки, два месяца ожидания (пока изготовят первых 20 экземпляров и доставят в Москву), неделя непрерывного секса (чтобы запустить)… И вот оно — наше маленькое чудо!

image

Это не «самый маленький в мире компьютер». И не самый дешевый. И уж конечно не самый мощный. Но он достаточно маленький, довольно дешевый и не такой уж медленный. Чип Qualcom Atheros AR9331, 64 Мб DDR2, 16 Мб NOR flash. WiFi, один гигабитный Ethernet и до пяти 100мбитных, USB, UART, SPI, I2S, 20+ GPIO, OpenWrt на борту — что еще нужно для счастья? Зажечь в первый раз светодиод по команде со смартфона — ни к этому ли мы все стремимся?

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

Первые подробности — под катом.
Читать дальше →
Всего голосов 72: ↑71 и ↓1 +70
Просмотры 40K
Комментарии 174

Недорогие, маленькие, сетевые компьютеры — небольшой обзор

Сетевые технологии *
«Чтоб ты жил в интересные времена!» — якобы старинное китайское проклятие.
Да, нам с вами повезло или «повезло» жить в действительно интересные времена (вариант — «в эпоху перемен»). Возможно, это на самом деле проклятие, особенно с точки зрения мифических древних китайцев. Однако факт остается фактом: то, что еще пара десятков лет назад казалось невозможным, сейчас доступно практически каждому. Особенно это заметно в нашей отрасли — информационные технологии и цифровая электроника развиваются просто какими-то совершенно фантастическими темпами. Функциональные возможности, быстродействие, миниатюрность и (относительная) дешевизна современных цифровых решений поражает воображение.
Еще совсем недавно сетевой компьютер размером меньше кредитки и стоимостью в несколько сотен рублей, пригодный для создания на его базе интересных самостоятельных проектов энтузиастами-одиночками с относительно невысоким уровнем знаний в области электроники и программирования, казался весьма отдаленной перспективой. И вот уже мы можем смело выбирать из десятка (как минимум) альтернатив! Давайте посмотрим, что сейчас можно приобрести буквально за несколько десятков долларов, чтобы построить вокруг этого нечто впечатляющее и даже, может быть, полезное.
Итак, поехали.
Всего голосов 65: ↑60 и ↓5 +55
Просмотры 95K
Комментарии 124

Остался один шаг до Кикстартера — есть ли шансы у проекта?

Я пиарюсь
Вот уже 9 месяцев мы разрабатываем свой проект — миниатюрный сетевой компьютер Black Swift. Пора рожать, так сказать.

image

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

Всех, кому интересна наша история, прошу читать и комментировать.
Читать дальше →
Всего голосов 63: ↑57 и ↓6 +51
Просмотры 14K
Комментарии 138

Black Swift: зачем мы его сделали

Блог компании Black Swift
Как уважаемые хабровчане знают, вот уже почти год мы разрабатываем маленький компьютер (примерно с SD-карточку), работающий под OpenWRT, со встроенным Wi-Fi, USB, Ethernet, азартными играми и доступными женщинами. Дмитрий dzhe уже несколько раз писал про него — и, в общем, с каждым разом собирал в комментариях один и тот же вопрос: а зачем вы вообще его делаете? Ну ведь есть же Raspberry Pi, стоит он столько же, есть VoCore, Carambola, Edison, в конце концов, — зачем нужен ещё один «нанокомпьютер»?

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



Если коротко: хотя изначально проект начинался как «а не сделать ли нам нанокомпьютер как у китайцев, но для себя и подешевле?», мотивация довольно быстро сместилась — мы поняли, что можем сделать его если не дешевле, то лучше и удобнее, и не только для себя.

Читать дальше →
Всего голосов 122: ↑120 и ↓2 +118
Просмотры 124K
Комментарии 228

Елочка, зажгись! Часть 1: гирлянда и сборка ПО для OpenWRT

Блог компании Black Swift
Привет, Хабр!

28 декабря, за четыре дня до Нового года, у меня возникла проблема: я осознал, что имеющие в продаже новогодние гирлянды — редкостная китайская дрянь. Дело в том, что у меня дома маленькая искусственная ёлка, а также маленький ребёнок — поэтому я не хотел, чтобы на ёлке в каком-либо виде присутствовали 220 В, а также не нуждался в гирляндах на несколько сотен лампочек. И быстро обнаружил, что после вычёркивания всего, подпадающего под эти пункты, в окрестных магазинах остаются исключительно товары категории «обнять и плакать».

Поэтому мне пришлось сделать гирлянду самому. И у этой гирлянды есть IP-адрес.



Впрочем, если говорить серьёзно, я преследовал две цели: не только сделать гирлянду себе, но и показать вам, как на нашем нанокомпьютере Black Swift можно делать различные проекты, от наколенных до вполне себе профессиональных — чтобы показать вам, что это довольно просто и быстро. С попутным обсуждением разных интересных моментов.

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

Так как это — первая статья по теме, я разобью её на три части, чтобы не получалась огромная простыня:
  1. Гирлянда, подключение Black Swift и среда сборки под OpenWRT на C/C++
  2. Софт на C, работа с GPIO и программная ШИМ
  3. Веб-интерфейс и приложение для Android



В реальном времени все три части легко укладываются в рамки «проекта выходного дня».
Читать дальше →
Всего голосов 39: ↑39 и ↓0 +39
Просмотры 34K
Комментарии 44

Елочка, зажгись! Часть 2: софт на C, работа с GPIO и программная ШИМ

Блог компании Black Swift
Привет, Хабр!

В прошлый раз я написал о том, как можно несложно подключить наш нанокомпьютер к чему-нибудь исполнительному (ёлочной гирлянде, например) и развернуть среду для сборки под него программ на C/C++. Сегодня — вторая часть, о том, как написать программу на C для OpenWRT и, соответственно, Black Swift.

  1. Гирлянда, подключение Black Swift и среда сборки под OpenWRT на C/C++
  2. Управляющая программа на C и прямая и быстрая работа с GPIO
  3. Веб-интерфейс и приложение для Android


Отмечу два момента. Во-первых, я не буду рассказывать о роли функции main и директивы #include — как я говорил раньше, сейчас я пишу в расчёте на людей, в принципе знакомых с программированием, но не знающих, с какой стороны подступиться к такой штуке, как компьютер для встраиваемого применения. Точнее, сегодняшний текст будет скорее для уже подступившихся — так что я остановлюсь на паре интересных моментов, таких как работа с логическими линиями ввода-вывода (GPIO) и микросекундными временами.



Во-вторых, конечно, писать именно на C не обязательно. Под OpenWRT есть Perl, Python и даже Node.js — с ними вам не нужна, очевидно, никакая среда для сборки софта, только заливай@запускай.

Читать дальше →
Всего голосов 21: ↑20 и ↓1 +19
Просмотры 13K
Комментарии 8

Елочка, зажгись! Часть 3: веб-интерфейс и приложение для Android

Блог компании Black Swift
Этим текстом мастер Гамбс завершает описание своей новой ёлочной гирлянды. 2015 г. Москва

Привет, Хабр!

Итак, мы добрались до финального этапа: раз у нас есть гирлянда, которой управляет нанокомпьютер Black Swift со встроенным Wi-Fi, то логично сделать для неё веб-интерфейс и смартфонное приложение, чтобы помигать светодиодом, если вы понимаете, о чём я.

  1. Гирлянда, подключение Black Swift и среда сборки под OpenWRT на C/C++
  2. Софт на C, работа с GPIO и программная ШИМ
  3. Веб-интерфейс и приложение для Android

Но сначала — по просьбам читателей публикуем видео работающей ёлочной гирлянды. Не думаю, что кто-то не видел ёлочных гирлянд, думаю, что просто не все верят, что я правда 28-29 декабря пошёл за светодиодами, чтобы украсить ёлку…
Читать дальше →
Всего голосов 24: ↑24 и ↓0 +24
Просмотры 19K
Комментарии 8

Как мой кот перестал бояться и полюбил Arduino

Блог компании Black Swift
Привет, Хабр!

Недавно мы с уважаемым dzhe думали о том, какой заголовок может считаться идеальным для Хабра — и вы уже поняли, к какому выводу пришли. Правда, к сожалению, на самом деле кота у нас нет, однако тему Arduino обещаю ниже немного приоткрыть.



Впрочем, глобальные новости у нас другие: Black Swift не просто вышел на Kickstarter, но и за первые 6 дней почти собрал необходимую сумму.

Это не много и не мало — были проекты, который собирали 100 % за день или за час, были проекты, который так и умирали, едва добравшись до 50 % за весь срок. Мы попали в интересную ситуацию — с одной стороны, в профессиональных сообществах Black Swift вызывал преимущественно положительные отклики, с другой стороны, СМИ более-менее общей направленности нами не заинтересовались — какой-то ещё один микрокомпьютер, мало ли их — поэтому какого-то массивного всплеска в первые день-два у нас не было.

Здесь, конечно, стоило немного доработать перед запуском: создать какую-нибудь бессмысленную, но понятную и дающую красивые картинки и заголовки плату расширения, на которую клюнули бы обычные СМИ. Ну, например, «самый маленький роутер в мире» или «100 % совместимость с Arduino». Бессмысленную — потому что если вам нужен роутер, проще купить готовый, а если вы правда при виде 400-МГц процессора и OpenWRT беспокоитесь о совместимости с Arduino, то есть же Yun. Но, как показывает практика, все те журналисты, которые традиционно презрительно отзываются о маркетологах, на такие несложные маркетинговые уловки ловятся очень даже неплохо.

Впрочем, о работе с Kickstarter я подробнее напишу позже, когда будет официальный инфоповод «100 %», а пока — про ардуину (на самом деле нет).
Читать дальше →
Всего голосов 54: ↑43 и ↓11 +32
Просмотры 33K
Комментарии 87

Метеостанция не на Arduino, или Работа с таймерами и прерываниями GPIO в OpenWRT

Блог компании Black Swift
Привет, Хабр, давно не виделись!

Сначала — несколько важных новостей о проекте микрокомпьютеров Black Swift, а потом перейдём к основной теме: как на микрокомпьютер с OpenWRT сделать полноценным встраиваемым устройством.

Полноценный встраиваемый компьютер, на мой взгляд, невозможен без двух вещей:
  • Поддержка прерываний по разным поводам, включая сигналы на входах GPIO
  • Поддержка аппаратных таймеров с хорошим разрешением


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

Тем удивительнее, что при достаточном количестве микрокомпьютеров на SoC Atheros AR9331 и более дешёвых Ralink RT5350, позиционируемых именно как встраиваемые решения, с поддержкой в OpenWRT именно этих двух функций всё крайне печально. Здесь, конечно, возникает вопрос, кому эти микрокомпьютеры при таком уровне поддержки нужны — но оставим его висеть в воздухе.



Впрочем, если посмотреть на неё же по TCP/IP, то может сойти и для здорового человека.

Но сначала — новости:

  • Первая партия Black Swift — в России и уже рассылается по рублёвым предзаказам (то есть сделанным не на Kickstarter). Если вы при предзаказе указывали доставку — ждите, если самовывоз — звоните в офис и подъезжайте.
  • Если вы не оформляли предзаказ, но хотите купить Black Swift — звоните в офис и подъезжайте, у нас довольно много плат сверх объёма предзаказов. Оформить доставку можно, но тогда вы по понятным причинам встанете в хвост очереди предзаказов.
  • Сертификация FCC скоро завершится, судя по всему — успешно.
  • Удовлетворение бэкеров с Kickstarter, как и обещалось, ожидается в июне. Разослать отдельно русскоязычным или каким-либо ещё отдельным бэкерам платы мы не можем по техническим особенностям Kickstarter.
  • Потихоньку пополняется документация, из-за нехватки времени —  в первую очередь англоязычная.
  • В частности, образы виртуальных машин с OpenWRT SDK и Eclipse — вот тут (через пару дней обновлю их на свежую версию SDK с нашими патчами). Полезны для всех, кто хочет что-то писать под OpenWRT, но не очень понимает, как.


Ну а теперь — к теме.

Читать дальше →
Всего голосов 24: ↑23 и ↓1 +22
Просмотры 22K
Комментарии 32

Black Swift: использование EJTAG

Компьютерное железо Софт Процессоры DIY или Сделай сам

Моя предыдущая публикация EJTAG: аттракцион для хакеров хотя и была тепло встречена общественностью, имела некоторые недочёты: к примеру, была продемонстрирована уж слишком низкая производительность передачи по EJTAG (аж целых 2 КБ/с!).
К сожалению, я умудрился привести интерфейс JTAG платы MR3020 в полную негодность (был оторван провод TDI вместе с кусочком SMD-резистора R16). Так как устранить поломку не удалось, то недочёты остались неисправленными.
Несколько дней назад я получил от руководителя проекта Black Swift Дмитрия Жеребкова плату Black Swift Pro с адаптером. Плата Black Swift Pro во многом аналогична MR3020, а значит у меня появилась возможность написать публикацию про EJTAG на Black Swift и устранить прошлые недочёты!
Читать дальше →
Всего голосов 25: ↑25 и ↓0 +25
Просмотры 13K
Комментарии 14

EJTAG: аттракцион для хакеров

Компьютерное железо Софт Процессоры DIY или Сделай сам


Кампания по продвижению нанокомпьютера black swift в самом разгаре (см. также публикацию на habrahabr). black swift построен на базе SoC Atheros AR9331, что позволило сделать его с одной стороны крошечными, недорогим, и малопотребляющим, а с другой стороны в распоряжении пользователя находится процессорное ядро MIPS 24Kc, работающее на частоте до 400 МГц.
Недавно на форуме black-swift.ru был задан вопрос
Есть потребность в документации по использованию JTAG-интерфейса в устройстве. Можно ли ожидать чего-нибудь в этом направлении?

В данной публикации я вставлю свои пять копеек приведу конкретный простой сценарий использования JTAG-интерфейса SoC Atheros AR9331 для отладки программного обеспечения.
Публикация может быть интересна не только разработчикам ПО для AR9331, но и всем интересующимся внутрисхемной отладкой на процессорах с архитектурой MIPS при помощи свободного ПО.
Читать дальше →
Всего голосов 20: ↑20 и ↓0 +20
Просмотры 25K
Комментарии 13

EJTAG: аттракцион для хакеров-2

Компьютерное железо Софт Процессоры DIY или Сделай сам

В моих предыдущих публикациях EJTAG: аттракцион для хакеров и Black Swift: использование EJTAG рассматривался самый простой сценарий применения EJTAG — загрузка в ОЗУ и запуск на исполнение программы пользователя. Однако, возможности EJTAG этим не ограничиваются. В публикации рассказывается как организовать несложную отладку кода при помощи EJTAG, используя свободно-распространяемые программные средства openocd и GDB.
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 9.1K
Комментарии 0

Pineapple Nano своими руками Часть 1. Сборка платформы

Информационная безопасность *DIY или Сделай сам
Из песочницы

Pineapple Nano - это хакерское устройство от команды Hak5 для атак на беспроводные сети. Купить его не так просто, поэтому я решил собрать его сам. И эта статья будет как раз о том, как я прошел сквозь огонь и воду, чтобы воссоздать точную копию (ну почти) этого устройства. Поехали!

Читать далее
Всего голосов 46: ↑45 и ↓1 +44
Просмотры 16K
Комментарии 23