إرشادات لجلب استنساخ لجهاز التوجيه الصيني الشهير Hame A15 ، المعروف أيضًا باسم "A5-V11"

إذا رأيت ما وراء الآخرين ، فذلك لأنني وقفت على أكتاف العمالقة.
اولا نيوتن


أعتقد أن العديد من الأشخاص يعرفون أن جهاز التوجيه الصيني الصغير Hame A15 (أو بالأحرى النسخ الجماعية منه ، مع TTX المحسّن مقارنة بالأصل ، يتم بحثهم بشكل جيد أيضًا عن طريق الكلمات الرئيسية 3g / 4g router على كل من ebay و aliexpress ). اليوم أردت أن أخبرك كيف أحضرت إلى ذهني جهاز توجيه 6.5 دولارًا وأنفقت 20 دولارًا على ذلك. لماذا؟ ونفس السبب وراء نسج الأساور من الخرز - من أجل تدريب الحركات الدقيقة والبصر (الهيئات المكونة هي بشكل أساسي 0402 :) بالنسبة للجزء الأكبر من أجل الاهتمام بالرياضة ، على الرغم من أنه من المهم أيضًا أن يكون جهاز التوجيه هذا هو قاعدتي المفضلة لمختلف المشاريع (حتى على الرغم من صعوبة الوصول إلى GPIO) ، بدلاً من NEXX WT3020F "الشائعة" و TP-Link TL-MR3020 و TP-Link TL-WR703N وغيرها. والسبب في ذلك هو في المقام الأول حجمها وشكل لوحة الدوائر المطبوعة ، وهو مناسب للتضمين في أي مكان (في الصورة يمكنك تقدير الحجم). في المستقبل ، لتجنب الخلط بين المصطلحات ، سأقوم بتسمية الجهاز الموضح أدناه كما يطلق عليه ويكي wiki openwrt - A5-V11 .



قلب هذا الجهاز هو 360 ميجاهرتز SoC Ralink RT5350F ، على متنه يوجد مضيف USB كامل وذاكرة فلاش 4 ميجابايت وذاكرة SDRAM 32 ميجابايت بتردد 166 ميجاهرتز (وهذا غريب بالمناسبة ، حتى حتى D-link DIR-320 القديمة على متن الطائرة كان DDR أسرع). تحتوي بعض النسخ المستنسخة على 16 ميغابايت من الذاكرة وليست مناسبة دون زيادة ذاكرة الوصول العشوائي للتلاعبات الموضحة في هذه المقالة.


كالعادة ، تظهر الصورة أدناه جهاز توجيه Hame A15 الأصلي.


الاصلي Hame A15
الصورة

وهنا نسخته الصينية المحسنة (في نهاية المقال يمكنك رؤية نسخة أخرى من النسخة ، ولكن أغلى 10 مرات :).


استنساخ الصيني هام A15
الصورة

تم إضاءة الأجزاء الداخلية للبرنامج الثابت بالفعل على المحور ، لذلك لن أتطرق إلى ميزات الترميز. تفاصيل المشاكل والحلول موصوفة على w3bsit3-dns.com . هناك الكثير من المعلومات ، لكنها متناثرة بشكل لا يصدق. آمل أن أجمع النقاط الرئيسية في هذه المقالة ، استنادًا إلى تجربة اللاعبين - "عمالقة إنتاج جهاز التوجيه" :)
الجواب على السؤال "لماذا يحتاج هذا (جهاز التوجيه) إلى مستخدم عديم الخبرة" اقتباس المستخدم ded1971 :


خصائص المستهلك - جهاز توجيه 3G-WiFi متعدد الاستخدامات وصغير الحجم. من السهل القيام برحلات ، أو توصيل مودم 3G / 4G ، أو تنظيم شبكة WiFi الخاصة بك ، أو استخدامها كمكرر لتعزيز WiFi ، أو توصيل الإنترنت بتلفزيون ذكي إذا لم يكن هناك WiFi مدمج. بشكل عام ، مجموعة من الميزات المفيدة للأموال السخيفة.

حسنا ، مقارنة مع ES8266 في كل مكان ومحبوب شعبيا

الجزء الأول تحضيري


عندما كان جهاز التوجيه على البريد ، كان هناك وقت لدراسة مراجعات أصحاب السعادة. المشاكل الرئيسية التي واجهتها الغالبية هي مشاكل ارتفاع درجة حرارة جهاز التوجيه (وبالتالي ، "شفرة النصل") وعدم استقرار الطاقة ، عندما لا يمكن تشغيل جهاز التوجيه لفترة طويلة ("المؤشر" - يضيء مصباحان بشكل خافت ، فمن المستحيل الاتصال بالجهاز عبر إيثرنت).
لمكافحة المشكلة الأولى ، تقرر تثبيت المبرد على الشريحة. للقيام بذلك ، طلبت مشعات ألومنيوم صغيرة بحجم 12x12x3 ملم (بالضبط حجم الشريحة). تم اختيار ارتفاع 3 مم لأنني أردت أن لا يتشبث المبرد البارز بالأشياء (في حقيبة ، على سبيل المثال) ويمكن أن يستقر جهاز التوجيه بثبات على الطاولة.


هذا ما تبدو عليه آلات التكييف المشعة ...

لتثبيت المبرد ، قررت استخدام المادة اللاصقة المذوبة بالحرارة. من بين ما هو متاح في منطقتنا - لم يكن هناك سوى "Alsil-5" لمرة واحدة ، والتي ، على الرغم من الموصلية الحرارية الجيدة إلى حد ما ، لا تعني على الإطلاق تخزينًا طويل الأمد. يجف في غضون يومين (وإذا كنت محظوظًا ، يمكنك شراء جفت بالفعل). لذلك ، على نفس aliexpress ، تم طلب نوعين من المادة اللاصقة المذوبة بالحرارة لمشعات LED عالية الطاقة - Halnziye HY910 و Hcbonyx HC-910 .


مادة لاصقة تذوب الساخنة الصينية القوية

المراجعات حولها في المنتديات المتخصصة ليست سيئة ، على الرغم من أن الخبراء لا يزالون يوصون باستخدام المواد اللاصقة المذوبة بالحرارة ذات الإبوكسي المكونة من مكونين ، مثل Thermopox 85CT ، للمهام الخطيرة. ولكن اذهب للعثور عليه بعد ...
فقط في حالة ، سأقدم أدناه خصائص مقارنة للتوصيل الحراري للذوبان الساخن الذي استخدمته ، الموجود على الإنترنت.


تذوب الساخنة Halnziye HY910 - الموصلية الحرارية 0.975W / mK
المادة اللاصقة المذوبة بالحرارة Alsil-5 - الموصلية الحرارية 1.4-1.6 وات / م
المادة اللاصقة المذوبة بالحرارة Hcbonyx HC-910 - الموصلية الحرارية 1.7W / mK

والصورة العامة :)

من أجل تثبيت المبرد ، اضطررت إلى قطع العلبة (بما في ذلك تحسين نقل الحرارة). للقيام بكل شيء بأكبر قدر ممكن من الدقة ، كان أول شيء فعلته هو رسم أبعاد اللوحة على ورق سميك ، وقطع فتحة للرقاقة ، ثم وضع قالب الكرتون هذا في العلبة. ثم كل شيء بسيط - ارسم محيط الحفرة بقلم رصاص ، وقطعه بسكين كتابي وطحن الملف.



