Happy New 2018 Year! Jan 7

Hi everyone!

2018 has recently started and the New Year holydays is ending in Russia. Today we celebrate Orthodox Christmas. At this joyous time of year, we are grateful for our work with you and be a part of great community. We wish you abundance, happiness, and peace in a new year filled with hope!

I would like to take an opportunity and introduce our team:

current team

From left to right:

Best wishes!

We won a first stage of Open IoT Challenge by Eclipse Dec 21

Oh yeah!

We have became a TOP-12 Proposal at Eclipse Open IoT Challenge! Thanks to everyone who believed in us.

What does it mean?

It means that we will build a stable Cloud Oscilloscope by 15 march 2018. Also we will get a 150$ gift card to buy electronic parts for next Cloud Oscilloscope prototype. As you can see, right now we have a working prototype, but we have to make it stable.

Plans for the next 4 weeks

First of all, we will fix these issues:

We are going to fix some of this bugs on the New Year's holidays.

A little talk about Cloud Oscilloscope in Russian (with demonstration)

Sorry, we do not have a time to translate it :( You can use default Youtube's subs.

Cloud oscilloscope update Dec 1

Hi there!

We have a first cloud oscilloscope update.

Recently we've improved qt program on orange pi, now we can handle and show correct signal on display .

A little demonstration using oscilloscope to get signal from the sound at youtube:

Right now we're going to continue work on qt program, debugging, etc. We made a stable job of oscilloscope for over 11 minutes without lockups :D We know that the problem located with our program and if fails with zone_watermark_ok error.

We participate in Eclipse OPEN IoT Challenge, and this post is another addition to our proposal.

Eclipse Open IoT Challenge Logo

We make an open-source Cloud Oscilloscope Nov 17

Hello there!

This is a short story about our Cloud Oscilloscope or why should we be in Top 10 proposals at Open IOT Challenge. The first idea emerged before those 48 hours of fun, coding and soldering.

Team Part of our team a year ago. From left to right: Dmitry Chernyatev, Mikhail Dronov, Evgeniy Nenilin

The main goal was to make useful, interesting and cheap device at a price of 60-70$. That’s why we decided to use the cheapest components and chose the fresh Orange Pi Zero. It was 48 hours of hell: Orange Pi Zero has just released and delivered by Aliexpress, we didn't manage to neither open the datasheet, nor check sdk properly. We spent a lot of time at Hardware Hackathon adapting a SPI screen from Raspberry Pi to Orange Pi Zero. We tried to configure screen, without success. Also, the plan to "make a lot of things in 48 hours" is not a good strategy for big long-term living projects at Hackathons. After this event we decided to remake our device step by step.

First of all we made working SPI screen in our free time. It was a right idea to use an fbtft driver, and after a long time we made a working configuration. About half of a year we have used Allwinner H2 Linux SDK from Xunlong based on H3. But recently we discovered a good system called Raspbian with stable Linux for Orange Pi Zero, Raspberry Pi and other single-board computers. When making an open source hardware projects, you should be free in choice of components! I’m sure that the one Linux distro for most platforms can help us to make a similar software and whole firmware for big variety of platforms.

A couple of months ago we recognized a real pattern to use Cloud Oscilloscope. The task was to debug a broken device and compare it to working one. After that we would show the results to our colleagues in other city. We had to make an oscillogram from broken device, look at it and compare with one made from working device. We had to do it by hand. Our oscilloscope can show data in real time and on small screen only. In most cases it is enough, but not when you need to show full oscillogram to others…

And… That’s it! Why couldn't we make a solution to grab oscillograms from device, send it to the cloud and analyze after that? I don’t know! After that we realized a real motivation to complete our long-term project and shared it with others. We are sure that other people have similar projects. Open source is the best way to share our solution without any copyrights problems and grab feedbacks from users to make device better.

Also the Cloud Oscilloscope could be useful to make an experiments in development of electronics: sometimes one needs to make long measurements from the device he develops, make triggers on voltage level and alert engineers that something has happened.

What we have under the hood?

We built a device with Orange Pi Zero and ADC. It already includes WiFi to connect via MQTT with server. We’re using a cheap SPI screen from Raspberry Pi and are able to print oscillogram in realtime using framebuffer directly without X server. We will add an opportunity to setup WiFi and other settings later. Right now it looks like:

1st photo Yeah, it is the wood case and it lived with us from the Hardware Hackathon :)

1st photo Our working prototype of Cloud Oscilloscope shows his entrails

What’s next?

We need to make a stable device. We've got this approximated task list for next 2 months:

