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



Передаю слово Андрею.

Disclaimer:
Коллеги, не претендую на истину – просто делюсь своим опытом. Возможно он сэкономит кому-то немного сил и времени. И да, в момент написания статьи я первый раз в жизни видел командную строку Linux.

Давайте договоримся, что ниже речь пойдёт про Raspberry Pi 2 Model B. Именно при работе с ним были сделаны все снимки экрана.



Дистрибутив Ubuntu Mate можно скачать, например, здесь.

Имея img файл — создаём загрузочную SDCard – для этого я использовал Win32 Disk Imager, который установил на свою Windows 10.



Получившуюся загрузочную карточку вставляем в Raspberry Pi, подключаем клавиатуру, мышь и дисплей. После успешной загрузки видим окна ниже.




Сразу после установки выполняем несколько команд.

sudo update-rc.d ssh enable


sudo service ssh restart


sudo ifconfig – покажет нам сетевые настройки устройства


Важные команды update и upgrade – чтобы обновить систему.

sudo apt-get update


sudo apt-get upgrade


Далее добавим русский язык для клавиатуры.


Вот так можно поменять комбинацию клавиш переключения (я пару минут потратил, пока нашёл этот пункт).



На одном из форумов прочитал, что надо включить I2C: командой sudo raspi-config.

Тут кстати и настройки SSH можно поменять.





Пока нет под рукой датчиков — пробую сделать хоть что-то… Читаю вот эту статью.

Давайте начнём с того, что нам понадобится подписка Azure! Пробную верcию можно получить здесь.

Наши дальнейшие шаги.

Шаг 1.


Шаг 2.


Шаг 3.


Шаг 4.


Итак, вернёмся на устройство! Команда node -v возвращает ошибку на моём RPI.



Устанавливаем Node.js. Для этого вбиваем команду: sudo apt install nodejs-legacy.



Теперь команда node -v возвращает текущую версию.



На всякий случай.



Теперь нужен NPM — устанавливаем командой: sudo apt-get install npm. Команда не быстро, но отработала!



Далее запускаем: sudo npm install -g npm@2.x.



Теперь надо поставить последнюю версию IoT Hub transport package: sudo npm install -g azure-iot-device@latest.



И ещё одна команда: sudo npm install -g azure-iot-device-http@latest.



Теперь надо установить IoT Explorer: sudo npm install -g iothub-explorer@latest.



Следующим шагом запускаем вот такую команду iothub-explorer login "строка подключения".



Далее подключаем устройство: iothub-explorer create muzeyrpi-1 --connection-string. Успешно!



На портале Azure устройство видно.



Копируем на устройство скрипт JS со странички:
var connectionString = '<your device connection string>';
var clientFromConnectionString = require('/usr/lib/node_modules/azure-iot-device-http').clientFromConnectionString;
var client = clientFromConnectionString(connectionString);
var Message = require('/usr/lib/node_modules/azure-iot-device').Message;
var msg = new Message('some data from my device');
var connectCallback = function (err) {
  if (err) {
    console.error('Could not connect: ' + err);
  } else {
    console.log('Client connected');
    var message = new Message('some data from my device');
    client.sendEvent(message, function (err) {
      if (err) console.log(err.toString());
    });
    client.on('message', function (msg) {
      console.log(msg);
      client.complete(msg, function () {
        console.log('completed');
      });
    });
  }
};
client.open(connectCallback);

Сам по себе скрипт не заведётся — надо:
  1. В путях внутри файла надо поменять /usr/lib на /usr/local/lib.
  2. Добавить строку подключения. Причём строку подключения именно к устройству.



Запускается скрипт командой node MyScript.js из папки, где лежит скрипт.



Пробуем ещё раз – на этот раз в Device Explorer (подробнее про него и ссылка на скачивание в статье.



Жмём Enter… :)



Поздравляю – первые сообщения от нашего RPI достигли Azure IoT Hub

Я искренне надеюсь доработать данную инструкцию и сделать её еще более полезной! Например, пройдя вот этот путь (имея на руках датчик BME280 или без оного).

Для тех, кто дочитал


Для того, чтобы вы могли попробовать проделать это упражнение сами, мы с Андреем решили разыграть две штуки Raspberry Pi 3. Их получат первые 2 человека, которые ответят правильно в сообщения сообщества Microsoft Developer на вопрос: «На основе какого микроконтроллера была разработана самая ранняя версия Raspberry Pi?» Общие правила.
Поделиться с друзьями
-->