وضع علامات وتشذيب العلبة البلاستيكية للمبرد 12x12



بالتوازي مع تركيب الرادياتير ، من الضروري لحام مكثف SMD الخزفي المفقود 10 uF 6.3 V إلى جهاز التوجيه في دائرة المحول 3.3V. (بناء على نصيحة المستخدم العائد 1 ). يظهر موقع التثبيت في الصورة:



وهنا لوحة مع مكثف 10 ميكروفاراد 6.3 فولت مثبت بالفعل

وفقًا للمراجعات ، ينخفض ​​الاستهلاك الحالي للجهاز ويصبح أكثر استقرارًا. من المفترض ، في المحول 3.3V ، تظهر التموجات على الإخراج الذي يعطل المعالج. يقوم المكثف بتنعيم هذه التموجات.


هام! حاول تثبيت الرادياتير ولحام المكثف قبل بدء تشغيل الموجه وتشغيله. خلاف ذلك ، قد يتبين أن بورجومي فات الأوان للشرب ...


يقوم الأشخاص بحل مشكلة الطاقة عن طريق تثبيت شرائح مراقبة الطاقة المتخصصة ، بدلاً من سلسلة RC القياسية لجهاز التوجيه ، على سبيل المثال ، KR1171SP28 أو DS1816 أو MAX809TTR . أعجبني على الفور خيار استخدام مشرفي الطاقة مكسيم. المهمتان الرئيسيتان اللتان يمكن للمشرفين حلهما هما إبقاء وحدة التحكم في حالة إعادة الضبط حتى يصل جهد الإمداد إلى القيمة المحددة ويستقر ، أو إعادة ضبط وحدة التحكم عندما ينخفض ​​جهد الإمداد إلى ما دون المستوى الحرج أو عندما ينخفض ​​الجهد فجأة. أيضًا من مزايا هذا النوع من المشرف ، يمكن ملاحظة أنه لا توجد مكونات إضافية مطلوبة لتثبيت الدائرة المصغرة ، ومن حيث الحجم يقع جهاز أشباه الموصلات هذا في مكان العناصر التي تمت إزالتها (نعم ، يجب عليك أولاً إزالة المقاومات والمكثفات التي لم تعد هناك حاجة إليها ، ثم الانتقال بعد ذلك جديلة فوق منصات).



لم يسفر البحث عن aliexpress عن أي شيء ، ولكنه أجرى بحثًا في كتالوج CHIPiDIP ، حيث تم العثور على أداة تشكيل نبضات MAX809TEUR + T (بجهد) (بجهد 3.08 فولت) ، تم لحام أحدها بنجاح إلى جهاز التوجيه.



ضبط المشكل النبضي (إعادة الضبط) MAX809TEUR + T.



بالمناسبة ، لا يسعني إلا أن أذكر مكواة لحام USB الصينية ، والتي بدونها لم أكن لأدير هذا الإجراء أبدًا (حتى مع ميكروويف مدح ...).
من أجل عدم إضاعة مكواة لحام ، قررت في نفس الوقت لحام كتلة اتصال على منصات الاتصال الخاصة بوحدة تحكم UART (الكعب) لتبسيط الاتصال بأسلاك دوبونت من مصممي Arduino. تتناسب الوسادات بشكل مثالي مع درجة تلامس تبلغ 2 مم (العرض القياسي الواسع 2.54 مم واسع بالفعل). هذه ، على سبيل المثال. لجعله أكثر ملاءمة للحام ، بمساعدة الملقط ، قمت بثني أطراف جهات الاتصال بالحرف G وتعليب البقع على لوحة جهاز التوجيه.


تحضير وحدة UART

ثم كان كافياً لتثبيت الكتلة على الكعب وتسخين الوصلة قليلاً حتى يذوب اللحام. من المهم عدم المبالغة في ذلك (وهو ما يسهل القيام به بمكواة لحام قوية) ، وإلا يمكن للخضوع أن تسقط ببساطة من ارتفاع درجة الحرارة. في هذه الحالة ، تظهر الصورة نقاط اختبار النسخ الاحتياطي حيث يمكنك اللحيم.



بالمناسبة ، يمكنك لحام جهات الاتصال بطريقة أخرى ، ولكن لا يمكن إغلاق الحالة تمامًا.


اللحام البديل لجهات اتصال UART

حول هذا ، انتهى الجزء التحضيري وبدأ الجزء الرئيسي.


الجزء الثاني "مبرمج"


كما ذكرت في بداية المقال ، جهاز التوجيه لديه ذاكرة صغيرة ، فقط 4 ميجابايت. بالطبع ، يمكن لشخص أن يتذكر حقيقة أن "640 كيلو بايت يجب أن تكون كافية للجميع." ولكن بعد قضاء أسبوع في محاولة دفع جميع الحزم الضرورية (وهناك 8 ميجابايت (!)) في البرنامج المفتوح الذي تم تجميعه ذاتيًا لـ D-Link DIR-320 ، أعرف الآن بالتأكيد أنه لا يستحق التوفير في الذاكرة. لذلك ، تقرر تغيير الفلاش إلى سعة أكبر وفي نفس الوقت بتكلفة معقولة (حتى لا تكون أكثر تكلفة من جهاز التوجيه نفسه). الرقائق ذات التردد الفعال (SPI Clock rate) على الأقل 100 ميجاهرتز والجهد الكهربائي المطلوب 3.3 فولت مطلوبة للاستبدال. من الشركات المصنعة - Winbond أو أي شركة أخرى (En = Eon، Mx = Macronix، Pm = PMC، At = Atmel). من ما تنصح openwrt.org W25Q128BV ، MX25L128 (35F) ، S25FL128P ، S25FL129P ، GD25Q128C ، GD25Q128CSIG. يخبرنا الرقم 128 في العلامة أن حجم محرك الأقراص المحمول هو 16 ميجابايت (128 ميجابت = 16 ميجابايت). يرجع اختيار الحجم الاسمي إلى حقيقة أن مبرمج صيني رخيص رقائق 24/25 CH341A (حوله أدناه) يمكنه العمل مع مثل هذا الحجم دون الرقص مع الدف. بالنسبة للجماهير ، يمكنني القول أنه يمكن لحام 32 ميجابايت (على سبيل المثال ، W25Q256FV ، MX25L25635F ، N25Q256A ، MX25L25645GM2I-10G وحتى 64 ميجابايت (MX25L51245G ، MT25QL512AB). ومع ذلك ، أود أن أشير إلى أن بطاقات الأسعار للذاكرة بعيدة عن وحدات 64 ميجابايت. ألاحظ أن الحديث عن رقائق الذاكرة فقط في حزمة SOP8 ، باعتبارها الأكثر ملاءمة للحام ، يمكنك بالطبع أخذ الرقائق في حالات WSON8 باستخدام منصات الاتصال بدلاً من الأرجل ، لكن اللحام يستغرق وقتًا طويلاً ، وقد لا تفي النتيجة بالتوقعات.
يمكنك وميض شريحة ذاكرة بعدة طرق مختلفة ، اعتمادًا على ما هو متاح:
أ) يوجد صمام ثنائي / مكثف ومنفذ متوازي (أبسط مبرمج) - ننظر إلى تعليمات البرامج الثابتة على موقع الويب التشيكي أو باللغة الروسية .


لذا فإن أبسط مبرمج من موصل LPT وبضع تفاصيل تبدو في الحياة
الصورة