After these steps we will have a time to make a little cloud. We’re planning to write a service like pastebin for oscillograms in the future. It will be written in Golang, packed to Docker containers and deployed to Openshift ot Docker Swarm. And yeah, Eclipse Mosquitto and Paho are the best friends for us :)

Besides that we need to make a website for our service which will allow users to register, connect the oscilloscope, make an oscillogram diffs and share them. Its also required to have features like authorization, management, api and other. Our source of inspiration is Github with diffs and pastebin with code shares.

We think that our device could be useful for studying, when its not required to buy an expensive equipment to work with. Our cheap solution will show the results maybe not so accurate that expensive professional equipment would produce, but they will be good enough for studying and device will be cheap to buy and make.

We will share all software, firmware, schematics and other parts of our Cloud Oscilloscope. Right now we have only one opened repository based on Xunlong SDK at Gitlab with the first sdk we worked with. And, of course, we will make new repositories and maybe resources to discuss and share experience!

Get cheaper, get better, get open!

Stay in touch!

Как не облажаться на Хардатоне Mar 13


Это пост — ещё одно напоминание о предстоящем Хардатоне.

Хардатон — мероприятие для нашей отчизны, в целом, довольно свежее. Почему нельзя так просто взять, приехать в другой город (как проходят многие Хакатоны) и организовать сие действие за одну неделю — требуется довольно много оборудования. Это, к примеру, 3D-принтеры, лазерные станки, измерительное оборудование (осциллографы, мультиметры, etc), Arduino/Raspberry Pi/esp8266, паяльники/паяльные станции, и многое другое. И, да, этого оборудования должно хватать на аудиторию Хардатона (одно дело на 50 человек, другое на >150).

Цель Хардатона — прототип устройства. Это не только пописать код в своё удовольствие. Код внезапно становится не самой важной вещью в финальном прототипе. Тут уже нужно и электроникой/схемотехникой позаниматься, сделать корпус устройства, и собрать его так, чтобы что-нибудь работало. И всё это за 48 часов.

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

Понятная задача

На мой взгляд, это самый сложный фактор. 48 часов — время довольно ограниченное. В эти часы вам будет хотеться не только работать над своим проектом, но и есть, консультироваться с другими участниками, и, иногда, спать. Очень важно не тратить время зря. Если ваша идея проекта описывает довольно сложное устройство — уберите ещё до начала работы 70% функциональности. А, помозговав, от оставшихся 30% уберите ещё 70%. Оставьте какую-нибудь одну важную часть проекта и сделайте её рабочей. Есть такое ̶х̶и̶п̶с̶т̶е̶р̶с̶к̶о̶е̶ понятие, как MVP — Minimal Viable Product — минимальный рабочий прототип продукта (пора отправиться гладить свои узкие джинсы и делать смуззи). Короче, лучше сделать меньше, но лучше. Простите за тавтологию.

Домашние заготовки

Есть наработки прототипа устройства? Разведённые платы, полусобранные корпуса и полунаписанный софт? Круто, тащите всё с собой! Используйте понятные и знакомые железки/софт/etc, иначе есть реальная возможность потратить львиную долю Хардатона на чтение чужого кода и попыткам понять, как поднять ту или иную часть железки, с которой вы работаете (что, собственно, и случилось с проектом, который пилила моя команда). С другой стороны, Хардатон должен приносить радость и удовлетворение: разобраться с какой-нибудь технологической задачей и расшарить после Хардатона этот опыт другим — тоже круто!

Наличие команды

Все участники Хардатона делятся на две категории: те у кого есть сформированная команда, и те, у которых её нет. В первом случае будет хорошая возможность что-нибудь распараллелить (например, работу с софтом и проектирование корпуса). Это обязательно нужно использовать, так как не времени будет всегда не хватать.

Во втором случае придётся посложнее. Даже если вы один и не имеете навыков проектирования корпуса или работы с определённой электроникой — это не беда. Обычно на Хардатоне есть определённое количество личностей, которых можно и нужно тыкать по всем возникающим вопросам (на прошлом Хардатоне мы не нашли характеризующего слова для таких людей, кроме как "Эксперт"). Как показывает практика, при правильном подходе к решению возникающих проблем, результат (рабочий прототип на демо проектов) налицо.

Кроме того, нужно быть готовым к тому, что к вам никто не присоединится. Может сложиться, что большинство из участников так или иначе уже самостоятельно (до Хардатона) разделится на команды. И не всегда количество "свободных" участников может быть достаточным для укомплектации вашей команды. Но участники (и организаторы) стараются свести такие случаи к минимуму.


Да-да. Зачем? Есть два ̶с̶т̶у̶л̶а̶ варианта:



