Stlink: [doc] تحقق من تكوين udev الصحيح لوصول الجهاز

تم إنشاؤها على ٢٢ يناير ٢٠١٩  ·  8تعليقات  ·  مصدر: stlink-org/stlink

على Ubuntu والتوزيعات المنزوعة ، يتطلب st-flash و st-util sudo للعمل بشكل صحيح.
إضافتها إلى sudoers (عبر visudo) تزيل الحاجة إلى كلمة المرور ولكن ليس sudo.
إضافة المستخدم إلى مجموعة الطلب لن يغير أي شيء.
إضافة GROUP = "myusername" ، \ سطر إلى قواعد udev لن يغير أي شيء.
سيكون موضع تقدير كبير لتقديم وثائق حول كيفية إزالة هذه الحاجة إلى sudo ، بحيث تجعل التكامل مع IDEs (مثل VSCode وغيرها) أسهل كثيرًا.

generadocumention olinux question staturesolved

ال 8 كومينتر

كيف قمت بتثبيت ستلينك؟
إذا قمت بما يلي ، فلن تحتاج إلى sudo لتشغيل الأوامر (طالما لم يتم تشغيله كجذر):

git clone https://github.com/texane/stlink.git
cd stlink/build
cmake ..
make && sudo make install

لاحظ أنك قد تحتاج أيضًا إلى تحديث قواعد udev إذا لم تكن قد قمت بذلك بالفعل.
stlink_udev_rule.tar.bz2
sudo tar -xvf stlink_udev_rule.tar.bz2 -C /etc/udev/rules.d

مرحبا وشكرا على الاجابة السريعة
اليوم سحبت البوابة الأخيرة (6a9d390a729f381ecec45f212354bfe98e27790f)
ثم في البناء فعلت
make clean
cmake ..
make && sudo make install

قمت أيضًا بنسخ قواعد udev إلى /etc/udev/rules.d.
لقد جعلت قاعدة udev قابلة للتنفيذ ثم أعدت تشغيل الكمبيوتر بالكامل

لكن عندما أفعل
st-flash write main.bin 0x8000000
أنا أخذت
st-flash 1.4.0-58-g6a9d390
2019-01-24T22:21:17 INFO usb.c: bus 483 dev 3748
2019-01-24T22:21:17 WARN usb.c: Couldn't find matched ST-Link/V2 devices
إذا كنت من ناحية أخرى
sudo st-flash write main.bin 0x8000000
أنه يعمل بشكل جيد.

فقط للحصول على معلومات
lsb_release -a && uname -a
امسك بي
No LSB modules are available.
Distributor ID: neon
Description: KDE neon User Edition 5.14
Release: 18.04
Codename: bionic
Linux zalman 4.15.0-43-generic #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

هل لديك فكرة ماذا علي أن أفعل؟
أفضل التحايا

إنه يعمل بشكل جيد بالنسبة لي تحت ubuntu 18.04.

للتحقيق ، ابدأ بتوصيل جهاز STLINK بمنفذ USB. ثم قم بتشغيل lsusb . يجب أن ترى إدخالًا مشابهًا لما يلي:

Bus 005 Device 017: ID 0483:374b STMicroelectronics ST-LINK/V2.1 (Nucleo-F103RB)

لاحظ رقم الناقل (005) والجهاز (017). يجب عليك بعد ذلك القيام بما يلي:
ls -l /dev/bus/usb/005/017 (استبدال 005 و 017 بشكل مناسب).

أرى في نظامي ما يلي:

crw-rw-rw- 1 root root 189, 528 Jan 24 17:52 /dev/bus/usb/005/017

وهو أمر قابل للكتابة عالميًا (هذا من الوضع: = "0666" أدناه). لدي عدة ملفات في دليلي /etc/udev/rules.d. في هذه الحالة بالذات ، يحتوي ملف 49-stlinkv2-1.rules على ما يلي:

# stm32 nucleo boards, with onboard st/linkv2-1
# ie, STM32F0, STM32F4.
# STM32VL has st/linkv1, which is quite different

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", \
    MODE:="0666", \
    SYMLINK+="stlinkv2-1_%n"

# If you share your linux system with other users, or just don't like the
# idea of write permission for everybody, you can replace MODE:="0666" with
# OWNER:="yourusername" to create the device owned by you, or with
# GROUP:="somegroupname" and mange access using standard unix groups.

ويتطابق كل من idVendor od 0483 و idProduct لـ 374b مع معرف البائع من إخراج lsusb.

تأكد من أن لديك جميع الملفات الثلاثة من هنا: https://github.com/texane/stlink/tree/master/etc/udev/rules.d في دليل /etc/udev/rules.d. بعد نسخ الملفات الجديدة أو تحرير الملفات الموجودة في /etc/udev/ruled.d ، يجب تشغيل ما يلي:

sudo udevadm control --reload-rules
sudo udevadm trigger

للتأكد من أن القواعد سارية المفعول بالفعل. يعني استخدام أمر المشغل أنك لست بحاجة إلى فصل الجهاز وإعادة توصيله ، ولكن قد ترغب في تجربة ذلك من أجل إجراء جيد أيضًا.

إذا كان VID: PID الخاص بجهازك لا يتطابق مع تلك الموجودة في أي من الملفات الثلاثة ، فقد تحتاج إلى إنشاء ملف قاعدة مخصصة لمطابقة VID: PID الخاص بك

مرحبا وشكرا على ردك
فعلت كل هذا
ls -l /dev/bus/usb/001/011 crw-rw-rw-+ 1 root root 189, 10 Jan 25 19:56 /dev/bus/usb/001/011
أنه لا يزال هو نفسه.
بإضافة الأمر في sudo visudo ، لست مضطرًا لإدخال كلمة المرور بعد الآن ولكن ما زلت بحاجة إلى sudo.
هذا غريب

dhylands هل ترغب في تحديث الوثائق بالوصف الشامل؟ على https://github.com/texane/stlink/blob/master/doc/compiling.md#permissions -with-udev.

dhylands : هل يمكنني نسخ وصفك ولصقه في وثائقنا؟

@ Nightwalker-87 بكل الوسائل - لا تتردد.

davehylands : شكرًا لك على

إغلاق هذا بالتزام d3c11fbef6d8205742152f646b223323dc4c0913 كما نعلم الآن أن تكوين udev يعمل.
يمكنني أن أؤكد ذلك أيضًا من خلال نظام دبيان الحديث.

يبدو أن المشكلة هي مشكلة معزولة في تثبيت محلي لا يمكننا إعادة إنتاجه.
النصيحة الختامية هي إعادة المحاولة بتثبيت نظيف (نظام) بأذونات المستخدم الافتراضية.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

lkord picture lkord  ·  14تعليقات

chenguokai picture chenguokai  ·  6تعليقات

bolorkhuu picture bolorkhuu  ·  11تعليقات

Vascom picture Vascom  ·  7تعليقات

vitormhenrique picture vitormhenrique  ·  13تعليقات