ب) هناك أي Arduino (Pro ، Micro ، Nano ، إلخ) - سنقوم بإعداد مبرمج منهم لمحركات SPI flash الخاصة بنا وفقًا للوصفة التالية.
ج) إذا كان هناك راسبيري باي - انظر هنا
د) هناك مبرمج USBASP "شعبي" (الذي كتب ذات مرة على حبري) - نقوم بإعداده وفقًا للوصفة رقم 2 .
هـ) لا يوجد سوى رغبة وقليل من المال - نشتري على aliexpress مبرمج صيني CH341A لفلاش 24/25 SPI ونبدأ العمل بهدوء.


محرك الأقراص المحمول نفسه متصل بالمبرمج (المبرمجين) على النحو التالي:


pinout رقاقة الذاكرة
الصورة

يمكن لحام محرك الأقراص المحمول وتوصيله بالوسادات / محولات المبرمج ، أو يمكنك لحام أسلاك Dupont المذكورة بالفعل من Arduino إليه ، وتوصيل الأسلاك بالمبرمج بالفعل. "عمل" الفلاش هم جهات الاتصال MISO و MOSI و CLK و CS و VCC و GND . إذا تم تنفيذ البرمجة دون إزالة الدائرة المصغرة من اللوحة ، فمن الأفضل فك المجلد ورفع جهة اتصال VCC قليلاً فوق مستوى اللوحة لفترة من الوقت. بعد الانتهاء من العمل ، اضغط على القدم إلى اللوح وقم بلصقه.
نظرًا لأنني لم أكن أرغب في البحث عن منفذ LPT ، فقد قررت العمل وفقًا للخيار الأخير هـ) وشراء قطعة إضافية من الحديد في متنزهي. هذا الشيء يسمى CH341A ، والغريب أنه مبرمج يعتمد على رقاقة CH341 ، وراء تأليف شركة عملاقة صينية "معروفة على نطاق واسع" Jiangsu QinHeng Ltd. :)


مخطط دارة مبرمج
الصورة

عند طلب مبرمج فقط ، أوصيك بشدة بشراء محول بالإضافة إلى حالات SOP8 / SOIC8 إلى حالات DIP ومقطع مقطع للعمل مع الدوائر المصغرة.


محول وكليب


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


يبدو وكأنه مجموعة جاهزة

من تجربتي الخاصة ، سأقول أن مشبك مشابك الغسيل يعمل في كل مرة أخرى وعلى الأرجح يجب أن تكون الشريحة غير ملحومة وتوضع في محول SOP8-DIP أو حتى ملحومة على منصات على المبرمج نفسه.


إضافة : أخيراً جاء المحول الخاص بي ، أو كما يطلق عليه بشكل صحيح محول ZIF SOP8-DIP8 150 مل . هذا المحول مناسب للدوائر المصغرة التي يبلغ عرض غلافها 150 مل ، ومسافة طرفية 1.27 مم. بالإضافة إلى 150 مل ، قد يكون هناك 200 مل ، لذلك من المهم الانتباه إلى ذلك عند الطلب في المزادات (لدي رقائق صغيرة ونفس الشيء ، لذلك هناك محولين).


كيفية التمييز بصريًا بين محول ZIF 150 و 200 مل

القطعة مريحة بشكل لا يصدق ، يتم تثبيت الدائرة الصغيرة بسهولة وبشكل طبيعي وواضح للغاية (يشبه النظام الزردية). للقيام بذلك ، ما عليك سوى النقر على الجزء العلوي النابض من العلبة ، ووضع الشريحة على المناطق المكشوفة وتحرير هذا الجزء من العلبة. تمتد جهات الاتصال العلوية المحملة بالزنبرك عند تحريرها وتثبت المشابك تلقائيًا (صورة للوضوح ، لأن الدائرة المصغرة 200 مل تقع في محول 150 مل ، لذا لم أركلها ، فقد علقتها في متناول اليد). ثم نقوم بتثبيته في المبرمج ، حيث ننظر إلى القدم 1 (دائرة على الشريحة). اتضح مثل هذا:



صور أكثر جمالا من SOIC8 SOP8 على محول DIP8




لقد قمت بتصوير شريحة ذاكرة أصلية باستخدام محطة لحام بالهواء الساخن ، وبالنسبة لأولئك الذين ليس لديهم مثل هذه المعدات ، أوصي بشدة باستخدام طريقة سبيكة Rose . بعد العمل ، تأكد من إزالة بقايا سبيكة Rose بجديلة من اللوح ودوائر دقيقة ، بعيدًا عن الخطيئة.
نقوم بتوصيل الدائرة المصغرة التي تمت إزالتها بالمبرمج (لمن وكيف وكيف اتضح). كنت كسولًا جدًا بالنسبة للحام ، وحاولت بصدق الضغط على القصاصة ، ونتيجة لذلك ، كانت الأرجل مسطحة جدًا بواسطة الربيع. لكنني لم أكن أنوي إعادة لحام فلاش 4 ميجابايت ، ولكن يجب أن يضمن الاتصال الجيد قراءة سلسة. وهكذا حدث. النوتة بالنسبة لأولئك الذين لحام لحام الدوائر المصغرة - انظر بعناية إلى الأرقام الموجودة على بطاقات المحول واللحام وفقًا لها. في حالة مقطع ، يكون السلك الأحمر الموجود في حلقة المفتاح على الساق رقم 1.



تم التقاطها بنجاح من ...




بعد التعامل مع الحديد ، يجب عليك التعامل مع البرامج. كما كتبت بالفعل ، في هذا المركز ، يبرز هذا المبرمج بشكل دوري في المقالات . من الواضح أنه يعمل بدون مشاكل مع جميع أنظمة التشغيل الحديثة (على سبيل المثال ، في برامج تشغيل Windows 10 يتم سحبها تلقائيًا من الشبكة ، وفي Linux كانوا في النواة لعدة سنوات). ولكن ، لكنك لا تعرف أبدًا ما يحدث ، هنا يمكنك العثور على برامج تشغيل (للوضع التسلسلي / المتوازي) كملفات منفصلة فقط في حالة. للبرمجة في Windows ، غالبًا ما يتم استخدام تأليف البرامج الصينية ل SkyGz معينة. بالنسبة إلى Linux ، هناك مشاريع مفتوحة ch341prog (SPI) و ch341eepromtool (I2C) ، يمكنك استخدام flashrom "folk". نظرًا لأنني أستخدم Windows ، ولم تكن المراجعات حول "برنامج الصين" لمعظم المستخدمين إيجابية للغاية (خاصةً حول الإصدارات الجديدة 1.28 ... 1.30) ، لذلك لن يتم إغراء القدر ، تمت قراءة الشريحة باستخدام مبرمج روسي بسيط وموثوق به AsProgrammer الإصدار 1.4.0 . بالمناسبة ، إذا لم يعجبك شيء فجأة / لم يكن واضحًا ، أو على سبيل المثال ، تحتاج إلى إضافة دائرة صغيرة جديدة ، يمكنك بسهولة الكتابة في موضوع "الدعم الفني" والحصول على تعليقات سريعة.


لماذا لا يستحق شراء ذاكرة فلاش أكثر من 16 ميجا بايت