Комментарии (17)


  1. nikitasius
    13.07.2017 09:20
    +2

    Имея img файл — создаём загрузочную SDCard – для этого я использовал Win32 Disk Imager, который установил на свою Windows 10.

    Мои глаза, понеслось...


    Важные команды update и upgrade – чтобы обновить систему.

    Мне больно...


    Вот так можно поменять комбинацию клавиш переключения (я пару минут потратил, пока нашёл этот пункт).

    НЕТ!!! Не надо!!! прекратите!!


    Скриншоты фотоснимки работающей системы, чтож… зачем останавливаться? Можно было бы их до кучи распечатать на лазернике, шариковой ручкой указать что хотели и отсканировать!


    Статья ни-о-чем, dd + next-next-next и первый ответ из гугла тем, кто купил RPI, ваш кэп!


    1. Schvepsss
      13.07.2017 09:49
      -2

      Как я написала в начале, это статья не претендует на высокий уровень техничности и была написана маркетологом потому, что мы не нашли русскоязычную инструкцию. :)

      Кэп, могли бы поделиться ссылкой на первый ответ из гугл? Будет интересно почитать.


      1. anmipo
        13.07.2017 13:11

        Как ни удивительно, первый ответ из гугла ведёт на википедию.
        http://lmgtfy.com/?q=first+raspberry+pi+microcontroller


        1. Schvepsss
          13.07.2017 14:15
          +1

          Никогда такого не было и вот опять.


      1. nikitasius
        13.07.2017 15:42

        установка ubuntu raspberry pi
        install ubuntu raspberry pi

        Заместо кривой статьи лучше бы правильный перевод сделали.


        1. Schvepsss
          13.07.2017 16:37
          -1

          «Вместо»*


          1. nikitasius
            13.07.2017 22:21
            -1

            Кортану спросить забыл. Своими текстами вы опускаете планку блога M$.


            1. Schvepsss
              14.07.2017 09:15
              +1

              Спасибо за ваше мнение.


    1. Pythonpy
      13.07.2017 16:36
      +2

      вы просто эгоист)


      1. nikitasius
        13.07.2017 22:19
        -2

        В чем проблемы, в том что развеял ее мечты о зеленой и прекрасной? Так сказок нет. Это айти ресурс. Так что давайте не будет наполнять его говноконтенто, и без того хватает.


        1. Pythonpy
          14.07.2017 09:49
          +1

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


          1. Schvepsss
            14.07.2017 10:07

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


          1. nikitasius
            14.07.2017 19:48

            вы слишком надменны.

            Конечно! Меня еще после полуночи кормить нельзя.
            Эта, кхм, статья, — это говностатья. Она в корпблоге, но говностатья вида: "Я купила рпи и решила поставить линукс, было страшно, ноготь сломала, но справилась и, таккакэтостатьявблогемелкософта, подключила сей продукт к замечательному сервису от M$".


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


            З.Ы, Еще у меня минусомет на Д'Артаньянов возбуждается.


            1. Pythonpy
              17.07.2017 09:22
              +2

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


            1. Schvepsss
              17.07.2017 14:16

              Судя по этому комментарию у меня остался последний вопрос: «Вы статью читали?»

              Уверена, что нет, с учётом того, что во втором абзаце написано, что это история не о моих сломанных ногтях.

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

              P.s. Правильно, когда человек отвечает тебе аргументировано и тебе сказать нечего, минусуй. И не кушай много на ночь. :)


        1. Schvepsss
          14.07.2017 09:56

          Не хочу вас расстраивать, но вы вряд ли обладаете способностями для развеивания моих мечт. :)

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

          P.s. Но как показывает практика, скорее всего вы ничего не напишите, ибо в лс нет необходимой публики.


  1. denisnone
    13.07.2017 11:52
    -1

    Кто бы мог поверить, что настанет когда-нибудь тот великий час, когда Майкрософт начнет писать статьи о том, как установить Ubuntu на Raspberry Pi. А Стив Балмер тем временем читает вашу статью и плачет кровавыми слезами. Его пророчество сбылось, та самая «раковая опухоль», как он выражался в свое время о Linux, поразила и его любимую компанию.