يرجى ملاحظة: هذه الصفحة تمت ترجمتها تلقائيًا. إذا استطعت ، يجب أن تقرأها بإحدى اللغات التالية:

الشيء الرئيسي

flash_cc2531

يمكنك flash_cc2531 من برمجة عصا USB CC2531 الخاصة بك Raspberry، دون الحاجة إلى Arduino أو CC Debugger.
يمكن أيضا برنامج مفتاح CC2530.

المتطلبات المسبقة

تحتاج إما Raspberry أو Odroid-c2.
تحتاج إلى ما توصل ميناء الأرجواني للمفتاح إلى المنافذ GPIO de Raspberry، على سبيل المثال كابل واحد CC وأربعة خطوط Dupont ( شاهد المزيد ).
WiringPi يجب تثبيته ( إذا لم يكن مثبتا مسبقا، يمكنك عادة تثبيته مع sudo apt install wiringpi)، وإلا ترى Gordon الموقع أو هذا الموقع البديل ).
أخيرًا تحتاج البرنامج:

لقد توقعت flash_cc2531 على Raspberry Pi 3 مع raspbian، لكن تم الإبلاغ عن برمجة ناجحة في الطرز الأخرى:

أعدت

تنزيل flash_cc2531 إلى raspberry :

git clone https://github.com/jmichault/flash_cc2531.git

قم بتوصيل الدبابيس التالية بالمنفذ الأرجواني إلى منفذ GPO:

تخطيط الدبوس raspberry متاح هنا: https://pinout.xyz/

ثم أدخل مفتاح USB في المنفذ.

تنزيل كابل CC و 4 خطوط Dupont أنثى إلى أنثى مثالية لهذا الغرض: ![ صورة للمفتاح وال raspberry

هذا هو الخيار المفضل لدي، ولكن إذا كنت ليس لديك كابل CC يمكنك أيضا تشغيل الكابل Dupont على المفتاح: انظر على سبيل المثال lemariva.com
[ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [

جرب هذا:

cd flash_cc2531
./cc_chipid

يجب أن يعود:

  ID = b524.

(قد تكون القيمة مختلفة إذا لم يكن إصدار الجهاز لمفتاحك مطابقًا لي).
إذا رأيت 0000 أو FFFF شيء غير صحيح:

الاستخدام

لحفظ محتويات ذاكرة الفلاش في ملف save.hex:

./cc_read save.hex

(يستغرق حوالي 2 دقيقة).

لحذف ذاكرة البرق:

./cc_erase

ملاحظة: يجب عليك حذف قبل الكتابة (ما لم تكن تعرف حقًا ما الذي ستفعله).

لبرمجة الملف CC2531ZNP-Prod.hex على المفتاح CC2531:

./cc_write CC2531ZNP-Prod.hex

(تدوم حوالي 3 دقائق).

استخدم دبابيس أخرى

تقبل جميع الأوامر الوسيطات التالية:

رقم التعريف الشخصي المستخدم هو wiringPi. استخدم gpio readall للحصول على التخطيط في عمودك Raspberry ( wPi ).

على سبيل المثال ، إذا كنت تريد استخدام المسامير 3 و 11 و 13:
قم بتوصيل المسامير التالية بمنفذ تنقية إلى المنفذ GPIO:

  1. دبوس 1 ( GND ) -> دبوس 14 ( GND )

  2. دبوس 7 ( reset ) -> دبوس 3 ( wPi 8, BCM2 )

  3. دبوس 3 ( DC ) -> دبوس 11 ( wPi 0, BCM17 )

  4. دبوس 4 ( DD ) -> دبوس 13 ( wPi 2, BCM27 )

والآن يمكنك قراءة معرف وحفظ وحذف وكتابة ذاكرة صاعقة مع الأوامر التالية:

./cc_chipid -r 8 -c 0 -d 2
./cc_read -r 8 -c 0 -d 2 save.hex
./cc_erase -r 8 -c 0 -d 2
./cc_write -r 8 -c 0 -d 2 CC2531ZNP-Prod.hex

ماذا لو لم يعمل؟

  1. وقف جميع البرامج الأخرى.

  2. اضبط سرعة المعالج قبل البرمجة. مثال:

    sudo echo performance >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    
  3. استخدم الخيار -m لزيادة الحدود الزمنية المستخدمة. مثال:

    ./cc_write -m 300 CC2531ZNP-Prod.hex
    
  4. أعد ترجمة البرنامج باستخدام make.

  5. ابحث عن حل في الأسئلة المطروحة بالفعل على github

  6. اطرح سؤالك الخاص حول github.

  7. تحقق كتلة التغذية الخاصة بك

    grep Under /var/log/kern.log
    

    إذا حصلت على الكثير من الخطوط، فعليك تغيير كتلة التغذية.

أريد توصيل أكثر من 15 محيط

نقرأ في مواقع مختلفة أن المفتاح CC2531 يمكنه فقط التعامل مع 15 الأجهزة القصوى.
في الواقع، فإن البرامج الثابتة القياسية لهذا المفتاح لها حد 15 روابط مباشرة. ولكن إذا كانت إحدى هذه الاتصالات zigbee جهاز التوجيه ( ومعظم الأجهزة تعمل كموجه، فهذا، على سبيل المثال، حالة Philips Hue لمبة )، ثم CC2531 يمكن إدارة الأجهزة الموجودة وراء هذا التوجيه، والذين خلف جهاز التوجيه المتصلون بهذا الموجه …
في الواقع، الحد الأقصى ل CC2531 أعلى بكثير.
لاحظ أيضا أن البروتوكول zigbee يحد من عدد الروابط المباشرة إلى 32. بغض النظر عن المنسق الخاص بك zigbee، لن يكون من الممكن الاتصال بأكثر من 32 ملحقا.

المفتاح الخاص بي له بقيادة حمراء التي تضيء.

يحدث ذلك أن الفتحات الرئيسية، إما بسبب البيئة المحملة من الطفيليات أو بسبب سوء التغذية.

  1. تحقق كتلة التغذية الخاصة بك

    grep Under /var/log/kern.log
    

    إذا حصلت على الكثير من الخطوط، فعليك تغيير كتلة التغذية.

  2. الابتعاد مفتاح المواد المزعجة: مكبرات الصوت، جهاز التوجيه Wi-Fi، …

  3. إعادة برمجة المفتاح

رخصة

هذا المشروع مُرخص بموجب GPL v3 ( انظر COPYING ).