سأسمح لنفسي باستطراد بسيط وأشرح عزوفي عن تثبيت محرك أقراص فلاش 32 ميجابايت (فرق السعر من 16 ميجابايت ليس حرجًا). والحقيقة هي أنه لا في البرامج الصينية (الإصدارات 1.29 أو 1.30) ، ولا في دعم AsProgrammer المذكور للرقائق الدقيقة على W25Q256FV ، MX25L25635F ، N25Q256A ، MX25L25645GM2I-10G. ربما يكون السبب في ذلك هو أنه بالنسبة لفلاش SPI ، فإن الحد الأقصى للمبلغ هو 128 ميجابت (الحد الأقصى الذي يمكن معالجته باستخدام وضع العنونة 3 بايت الذي اعتمده JEDEC). وهنا لا يوجد الكثير من الخيارات. على سبيل المثال ، يمكنك الكتابة باستخدام الفلاش المعدّل في النصف الأول من شريحة w25q256 (حجم 16 ميغابايت) ، مثل شريحة w25q128 المألوفة لهذا البرنامج 16 ميغابايت ووضع محمل الإقلاع الصحيح (سلالة ، على سبيل المثال) وأقسام المصنع مع معلومات "الخدمة" في هذا المجلد (ماك عنوان جهاز التوجيه ، ومعايرة wi-fi ، وما إلى ذلك). وبعد أن تم التمهيد بالفعل في وضع bootloader (في حالة الاعتراف الناجح به لحجم كامل من الدوائر المصغرة) - سيكون من الممكن وميض برنامج ثابت تم تجميعه مسبقًا منه. يمكنك عمومًا شراء محركات أقراص فلاش للمستقبل والانتظار حتى يظهر دعم هذه الأحجام في الإصدارات المعطلة من البرنامج الصيني لـ ch341a أو عند الانتهاء من flashrom. للتلخيص ، من الأفضل أن تأخذ 16 ميجا بايت :) لأن "تعبت من الوصول إلى النجوم ، التقط ما يكمن تحت قدميك."


إن العمل مع AsProgrammer أمر بسيط للغاية ، حدد أولاً رقاقة صغيرة في قائمة "Chip" ، ثم انقر فوق الزر "قراءة". بضع دقائق ومكب في جيبنا :)


قراءة تفريغ من رقاقة المصنع 4 ميغا بايت

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


مصنع 4MB هيكل البرامج الثابتة

0x00000000-0x00030000: "أداة تحميل التشغيل"
0x00030000-0x00040000: "التكوين"
0x00040000-0x00050000: "المصنع"
0x00050000-0x0011282a: "Kernel"


يجب فتح ملف التفريغ المحفوظ في أي محرر HEX (أنا معتاد على استخدام WinHex ) وعلى العنوان 105720 (العنوان بالتدوين العشري ، في ست عشري سيكون 00019CF8) نقوم بتغيير 40 00 إلى 00 01 لـ 16 ميغا بايت فلاش (جيد ، أو 80 00 إذا فجأة قررت حفظ قرش و شراء شريحة 8 ميجا بايت). نحفظ البرامج الثابتة المعدلة للاستخدام في المستقبل. بالمناسبة ، العنوان 105720 ليس نقطة من نوع من المرفقات وقد تكون هناك أرقام أخرى موجودة بشكل جيد ، خاصة إذا كنت قد حاولت بالفعل فتح برنامج bootloader للبرامج الثابتة المفتوحة ، إلخ. لذلك ، إذا لم يحدث أي شيء مفاجئ ، والعزيزة "40 00 "على العنوان 105720 غير مرئي ، فنحن نبحث في قائمة المحرر السداسي العشري للبحث عن طريق قيم HEX وننقل تركيبة البايت الرئيسية" 00 00 16 40 "هناك. سيؤدي ذلك إلى الأرقام / العنوان المطلوب.


إيجاد التركيبة المرغوبة 00 00 16 40

لماذا كانت هناك حاجة لذلك؟ وبعد ذلك ، بحيث يسمح لك محمل الإقلاع المعدل بتعديل جهاز التوجيه عبر UART عبر TFTP ، باستخدام برامج ثابتة أكبر.
بعد ذلك ، املأ البرامج الثابتة المحفوظة في محرك أقراص محمول أكبر حجمًا تم شراؤه مسبقًا بدءًا من العنوان 0 (من البداية). في حالة البرمجة الناجحة ، قم بلحام رقاقة الذاكرة في مكانها وانتقل إلى الخطوة التالية. بالمناسبة ، عند برمجة دائرة صغيرة تم شراؤها ، شعرت بالأسف لقرصها بمقطع واضطررت إلى لحامها في الكتلة :)


تنزيل البرامج الثابتة

الجزء الثالث ، openwrt-shnaya


الخطوة التالية هي بناء نسختك الخاصة من openwrt. إذا لم أكن بحاجة إلى بعض الحزم المحددة التي لا يمكن العثور عليها في البرامج الثابتة الرسمية (و "من المتحمسين") الموجودة حاليًا ، فيمكنك فقط تنزيل أول إصدار متاح من البرنامج الثابت لنموذج جهاز التوجيه وتحميله من خلال دوائر دقيقة صغيرة من الذاكرة المعدلة برنامج bootloader أو بالطريقة القديمة لاستخدام المبرمج أعلاه. لكنني بحاجة إلى تضمين بعض الحزم غير المعيارية في البرامج الثابتة لجهاز التوجيه الخاص بي ، لذلك كان علي أن أذهب بطريقة أكثر تعقيدًا وأن أبني خطًا مفتوحًا لنفسي. يتم وصف هذا الإجراء جيدًا للعديد من طرازات أجهزة التوجيه (على سبيل المثال ، لـ Tp-Link TL-WR741ND على Habré و Tp-Link TL-MR3020 و D-Link DIR320A1 والآلاف منها ...) ، لذلك سأقتصر على قائمة موجزة بالخطوات الرئيسية (يمكن الحصول على مزيد من التفاصيل انظر هنا وهنا ).


إذا لم يكن هناك جهاز * nix في المنزل ، فإن أول شيء نقوم بتثبيته على VirtualBox هو Ubuntu x64 (أو شيء ما).


تحديث المعلومات حول الحزم المثبتة
sudo apt-get update
قم بتثبيت ما يلزم. بالنسبة إلى Ubuntu 16.04 LTS ، يبدو كما يلي:
sudo apt-get install البنية الأساسية التخريب الزئبقي libncurses5-dev zlib1g-dev gawk gcc-multilib flex git-core gettext libssl-dev unzip


انسخ شفرة المصدر للبرنامج الثابت المحدد إلى جهاز الكمبيوتر الخاص بك باستخدام الأمر git clone . تحت المفسد - روابط لمصادر إصدارات مختلفة من openwrt.


مستودعات Git لمشاريع OpenWrt و LEDE

06/18/1
git clone git: //github.com/openwrt/openwrt.git -b v18.06.1
06/18/0
git clone git: //github.com/openwrt/openwrt.git -b v18.06.0
1 / 17.5
git clone git: //github.com/openwrt/openwrt.git -b v17.01.5
01/17/4
git clone git: //github.com/openwrt/openwrt.git -b v17.01.4
01/17/3
git clone git: //github.com/openwrt/openwrt.git -b v17.01.3
01/17/2
git clone git: //github.com/openwrt/openwrt.git -b v17.01.2
01/17/1
git clone git: //github.com/openwrt/openwrt.git -b v17.01.1
01/17
git clone git: //github.com/openwrt/openwrt.git -b v17.01.0
05/15/1
git clone git: //github.com/openwrt/archive.git -b v15.05.1
15.05
git clone git: //github.com/openwrt/archive.git -b v15.05
07/14
git clone git: //github.com/openwrt/archive.git -b v14.07
12.09
git clone git: //github.com/openwrt/archive.git -b v12.09