Если вы себя чувствуете неуверенно перед тем как что-то запаять/перепрошить/собрать — сделайте это вместе с экспертом. Убить ардуинку или другую микросхему при определённых ̶н̶е̶ ̶о̶ч̶е̶н̶ь̶ ̶х̶о̶р̶о̶ш̶и̶х̶ обстоятельствах не составляет никакого труда.

В целом, по рекомендациям всё. И теперь немного лирики.

Тренды прошлых Хардатонов

Lean poker Apr 26

Относительно недавно до России дошло интересное мероприятие, совмещающее в себе драйв хакатона и полезность воркшопа. Лаконичнее описать, что это такое конкретно, лучше чем у Ивана Немытченко у меня не получилось, поэтому приведу его цитату:

Многие угорают по хакатонам. Но правда это получается больше развлекушка. Получить реальную пользу от хакатона почти ни у кого не получается.

  • Что-то прямо законченное и готовое к конкуренции в реальном мире за день-два сделать не успеешь. Да и опять же в реальном мире надо же наруливать каналы продаж и прочей стартапной фигней заниматься, которая у программистов вызывает приступы зевоты. Как-то прокачать навыки разработки тоже не выходит. Качество кода? Не смешите мои тапочки!
  • Для тех кто хочет научиться чему-то новому, придумали воркшопы. Это когда какой-то эксперт(или не очень) рассказывает и показывает чего делать, а остальные повторяют. Воркшопы обычно платные. И конечно не такие бодрые как хакатоны.


В прошлое воскресенье 24 апреля мы (команда Рестрим) совместно с компанией Gitlab и Иваном проводили первый Lean poker в Ульяновске. Признаться, из-за того, что в покер я особо не играл, решение посетить такой ивент я принял ровно за полчаса до начала. И это стоило того, тысяча чертей!

Итак, поехали.

Из слова 'poker' в названии становится понятно, чем участники будут заниматься. Вкратце — писать ботов, которые будут рубиться в покер друг с другом. Всё по правилам Техасского холдэма. Участники разбиваются по командам, берут какой-нибудь один язык программирования и фигачат, фигачат, фигачат до тех пор, пока не не кончатся часовые итерации и не объявится победитель.

Каждой команде необходимо зарегистрироваться на ресурсе, после чего в гитхабе капитана команды появляется репка. Репка с минимальным скелетом приложения деплоится на heroku, запускается веб-сервер. К примеру, на Ruby это Sinatra. Сервачок отвечает по нескольким урлам типа "сделать ставку", "вскрыть карты".

Вот в целом и весь механизм работы команд. К вам приходит некий game state, в котором видно игроков за столом, дилера, карты на столе. Вы всё это анализируете и принимаете решение о ставках, либо спасовать, либо ещё что. В первые часовые итерации каждые 20 секунд запускается турнир, в котором играют боты. Занявший первое место бот получает 5 очков в каждой игре, второе — 3.

Визуально всё это выглядит примерно так: графики, статистика игр, фотки.



По совету и под управлением Максима мы (команда POXEP) старались придерживаться некоторых покерных стратегий игры. В инфраструктуре Lean poker также существует замечательная API, куда передав карты руки и на столе можно получить rating комбинаций карт. Ну и, в зависимости от вашей хватки, покерного опыта и пр. решать, как реагировать боту в определённых ситуациях.

примеры стратегий

К чему я пришёл
Интересные факты

Графики, темпы и результаты Lean Poker можно посмотреть здесь.

Огромное спасибо лично Андрею Субботе и Ивану Немытченко за проведённое мероприятие!


Фотографии Андрея Субботы и Ивана Немытченко

What about the Tron:Legacy? Mar 25

Owwh. Would you remember the great story about Kevin Flynn? It was released at 1982 and was one of the first technological movies with 3D graphics in the s world. Huh, I was not born when these times had happened.

Tron: Legacy was released at the end of 2010 year. It also was a very technological movie competing with the first Avatar. But I remembered this movie not only for that.

I was at the premiere with my close friend. It was the first and the last time when I see all people in the cinema had got up and applauded.


Hello World! Jun 6

Hello! My name is Mike.

I created this blog in 2010. It has been a long trip because the content was changing with according my interests. I wrote about some social staff, robotics, news, articles connected with something… But some things are the same.

Now it will be a resource with stuff about interests which have never changed: Programming, Linux and stuff connected or similar with it. I can call myself like a computer geek, and I have friends with similar interests.

I'm not sure that it will be tons of materials only in English. My native language is Russian so I think I will be able to set internationaliation setting for articles.