LINUX.ORG.RU

Подружить Lego Mindstorms NXT с Linux Mint Cinnamon 18.3 в 2018 году

 , ,


1

1

Привет All!

Работаю я в школе, использую в учебном классе компы с Linux Mint.

Недавно, буквально этим летом, досталась мне пара старых, но нулёвых наборов Lego Mindstorms Education (9797) с NXT 2.0

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

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

Проблемы, собственно, две:

1) NXT - древний как говно мамонта, т.к. с 2013 года ему на смену пришёл EV3 с другим софтом и другим железом.

2) Весь родной софт для Lego заточен под Windows и MacOS, а сторонний софт, который вроде как затачивался и под Linux, в силу древности и неактуальности моделей NXT умер не дойдя до стабильных версий.

Последние несколько дней я перелопачиваю интернет в поиске чего-то что могло бы мне помочь заставить работать Linux с NXT, но все немногочисленные рецепты 2010-2012 годов мне в 2018 году уже не помогают.

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

Установить этот же софт под Wine у меня не получилось.

В школе, в качестве языка программирования мы сейчас преподаём Python3, поэтому сначала я очень обрадовался когда нашёл упоминание про NXT-Python, но к сожалению, мне не удалось его установить (может я тупой и криворукий).

Собственно у меня три больных вопроса:

1) Как заставить Linux Mint 18.3 увидеть NXT, подключенный через USB?

Я нашёл статью 2012 года, где предлагалось использовать udev, добавляя в /etc/udev/rules.d соответствующий файл с настройками. Но, как я понял, автоматическим монтированием USB-устройств в современном Минте занимается не udev и даже не udisk, т.к. все папки с конфигами от этих программ лежат пустыми.

2) Как затащить под Linux Mint 18.3 какую-то систему программирования на языках NXC и/или Python3 для моих NXT?

3) Возможно ли, всё же завести родной софт под Wine?

Буду благодарен, если кто-то сможет подсказать что-то конкретное.


Ответ на: комментарий от anonymous

купи макбук
anonymous (08.08.2018 16:03:46)

Ок. Не вопрос.

Если только анонимус проспонсирует закупку хотя бы 22 современных маков для комплектования компьютерного класса.

Hemulo
() автор топика
  1. А lsusb -v -d 0694:0002 что показывает?
  2. С чего ты взял, что NXT intelligent brick должен быть «виден» с писюка как usb storage? Здесь ни про какой сторадж речи нет, видимо nbc сам находит usb-устройство 0694:0002 и аплоадит на него программу по какому-то своему протоколу.
iliyap ★★★★★
()
Ответ на: комментарий от iliyap

С чего ты взял, что NXT intelligent brick должен быть «виден» с писюка как usb storage?

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

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

:-(

А lsusb -v -d 0694:0002 что показывает?

$lsusb -v -d 0694:0002


Bus 002 Device 007: ID 0694:0002 Lego Group Mindstorms NXT
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0694 Lego Group
  idProduct          0x0002 Mindstorms NXT
  bcdDevice            0.00
  iManufacturer           0 
  iProduct                0 
  iSerial                 1 0016531AA633
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0001
  Self Powered

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

Hemulo
() автор топика
Ответ на: комментарий от Hemulo

bInterfaceClass = 255 говорит о том, что устройство не относится ни к какому стандартному классу. В частности, оно не является стораджем.

iliyap ★★★★★
()
5 мая 2019 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.