سيتم نشر السلعة التي تم تنزيلها في دليل openwrt. نذهب إليه باستخدام الأمر cd ، ونقوم بتبديل وتحديث المكونات الإضافية بالأمر
./scripts/feeds update -a && ./scripts/feeds install –a
حان الوقت الآن لإصلاح "الملفات المهمة" حتى يتمكن المترجم من تجميع البرامج الثابتة لمحرك أقراص الفلاش الموسع لدينا بشكل صحيح ، وعدم التوقف إذا تجاوز فجأة 4 ميغابايت الموصوفة . للقيام بذلك ، قم بما يلي. في الدليل الذي تم تنزيله بمصادر مفتوحة في ملف الهدف / linux / ramips / dts / A5-V11.dts ، نستبدل بالقيم الموضحة في الصورة أدناه (استخدمت محرر nano ، من الممكن أيضًا من خلال F4 في mc).


تحرير ملف * .dts لزيادة الذاكرة (05/15/1)

قم بحفظ الملف وتشغيله في وحدة التحكم
جعل defconfig
وتطبيق الإعدادات القياسية للملف الشخصي ، ثم قم بإنشاء menuconfig . هنا النقطة الأساسية الرئيسية هي اختيار ملف التعريف الصحيح:


النظام المستهدف: Ralink RT288x / RT3xxx
الهدف الفرعي: اللوحات القائمة على RT3x5x / RT5350
الملف الشخصي المستهدف: A5-V11

وبعد ذلك - عن طريق القياس مع تجميع openwrt لأجهزة التوجيه الأخرى (أعطيت الروابط أعلاه) ، نقوم بتعديل مجموعة الحزم بالطريقة التي نحتاجها ونحفظ التكوين (في ملف .config ). بالمناسبة ، إذا كنت تخطط لتغيير التكوينات بشكل متكرر ، يمكنك إجراء نسخ احتياطي لأوامر البرامج النصية / diffconfig.sh> mydiffconfig في كل مرة ، لذلك نقوم بحفظ تغييرات التكوين الخاصة بنا إلى ملف mydiffconfig في كل مرة. بعد إجراء التكوين اللازم (واختيار جميع الحزم اللازمة) ، نبدأ البناء بالأمر make .
بسبب التجميع الذاتي للنواة ، قد تجد أن العديد من الحزم من المستودعات الرسمية غير مناسبة للتثبيت. يجب أن يؤخذ هذا في الاعتبار ، وفي كثير من الأحيان يتم تعيين علامة "M" أمام الحزمة المطلوبة. ثم يمكن العثور على هذه الحزم في مجلد openwrt / bin / ramips / package وتحميلها على بعض خادم HTTP لإنشاء مستودع البلاك جاك الشخصي الخاص بك و ... لـ OpenWRT :).
بالمناسبة ، تذكرت أنه من السهل جدًا تشغيل الأمر make في النموذج التالي:
جعل V = 99 2> & 1 | قمزة build.log | خطأ grep -i
في هذه الحالة ، يحفظ المترجم نسخة تفصيلية كاملة من معلومات التصحيح حول التجميع إلى ملف build.log في دليل openwrt ويعرض فقط الأخطاء على الشاشة. ثم يتم إرفاق هذا السجل بسهولة بالمنتديات للعثور على سبب الخطأ أو طرح سؤال. بالإضافة إلى ذلك ، من الرائع تحديد الحزم التي يتوقف فيها المترجم عن العمل. يمكنك العثور على النص المذكور في السجل عن طريق البحث في الدليل باستخدام الأمر
grep –Hr "TEXT" <المسار إلى دليل البحث> | قطع د: -f1 | الفرز -u
ولكن آمل بصدق أن يكون التجميع ناجحًا ولا داعي للبحث عن أخطاء. بعد الانتهاء من العملية ، يمكنك العثور على ملفات البرامج الثابتة في مجلد سلة مجلد Openwrt ، مثل شيء openwrt-ramips-rt305x-a5-v11-squashfs-sysupgrade.bin . نأخذ هذا الملف ونذهب إلى المرحلة النهائية.


الجزء الرابع ، وحدة التحكم


بعد جمع البرامج الثابتة في أحشاء الجهاز الظاهري ، كل ما تبقى هو إسقاطها في جهاز التوجيه. أنا أحب الخيار مع UART (ليس من أجل أي شيء ملحوم بالوسادة إلى النيكل الملامس). للاتصال ، تحتاج إما إلى محول USB إلى TTL UART ، أو على الأقل كبل بيانات من شركة Siemens قديمة. لحسن الحظ ، كان لدي مثل هذا المحول على رقاقة FT232 (CP2102 و CH340 في كل مكان مناسبة أيضًا). يظهر pinout pinout في الصورة.



Pinouts الأساسية والنسخ الاحتياطي لوحدة تحكم UART

نقوم بتوصيل جهات الاتصال بالمحول على النحو التالي:


جهاز توجيه GND ← محول GND
جهاز توجيه RX → 470 أوم -1 كيلو أوم المقاوم ← محول TX
TX Router → محول RX

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


لذلك كل شيء متصل ...

في نفس الوقت ، شيء من هذا القبيل


▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒r▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒1▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒A▒▒ (0▒▒▒▒▒
؟ ▒▒▒ {▒F▒▒▒▒▒ ^ ▒▒B▒▒▒KӉSP @ ▒ (Y <0▒0▒ $ ▒ @ ▒▒▒ ▒▒▒ 怘 ▒▒ff▒▒▒▒▒`▒▒ ▒▒▒▒▒▒▒▒▒x▒▒x▒▒▒▒▒x ~ `▒▒ 怘 ▒▒▒▒▒x▒▒f▒▒▒▒▒f▒▒`ff▒▒▒▒▒▒▒ ▒▒fx▒▒▒f ~ f▒f▒▒`fxf▒▒▒▒`fx▒▒ ~ ▒x▒f▒▒f ~ f▒`▒f▒fx▒ ~ ▒f▒xf▒ ~ ▒▒fx ▒▒x▒▒▒xx▒▒▒▒xx▒▒▒▒x▒▒▒xf▒▒`x▒▒▒▒▒▒fxf▒x▒▒`▒▒▒f▒▒f▒▒f▒fxx▒ x▒ 枘 ▒x▒f▒▒

قام المقاوم (يمكنك توصيل أي ، في نطاق من 470 أوم إلى 1 كيلو أوم) بإصلاح كل شيء. وهنا ، على سبيل المثال ، يوصي المؤلف عمومًا باستخدام شريحة عازل الإشارة الرقمية AduM1201 للاتصال بـ UART للفصل. لكن المقاوم كان كافياً بالنسبة لي ، والذي أتمناه لك أيضًا.


UART و AduM1201
الصورة

نتلقى الإشارة من جهاز التوجيه باستخدام البرنامج الطرفي على جهاز الكمبيوتر. بطريقة ما ، لم أنجح مع المفضلة لدى بوتي ، وأستخدم برنامج Terminal الممتاز. حدد منفذ COM الظاهري المطلوب (الذي يجلس عليه USB-UART) ، قم بتعيين المعلمات:


السرعة: 57600
بت البيانات: 8
التكافؤ: لا يوجد
بتات التوقف: 1

وانقر فوق اتصال. الآن ، عندما يتم توفير الطاقة لجهاز التوجيه ، سنرى سجلات المحمل في وحدة التحكم:


يقوم برنامج Bootloader بتسجيل A5-V11 كما هو

U-Boot 1.1.3 (11 أبريل 2013 - 00:10:51)
اللوحة: Ralink APSoC DRAM: 32 ميجابايت
مؤشر relocate_code على: 81fb4000
spi_wait_nsec: 42
رقم تعريف جهاز spi: ef 40 18 0 0 (40180000)
تحذير: معرف شريحة غير معروف ، يرجى تحديث برنامج bootloader!
raspi_read: من: 30000 لين: 1000
. *** تحذير - CRC سيئة ، باستخدام البيئة الافتراضية
==============================================
إصدار Ralink UBoot: 3.6.0.0




ASIC 5350_MP (Port5 <-> None)
DRAM_CONF_FROM: شريط الإقلاع
DRAM_TYPE: SDRAM
DRAM_SIZE: 256 ميجابت
DRAM_WIDTH: 16 بت
DRAM_TOTAL_WIDTH: 16 بت
TOTAL_MEMORY_SIZE: 32 ميجابايت
مكون الفلاش: SPI Flash
التاريخ: 11 أبريل 2013 الوقت: 00: 10: 51
==============================================
icache: مجموعات: 256 ، طرق: 4 ، linez: 32 ، الإجمالي: 32768
dcache: مجموعات: 128 ، طرق: 4 ، linez: 32 ، الإجمالي: 16384


تردد وحدة المعالجة المركزية = 360 ميجا هرتز

تقدير حجم الذاكرة = 32 ميجابايت
الرجاء اختيار العملية:
1: قم بتحميل كود النظام إلى SDRAM عبر TFTP.
2: قم بتحميل رمز النظام ثم اكتب إلى Flash عبر TFTP.
3: رمز نظام التمهيد عبر فلاش (افتراضي).
4: إدخال واجهة سطر الأوامر التمهيد.
7: قم بتحميل كود Boot Loader ثم اكتب إلى Flash عبر Serial.
9: قم بتحميل كود Boot Boot Loader ثم اكتب إلى Flash عبر TFTP.
4 3 2 1
لقد اخترت 3
0
3: رمز نظام تمهيد النظام عبر الفلاش.


تمهيد الصورة في bc050000 ...


raspi_read: من: 50،000 لين: 40
. اسم الصورة: MIPS OpenWrt Linux-3.7.5
تم إنشاء: 2013-04-11 14:41:22 UTC
نوع الصورة: MIPS Linux Kernel Image (lzma مضغوط)
حجم البيانات: 915849 بايت = 894.4 كيلوبايت
عنوان التحميل: 80000000
نقطة الدخول: 80.000.000
raspi_read: من: 50040 لين: df989
... التحقق من المجموع الاختباري ... حسنا
إلغاء ضغط صورة Kernel ... حسنًا
لا يوجد init


نقل السيطرة إلى لينكس (على العنوان 80000000) ...


إعطاء ذاكرة بحجم لينكس بالميغابايت ، 32


جاري بدء تشغيل kernel ...
[0.000000] إصدار Linux 3.7.5 (lich @ lich-pc) (إصدار مجلس التعاون الخليجي 4.6.4 20121210 (الإصدار التجريبي) (Linaro GCC 4.6-2012.12)) # 2 الخميس 11 أبريل 22:41:02 CST 2013
تم تمكين [0.000000] bootconsole [early0]
[0.000000] مراجعة وحدة المعالجة المركزية هي: 0001964c (MIPS 24KEc)
[0.000000] معرف Ralink RT5350: 1 مراجعة: 3 يعمل بسرعة 360.00 ميجاهرتز
[0.000000] خريطة ذاكرة الوصول العشوائي الفعلية المحددة:
[0.000000] الذاكرة: 02000000 @ 00000000 (قابلة للاستخدام)
[0.000000] خريطة ذاكرة الوصول العشوائي الفعلية المعرفة من قبل المستخدم:
[0.000000] الذاكرة: 02000000 @ 00000000 (قابلة للاستخدام)
[0.000000] الحرف الأول غير موجود أو فارغ - تعطيل الحرف الأول
[0.000000] نطاقات المنطقة:
[0.000000] عادي [ذاكرة 0x00000000-0x01ffffff]
[0.000000] تبدأ المنطقة المنقولة لكل عقدة
[0.000000] نطاقات عقدة الذاكرة المبكرة
[0.000000] العقدة 0: [mem 0x00000000-0x01ffffff]
[0.000000] ذاكرة التخزين المؤقت للتعليمات الأساسية 32 كيلوبايت ، VIPT ، 4 اتجاهات ، حجم الخط 32 بايت.
[0.000000] ذاكرة تخزين مؤقت للبيانات الأولية 16 كيلو بايت ، 4 اتجاهات ، VIPT ، بدون أسماء مستعارة ، بحجم 32 بايت
[0.000000] تم إنشاء قائمة مناطق واحدة في ترتيب المنطقة ، وتم تجميع التنقلات. عدد الصفحات: 8128
[0.000000] سطر أوامر Kernel: board = MPR-A1 console = ttyS1،57600 mtdparts = spi0.0: 192k (u-boot) ro، 64k (u-boot-env) ro، 64k (factory) ro، 896k (kernel ) ، 2880 كيلو (rootfs) ، 3776 كيلو @ 0x50000 (برنامج ثابت) rootfstype = squashfs ، jffs2 mem = 32M
[0.000000] إدخالات جدول تجزئة PID: 128 (الترتيب: -3 ، 512 بايت)
[0.000000] إدخالات جدول تجزئة ذاكرة التخزين المؤقت لطب الأسنان: 4096 (الترتيب: 2 ، 16384 بايت)
[0.000000] إدخالات جدول تجزئة Inode-cache: 2048 (الترتيب: 1 ، 8192 بايت)
[0.000000] __ex_table تم الفرز بالفعل ، وتخطي الترتيب
[0.000000] كتابة سجل ErrCtl = 00023ff6
[0.000000] سجل إعادة قراءة ErrCtl = 00023ff6
[0.000000] الذاكرة: 29632 كيلو / 32768 كيلو بايت متاحة (كود 1969 كيلو نواة ، 3136 كيلو محفوظة ، بيانات 473 كيلو ، 180 كيلو بايت ، 0 كيلو عالية)
[0.000000] SLUB: Genslabs = 9، HWalign = 32، Order = 0-3، MinObjects = 0، CPUs = 1، Nodes = 1
[0.000000] NR_IRQS: 48
[0.000000] تم تمكين وحدة التحكم [ttyS1] ، وتم تعطيل وحدة تحكم التمهيد
[0.000000] تم تمكين وحدة التحكم [ttyS1] ، وتم تعطيل وحدة تحكم التمهيد
[0.010000] حلقة تأخير المعايرة ... 239.61 BogoMIPS (lpj = 1198080)
[0.080000] pid_max: افتراضي: 32768 الحد الأدنى: 301
[0.080000] إدخالات جدول تجزئة جبل التخزين المؤقت: 512
[0.090000] NET: عائلة بروتوكول مسجل 16
[0.100000] MIPS: الآلة HAME MPR-A1
[0.130000] السيرة الذاتية: إنشاء بلاطة <bio-0> عند 0
[0.140000] التحول إلى MIPS مصدر clocks
[0.150000] NET: عائلة بروتوكول مسجلة 2
[0.160000] إدخالات جدول التجزئة التي أنشأها TCP: 1024 (الترتيب: 1 ، 8192 بايت)
[0.180000] إدخالات جدول تجزئة ربط TCP: 1024 (الترتيب: 0 ، 4096 بايت)
[0.190000] TCP: تم تكوين جداول التجزئة (تم إنشاء 1024 ربط 1024)
[0.200000] TCP: رينو مسجلة
[0.210000] إدخالات جدول تجزئة UDP: 256 (الترتيب: 0 ، 4096 بايت)
[0.220000] إدخالات جدول تجزئة UDP-Lite: 256 (الترتيب: 0 ، 4096 بايت)
[0.230000] NET: عائلة بروتوكول مسجلة 1
[0.280000] سكواشس: الإصدار 4.0 (2009/01/31) فيليب لوغر
[0.290000] jffs2: الإصدار 2.2 (NAND) (ملخص) (LZMA) (RTIME) (CMODE_PRIORITY) © 2001-2006 Red Hat، Inc.
[0.320000] تم ضبط msgmni على 57
[0.320000] مسجل جدولة IO مسجل
[0.330000] تم تسجيل الموعد النهائي لجدولة io (افتراضي)
[0.340000] المسلسل: 8250/16550 برنامج تشغيل ، منفذين ، تعطيل مشاركة IRQ
[0.360000] serial8250: ttyS0 عند MMIO 0x10000500 (irq = 13) هو 16550A
[0.370000] serial8250: ttyS1 عند MMIO 0x10000c00 (irq = 20) هو 16550A
[0.390000] ramips-spi ramips-spi.0: سيد غير مملوك ، تم إهماله
[0.410000] m25p80 spi0.0: وجد w25q128 ، متوقع pm25lq032
[0.420000] m25p80 spi0.0: w25q128 (16384 كيلوبايت)
تم العثور على [0.430000] 6 أقسام cmdlinepart على جهاز MTD spi0.0
[0.440000] إنشاء 6 أقسام MTD على "spi0.0":
[0.450000] 0x000000000000-0x000000030000: "u-boot"
[0.460000] 0x000000030000-0x000000040000: "u-boot-env"
[0.480000] 0x000000040000-0x000000050000: "مصنع"
[0.490000] 0x000000050000-0x000000130000: "نواة"
[0.500000] 0x000000130000-0x000000400000: "rootfs"
[0.520000] مليون دينار: تعيين "rootfs" ليكون نظام ملفات الجذر
[0.530000] مليون دينار: تم إنشاء القسم "rootfs_data" تلقائيًا ، ofs = 380000 ، len = 80000
[0.550000] 0x000000380000-0x000000400000: "rootfs_data"
[0.560000] 0x000000050000-0x000000400000: "البرامج الثابتة"
[0.580000] ramips-wdt ramips-wdt: يجب أن تكون قيمة المهلة 0 <timeout <= 35 ، باستخدام 35
[0.600000] TCP: مكعب مسجل
[0.610000] NET: عائلة بروتوكول مسجل 17
[0.620000] 8021q: دعم 802.1Q VLAN v1.8
[0.650000] VFS: الجذر المثبت (نظام ملفات squashfs) للقراءة فقط على الجهاز 31: 4.
[0.660000] تحرير ذاكرة kernel غير المستخدمة: تم تحرير 180 ألفًا
[5.100000] الإدخال: gpio-keys-polled as / devices / platform / gpio-keys-pended / input / input0
[5.210000] إصدار برنامج تشغيل زر Hotplug 0.4.1


  • preinit - اضغط على مفتاح [f] واضغط على [أدخل] للدخول إلى وضع الأمان

عند قراءة السجلات والنظر فيها ، من المهم عدم تفويت اللحظة ومتى سيكون هناك مثل هذا الخط:


الرجاء اختيار العملية:
1: قم بتحميل كود النظام إلى SDRAM عبر TFTP.
2: قم بتحميل رمز النظام ثم اكتب إلى Flash عبر TFTP.
3: رمز نظام التمهيد عبر فلاش (افتراضي).
4: إدخال واجهة سطر الأوامر التمهيد.
7: قم بتحميل كود Boot Loader ثم اكتب إلى Flash عبر Serial.
9: قم بتحميل كود Boot Boot Loader ثم اكتب إلى Flash عبر TFTP.

تحتاج إلى وقت سريع للضغط على الرقم "2". ثم سنرى ما يلي:


لقد اخترت 2
2: تحميل النظام Linux Kernel ثم الكتابة إلى Flash عبر TFTP.
تحذير !!! امسح Linux في Flash ثم انسخ نسخة جديدة. هل أنت متأكد؟ (نعم / لا)
الرجاء إدخال رموز جديدة / أو Ctrl-C للتخلص منها
إدخال جهاز IP (10.10.10.123) ==: 10.10.10.123
IP خادم الإدخال (10.10.10.3) ==: 10.10.10.3
إدخال اسم ملف Linux Kernel () ==: openwrt-ramips-rt305x-a5-v11-squashfs-sysupgrade.bin

اضغط على "Y" بالتتابع ، أدخل ، أدخل ، "openwrt-ramips-rt305x-a5-v11-squashfs-sysupgrade.bin". في الحالة الأخيرة ، سيكون من الضروري تسجيل اسم البرنامج الثابت الخاص بنا يدويًا ، والذي يجب تحميله على خادم tftp الذي تم تشغيله مسبقًا. لقد استخدمت برنامج TFTPD64 لهذا الغرض. بعد تنشيط تنزيل البرنامج الثابت لوحدة التحكم ، تحتاج إلى توصيل جهاز A5-V11 بجهاز كمبيوتر يطابق عنوان IP الخاص به العنوان المحدد في وحدة التحكم. بالمناسبة ، للاتصال مباشرة (علاء "محرك فلاش USB") ، جعلت نفسي محولات RJ45-RJ45. إنها مريحة جدًا للارتداء مع جهاز توجيه.



محولات RJ45-RJ45 ودائرتها

سيتم خياطة جهاز التوجيه وبعد أن تكون إعادة التشغيل جاهزة لأداء مهام قتالية جديدة. بالمناسبة ، إذا لم يكن من الممكن وميض وحدة التحكم ، نعود إلى جزء "البرنامج" من المقالة وفلاش openwrt-ramips-rt305x-a5-v11-squashfs-sysupgrade.bin البرامج الثابتة من خلال AsProgrammer القديم الجيد ، ولكن ليس من العنوان 0 ، ولكن من 327680 ( !).


إضافة: لا يمكنك العبث بالبحث عن وحدات البايت وتعديل البرامج الثابتة الأصلية ، ولكن ملء المبرمج بسلالة رقاقة صينية من صديق Hackpascal في الشريحة الجديدة ، بالنسبة إلى V5 ، فإن الخيار الأخير الذي تم العثور عليه هو breed-rt5350-hame-a5-r1163.bin . وبالفعل من هذا أفضل (IMHO) حتى الآن ، فإن محمل الإقلاع وميض كل ما تحتاجه. لا تزال هناك جميع أنواع الأشياء الجيدة التي تستحق مقالًا منفصلاً ، ولكن ، ولكن لعنة البرامج الثابتة على الإطلاق بدون توطين ، بالصينية العارية. يبدو أن المصطلحات التقنية واضحة ... لكن "الرواسب بقيت". الصينيون ، من حيث المبدأ ، لا يتصلون :(


الجزء الخامس ، المعلومات ("ملاحظة")


في نهاية القصة ، أود أن أقول بضع كلمات حول الأجهزة التي تجعل استخدام A5-V11 أكثر راحة.
بادئ ذي بدء ، هذا محول على شكل حرف U إلى منفذ USB. جهاز لا غنى عنه ، عند مشاركة جهاز توجيه مع محرك أقراص USB محمول / قارئ بطاقات / مودم 3G-4g / موالف SDR أخيرًا :)



لذلك تبدو المحولات حية



"المعلم" المهم الثاني عند العمل مع جهاز التوجيه المصغر الموصوف هو لوحة وصل USB. نعم ، مع تصميم معقد للغاية لمنافذ USB. يدفع التخطيط الرأسي لهذا المحور السلبي لشراء " فطريات " Bluetooth على بعض CSR8510 . منذ الطفولة ، أحب مفهوم أجهزة الكمبيوتر الصناعية من Octagon - MicroPC - و " شطائر " PC / 104 العمودي. مع المحور المذكور ، هناك فرصة للقيام بشيء مماثل (بالمناسبة ، إذا وجد أحد القراء شيئًا مشابهًا مثيرًا للاهتمام على نطاق المزادات عبر الإنترنت - يرجى مشاركته في التعليقات).



GL8506 رقاقة على متن جينيسيس



من حيث المبدأ ، بدلاً من منفذ USB رأسي ، من الممكن تمامًا وضع سلسلة مفاتيح USB-Bluetooth الصغيرة الموضحة أعلاه أو قارئ بطاقة microSD صغير .



ويبدو وكأنه "ساندويتش ميكروتر" جاهز :)



المزيد من شطائر الهوبر الصغيرة






وأخيرًا ، ألذ. يوجد مثل هذا المكتب النيوزيلندي CloudStore في العالم المعروف بمنتجاته تحت العلامة التجارية Airconsole . هذه الأجهزة جيدة ، من بين أمور أخرى ، وحقيقة أنها هي الوحيدة القانونية بشكل مطلق وبسعر معقول لربط جميع أنواع أجهزة تسجيل RS232 بنظام iOS. , , RS232. .
:)


COM/USB , Moxa*, Perle* Opengear*? AirConsole , .

, . . " 10 " :)


Airconsole Mini (69$) Hame A15 (6.9$)

الصورة

Airconsole Standart (79$) Hame MPR-A1 (7.9$)

الصورة

Airconsole XL (139$) Hame MPR-A3 (13.9$)

الصورة

, , . :) . " . . , . . ".


" A5-V11 Airconsole". Ham 6$ Airconsole 69$. , Zyxel Keenetic 4G II .


بالمناسبة ، إذا كان هناك فجأة بين القراء أصحاب AirConsol الأصلي الذين قاموا بفتحها بالفعل ، سأقبل بكل سرور لوحات الصور كهدية وأكمل المقالة :)


حسنًا ، من حيث المبدأ ، كل ما أردت قوله. الكثير مما هو مكتوب هنا ينطبق على الأجهزة الأخرى (المدمجة) وآمل أن يكون مفيدًا لـ "القراء الواسع" :)



ملاحظة بالنسبة لأصحاب NEXX WT3020F و TP-Link TL-MR3020 و TP-Link TL-WR703N (أي جميع أجهزة التوجيه ذات الغلاف الواسع إلى حد ما) المذكورة في بداية المقالة ، يمكن أن يكون المحور منخفض التكلفة على شريحة HS8836 الموضح أدناه خيارًا مناسبًا جدًا للتضمين :



فقط في حالة ، تظهر الدائرة الموجودة هنا تحت المفسد.


رسم تخطيطي لمركز صيني ثلاثي المنافذ على HS8836

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



تحديث من عام 2019 : حصلنا على تبريد Walti . التفاصيل تحت المفسد



لوحة تبريد خارجية

1



M1 ( 1)





M1. , , .



( ) 1,5 .





( - ) .



— :).


إضافة من artem_kramov بشأن كسر شبكة wifi عند استبدال الفلاش. معنوي - حافظ على تفريغ كامل ونقل قسم التكوين مع إعدادات وحدة wifi


مزيد من التفاصيل
: - Wi-Fi . 4 , , 8 Wi-Fi ( ). , , .
: , Config ( ), Wi-Fi. Breed, . , Ethernet, Config Wi-Fi . - , , - .

موقع GPIO على جهاز التوجيه (مأخوذ من هنا )


A5-V11 GPIO (يمكن النقر على الصور)
توصيلات GPIO على A5-V11

مثال:
22- - gpio 22 مرتبط بـ Gnd
25+ - gpio 25 مرتبط + 3.3V

sda ، scl أفضل للاستخدام في 21 و 26 (استبدل المقاومات بـ Gnd ، ضع 10kΩ). فقط على هذه ، مع توصيل LCD 1602 ، 2004 وإمدادات الطاقة ، يبدأ جهاز التوجيه بشكل طبيعي ، على gpios الأخرى ، من الضروري توصيل طاقة الوحدة بعد ذلك بقليل ، وإلا فلن يبدأ جهاز التوجيه.

في 25 (W1) استخدم مستشعر ds1820 ، لأنه إنه مرتبط بالفعل بـ + 3.3 فولت من خلال 4.7 كيلو أوم.

حسب Gpio 21 لأول مرة أنه كان يخرج إلى المكبس ، ملحومًا بالمكبس (نانو) ، ولكن اتضح بعد ذلك أنه كان جالسًا على الأرض من خلال 1 كيلو أوم لسبب ما. ثم ذهب إلى هذا الخيط واستبدله بـ gpio 26 بـ 10kOhm.





المصادر المستخدمة
  • http://skproj.ru/hame-mpr-a1-proshivka-openwrt-i-apgrejd-fleshki-na-16-ili-8-megabajt/؟doing_wp_cron=1472313516.0620179176330566406250
  • http://w3bsit3-dns.com/forum/index.php؟showtopic=884713&
  • https://github.com/nofeletru/UsbAsp-flash/releases/
  • http://forum.easyelectronics.ru/viewtopic.php؟f=17&t=10947
  • http://my-embedded.blogspot.com/2013/12/mini-4g-router-rt5350f.html
  • http://eko.one.pl/؟p=openwrt-gpio2
  • https://habr.com/post/238713/
  • https://nm-projects.de/2017/09/analysis-of-mini-3g4g-wifi-wireless-router-a5-v11/
  • https://tuxotronic.org/wiki/tools/flashrom/
  • http://srr.cherkessk.ru/owrt/help-owrt.html
  • https://tuxotronic.org/wiki/openwrt/rt5350/build-firmware/
  • https://mysku.ru/blog/aliexpress/27796.html
  • https://habr.com/post/247513/

هام! يمكن الآن رؤية جميع التحديثات والملاحظات المؤقتة التي يتم بعد ذلك تشكيل مقالات الهربس بسلاسة في lab66 قناة القناة الخاصة بي . اشترك لكي لا تتوقع المقالة التالية ، ولكن لتكون على علم بجميع الأبحاث :)

Source: https://habr.com/ru/post/ar425281/


All Articles