Πίνακας περιεχομένων:

NLDWRTG το ULTIMATE WRT54G Expansion Board: 8 βήματα (με εικόνες)
NLDWRTG το ULTIMATE WRT54G Expansion Board: 8 βήματα (με εικόνες)

Βίντεο: NLDWRTG το ULTIMATE WRT54G Expansion Board: 8 βήματα (με εικόνες)

Βίντεο: NLDWRTG το ULTIMATE WRT54G Expansion Board: 8 βήματα (με εικόνες)
Βίντεο: ПРИВОЗ. ОДЕССА МАМА. Рецепт САЛО. ОБЗОР НОЖЕЙ 2024, Ιούλιος
Anonim
NLDWRTG το ULTIMATE WRT54G Expansion Board
NLDWRTG το ULTIMATE WRT54G Expansion Board
NLDWRTG το ULTIMATE WRT54G Expansion Board
NLDWRTG το ULTIMATE WRT54G Expansion Board

Τροποποιώ τους δρομολογητές WRT54G από το 2006, αλλά ποτέ δεν είχα χρόνο να σχεδιάσω έναν ειδικό πίνακα για αυτό μέχρι πέρυσι. Αυτό το υλικό εξακολουθεί να είναι ένα από τα πιο hackable δρομολογητές wifi κατά τη στιγμή της γραφής και αξίζει να διατηρηθεί ζωντανό.

Βήμα 1: Σύντομη επισκόπηση της σειράς Linksys WRT54G

Σύντομη επισκόπηση της σειράς Linksys WRT54G
Σύντομη επισκόπηση της σειράς Linksys WRT54G

en.wikipedia.org/wiki/Linksys_WRT54G_serie…

Υπάρχουν πολλές διαφορετικές εκδόσεις στην αγορά, οπότε ας ρίξουμε μια ματιά που μπορεί να τροποποιηθεί:

-WRT54G 2.0/2.1/2.2 -> Παρόλο που όλες οι λειτουργίες είναι πιθανές, η μεγάλη παλιά μητρική πλακέτα καταλαμβάνει όλο το χώρο στη θήκη, εάν τροποποιήσετε αυτήν τη σειρά, πρέπει να μετακινήσετε το κύκλωμά σας έξω από το κουτί ή να δημιουργήσετε ένα εντελώς νέο περίβλημα (δυστυχώς δεν αξίζει τον κόπο)

-WRT54G 4.0 Μετάβαση σε νέο SoC -> Αυτός ήταν ο πρώτος πίνακας όπου παρουσιάστηκε η μητρική πλακέτα L

-WRT54GL 1.0/1.1-> Η Linksys κυκλοφόρησε το WRT54GL (το δρομολογητή με τις περισσότερες πωλήσεις όλων των εποχών) το 2005 για να υποστηρίξει υλικολογισμικό τρίτων κατασκευαστών με βάση το Linux, αφού η αρχική γραμμή WRT54G μεταβλήθηκε από Linux σε VxWorks, ξεκινώντας με την έκδοση 5. Το WRT54GL είναι τεχνικά επανέκδοση της έκδοσης 4 WRT54G. Αυτό το μοντέλο είναι ο KING των WRTG. Υπάρχουν πολλοί μεταχειρισμένοι δρομολογητές σε όλη την αγορά, οπότε αν έχετε επιλογή ποιος τύπος να αγοράσετε, αγοράστε ΠΑΝΤΑ το WRT54GL.

-WRT54G 5.0 και άνω -> Χρησιμοποιεί λειτουργικό σύστημα VxWorks και μειωμένη μνήμη flash. δεν είναι συμβατό με τα περισσότερα υλικολογισμικά τρίτων, αν και το βοηθητικό πρόγραμμα "VxWorks killer" επιτρέπει τη φόρτωση υλικολογισμικού ανοικτού κώδικα τρίτων κατασκευαστών σε αυτήν και μελλοντικές εκδόσεις. Ο Linksys έκανε μια κακή στροφή εδώ και ουσιαστικά κατέστρεψε ένα εντελώς καλό προϊόν. Παρόλο που είναι δυνατή η τροποποίησή τους, ο χώρος στο δρομολογητή είναι τόσο μικρός (2MB) που μπορεί να χωρέσει μόνο το μικρο υλικολογισμικό DD-WRT το οποίο σχεδόν δεν μπορεί να κάνει τίποτα πέρα από την κανονική λειτουργία δρομολόγησης (χωρίς VPN, χωρίς smbfs/cifs, χωρίς NFS, χωρίς mmc, χωρίς ext2). Έχω καταφέρει να δημιουργήσω πυρήνες για αυτήν τη σειρά και να συμπιέσω σε 1-1 την απαιτούμενη ενότητα για το κόστος της αφαίρεσης άλλων. ΔΕΝ αξίζει το χρόνο και τον κόπο σας, ΜΗΝ αγοράσετε αυτούς τους δρομολογητές.

Με την τελευταία σειρά WRT, η Linksys άλλαξε σε αρχιτεκτονική ARM, για παράδειγμα, το WRT1200 AC διαθέτει επεξεργαστή διπλού πυρήνα ARM 1.3 GHz. Έχω ωστόσο κακή εμπειρία με αυτούς τους δρομολογητές ακόμη και μετά από δοκιμή πολλαπλών εκδόσεων OpenWRT (τώρα LEDE), οι δρομολογητές μπορούν να παγώσουν τυχαία. Περιμένω 300+ ημέρες λειτουργίας από συσκευές unix.

Βήμα 2: Επέκταση της λειτουργικότητας

Επέκταση της λειτουργικότητας
Επέκταση της λειτουργικότητας

Εντάξει, τι χακ μπορείτε να κάνετε με αυτόν τον δρομολογητή:

1, Προσθέστε 2x σειριακές θύρες -> οι οποίες μπορούν να σας φανούν χρήσιμες εάν έχετε άλλους διακομιστές σε απομακρυσμένη τοποθεσία και θέλετε να συνδεθείτε στο bios τους μέσω σειριακής γραμμής ή άλλων δρομολογητών, switiches που επιτρέπουν αυτό

2, Προσθήκη 1 θύρας USB1.0 -> θα μπορούσε να χρησιμοποιηθεί για τη σύνδεση εκτυπωτή, εξωτερικού σκληρού δίσκου κ.λπ. (δεν το έκανα ποτέ αυτό το mod, οπότε δεν θα είναι μέρος της γραφής)

3, Προσθέστε εξωτερική κάρτα SD για αποθήκευση, αυτό μπορεί να επεκτείνει τη μικρή μνήμη αποθήκευσης flash 16MB του δρομολογητή σας στα 16/32/…+GB. Δεν είχα κανένα πρόβλημα με τη χρήση αυτών των μεγεθών SDcards και επίσης κανένα πρόβλημα με τη χρήση ολοκαίνουργιων ανθεκτικών καρτών CLASS 10. Εάν έχετε πειραματιστεί με τον περιορισμό των καρτών ανά μοντέλο WRTG, αφήστε ένα σχόλιο παρακάτω.

4, Προσθέστε ένα arduino για τον έλεγχο του σπιτιού σας, ρελέ, rcswitches

Προσθέτοντας ένα arduino ουσιαστικά ανοίγοντας μια απεριόριστη ποσότητα επιλογών: έλεγχος ρομπότ, έλεγχος υπέρυθρων συσκευών σε θέαση (τηλεοράσεις, βίντεο, DVD, βιντεοπροβολείς, κλιματισμός), σύνδεση με τόνους συσκευών σε φθηνούς ασύρματους διακόπτες 433Mhz, επικοινωνία με άλλα arduinos, raspis, προσθήκη Xbee κλπ. κλπ.

Παρόλο που όλα αυτά θα μπορούσαν να γίνουν με ένα Raspberry PI + Arduino και επεκτάσεις, θεωρώ ότι ο δρομολογητής WRT54G είναι πιο αξιόπιστος από τον raspis. Έχω αυτούς τους δρομολογητές σε παρόμοιες διαμορφώσεις με πάνω από 1 χρόνο (!) Σε λειτουργία, δεν θα μπορούσα να πω το ίδιο για το raspis όπου ο υψηλότερος χρόνος λειτουργίας μου ήταν περίπου 240 ημέρες σε raspi 1, στη συνέχεια η κάρτα SD εγκαταλείπει το σύστημα, αν και το C Ο κωδικός ελέγχου Arduino φορτώθηκε στη μνήμη, οπότε δεν χρειάστηκε να βιαστώ με την αντικατάσταση, καθώς ο κόμβος ελέγχου ήταν ακόμα απόλυτα λειτουργικός:))

Βήμα 3: Λίστα υλικού

Λίστα υλικού
Λίστα υλικού

Επισυνάπτω τη διάταξη του πίνακα τόσο σε μορφή SVG όσο και σε μορφή EasyEda. Αν θέλετε να δημιουργήσετε το έργο θα χρειαστείτε τα ακόλουθα στοιχεία: 1x ρυθμιστής τάσης LM7805

2x καλύμματα για vreg 1uF 10uF (10PCS Ηλεκτρολυτικοί πυκνωτές 25V 35V 50V 1uF ~ 1000uF Διάφορες τιμές και τάση)

Καλώδιο 1x 4 ακίδων από το SDcar στην πλακέτα (10Pcs Jumper Wire 2/3/4/5/6/7Pin θηλυκό σε θηλυκό καλώδιο Dupont 20cm για Arduino)

2x DIP051A7212D Reed Reed

1x αρσενική πρίζα RS232 (20 τεμάχια 9 ακίδων D-Sub DB9 αρσενικός συνδετήρας PCB δεξιάς γωνίας WT7n)

1x MAX 233 (10Pcs Max233 Max233cpp Rs232 Rs-232 Driver/Receivers Ic New X)

1x καλώδιο σύνδεσης 10 ακίδων (5Pcs 2mm Pitch 2x5 Pin 10 Pin 10 Wire IDC Flat Ribbon Cable Length 10CM)

1x υποδοχή 10 ακίδων (20Pcs 2.54mm 2x5 Pin 10 Ευθεία αρσενικό καλυμμένο PCB Box Header IDC Connector)

1x κεφαλίδες συνδετήρων (10τεμ 1*40Pin Single Row Female 2.54mm Connector Headable Breakable Connector fr Arduino 2017)

1x κάρτα SD (μπορεί να είναι παλιό μεγάλο SD ή νέο microsd με μετατροπέα, κάτω από 32 GB σε μέγεθος θα πρέπει να λειτουργούν, πέρα από αυτό δεν δοκίμασα κάρτες)

Μετατροπέας 1v 3v5v TTL (5x Logic Level Converter 3.3V σε 5V TTL Bi-Directional for Arduino Raspberry pi)

Οπτικό ζεύγος 1x 4n35

1x Αναγνώστης υποδοχής υποδοχής μονάδας κάρτας SD για Arduino ARM MCU Ανάγνωση και εγγραφή

1x Arduino Promicro (5τμχ Leonardo Pro Micro ATmega32U4 16MHz 5V Αντικατάσταση ATmega328 Arduino Pro Mini)

1x μονάδες RX και TX τα αγοράζουν ως συνδυαστικό πακέτο (κιτ πομπού και δέκτη Rp 5 τεμ 433Mhz για ασύρματο τηλεχειριστήριο Arduino)

Βήμα 4: Σχεδιασμός υλικού

Σχεδιασμός υλικού
Σχεδιασμός υλικού
Σχεδιασμός υλικού
Σχεδιασμός υλικού
Σχεδιασμός υλικού
Σχεδιασμός υλικού

-Ο πίνακας βιδώνει στο κύριο μαύρο πλαστικό κάτω μέρος του σκάφους

-Το MAX233 επιλέχθηκε έναντι του MAX232, οπότε δεν θα απαιτηθούν επιπλέον καλύμματα για τον υπολογιστή (ή μια εντελώς νέα θήκη WRTG) θα μπορούσε να σχεδιαστεί με makerbot

-Η πρίζα arduino promicros micro USB που βλέπει στον μπροστινό πίνακα για εξωτερικό προγραμματισμό.

-Με βάση το Arduino Promicro (το arduino τροφοδοτείται από την είσοδο 12V του δρομολογητή WRT54G (μέσω ρυθμιστή τάσης), η τάση ανοιχτού κυκλώματος του προσαρμογέα είναι περίπου 16V!)

-Το Promicro διαθέτει πραγματικό usb, όχι κοινόχρηστο σκουπίδι, ώστε το WRTG's/dev/tts/1 να μπορεί να συνδεθεί με το UART υλικού του Promicro

-Αεροπορική επικοινωνία μέσω/dev/tts/0 μεταξύ PC WRTG

-RF 433Mhz δέκτης + πομπός (ο πομπός θα μπορούσε να πάρει 12V για μεγαλύτερο εύρος)

-Ο πομπός και ο δέκτης IR μπορούν να προστεθούν στον μπροστινό πίνακα

-Πρόσθετες λυχνίες LED μπορούν να προστεθούν στον μπροστινό πίνακα (υποδείξτε Rx/Tx για RF, IR, δείκτη δρομολογητή/ardu comm)

Θα μπορούσα να είχα σχεδιάσει τον πίνακα με έναν μετατροπέα mini buck, αλλά πήρα τη γραμμική προσέγγιση του ρυθμιστή τάσης αφού το είχα στο χέρι. Έχω βρει 5V σε κάποιο σημείο του κυκλώματος, αλλά όταν το αγγίξω έκανα το δρομολογητή άχρηστο (πιθανότατα δεν μπόρεσα να δώσω την ποσότητα ρεύματος που χρειαζόταν ο πίνακας arduino), επομένως πήγα με μια πρόσθετη προσέγγιση vreg.

Ο μετατροπέας 3v5v TTL είναι εκεί για να παρέχει τη σωστή μετατροπή της πτητικότητας (χρησιμοποιώ μοντέλο 5V arduino promicro, το οποίο χρησιμοποιεί 5V στη θύρα υλικού υλικού του, επομένως απαιτείται μετατροπή επιπέδου τάσης). Ωστόσο, έχω τροποποιήσει δρομολογητές στο παρελθόν προσθέτοντας Arduino Nanos, Micros χωρίς τον μετατροπέα και δεν είχα πρόβλημα, καθώς η θύρα TTY της WRTG είναι ανεκτική στα 5V, αλλά δεν σημαίνει ότι θα πρέπει να τη χρησιμοποιείτε από αυτήν την τάση.

Το 4n35 εισήχθη επίσης για να απαλλαγούμε από κάποιο θόρυβο που προέρχεται από την εξωτερική πλευρά του υπολογιστή, δεν χρησιμοποιούσα αυτό το στοιχείο στο παρελθόν, αλλά μπορεί επίσης να οφείλεται στο ότι ο φορητός υπολογιστής που χρησιμοποίησα κατά τη διάρκεια των δοκιμών ήταν ελαττωματικός.

Το καλώδιο σύνδεσης 10pin φροντίζει τις περισσότερες συνδέσεις, ωστόσο πρέπει να βεβαιωθείτε ότι έχετε εγκαταστήσει σωστά τις πρίζες.

Όπως φαίνεται στην εικόνα στη σειριακή θύρα

Καρφίτσα 1: 3.3V + Καρφίτσα 2: 3.3V <= Οι 2 ακροδεξιές ακίδες (πιο κοντά στα LED) είναι οι ΘΕΤΙΚΕΣ συνδέσεις στη δεξιά πλευρά του συνδέσμου στην ασπίδα NLDWRTG (κοντά στον ρυθμιστή τάσης LM7805)

Καρφίτσα 9: GND + Καρφίτσα 10: GND <= Απέναντι βρίσκονται οι ΑΡΝΗΤΙΚΕΣ συνδέσεις στην αριστερή πλευρά του συνδέσμου στην ασπίδα NLDWRTG

Για τη σύνδεση των καλωδίων μεταξύ του προγράμματος ανάγνωσης SDCARD και του WRTG ακολουθήστε:

www.jbprojects.net/articles/wrt54gl_mods/

Οι σχετικές καρφίτσες:

  • CS -> Σημείο 1
  • MOSI -> Σημείο 2
  • SCK -> Σημείο 5
  • MISO -> Σημείο 7

Βήμα 5: Περιορισμοί

Περιορισμοί
Περιορισμοί

Η CPU του WRT54GL δεν είναι η ισχυρότερη (Broadcom BCM5352 @ 200 MHz), μπορεί να γίνει overclocking στα 250Mhz (δεν συνιστάται:)) οπότε μην περιμένετε να τρέξει το SETI @ HOME σε αυτό. Ο δρομολογητής -μόνο- έχει διεπαφές 100mbit/s και σε αντίθεση με ό, τι μπορείτε να βρείτε σε πολλά μέρη, αυτό το υλικό *ΔΕΝ υποστηρίζει 802,1q VLAN *. Είναι μόνο ένα απλό VLAN που βασίζεται σε θύρα, μην τοποθετήσετε το WRTG σε δίκτυο που μεταφέρει VLAN, δεν μπορεί να το κάνει.

Μια ιδιαίτερα χρήσιμη εφαρμογή είναι η χρήση του δρομολογητή ως προγράμματος -πελάτη VPN για σύνδεση σε κεντρική τοποθεσία. Αν και είναι απολύτως χρήσιμο για διακομιστή VPN, μην περιμένετε πολλές επιδόσεις από αυτό.

Ακολουθούν μερικά από τα αποτελέσματά μου με ένα WRT54GL v1.1 χρησιμοποιώντας το OpenVPN ως πελάτη.

Μέγιστη απόδοση σήραγγας: 500kbit/s κάτω 50 kbit/s πάνω

Μέγιστη απόδοση δρομολόγησης χωρίς VPN από WAN -> LAN 28 mbit/s

Μέγιστη απόδοση NAT (Masquerade) χωρίς VPN από WAN -> LAN 27 mbit/s

Υπάρχουν ακόμα πολλές τοποθεσίες με μικρότερο συνολικό εύρος ζώνης από αυτές (ISDN, Adsls, Cable network, Satellite κ.λπ.) αυτό που μπορεί να ικανοποιήσει τέλεια αυτός ο δρομολογητής.

Συνήθως τα προβλήματα προέρχονται από την τοποθέτηση πάρα πολλών ασύρματων πελατών σε αυτούς τους δρομολογητές. Είδα πολλές ρυθμίσεις όλα αυτά τα χρόνια σε καφέ, ξενοδοχεία, εστιατόρια όπου ρίχνουν έναν δρομολογητή wifi στον πάγκο και το καλούν καθημερινά, περιμένοντας ότι θα μπορεί να εξυπηρετεί 10+ άτομα. Το μόνο που λαμβάνουν είναι μια εντελώς άχρηστη εμπειρία wifi στο τέλος, καθώς το συνολικό θεωρητικό εύρος ζώνης για αυτόν τον δρομολογητή 802.11G είναι 51 mbit/s και αυτό είναι για όλους, ας πούμε ότι το πραγματικό είναι περίπου 30mbit/s. Για 10 άτομα που είναι 3mbit/s ανά χρήστη στην καλύτερη περίπτωση που δεν είναι πουθενά αρκετό για σημερινούς πεινασμένους για εύρος ζώνης (ροή βίντεο/ήχου, ιστοσελίδες 2.0 γεμάτες μεγάλες φωτογραφίες κλπ) εφαρμογές.

Όπως ανέφερα νωρίτερα, το σημείο αυτού του hack είναι το τηλεχειριστήριο και δεν θα χρησιμοποιούσε περισσότερα από δύο kbit/s επισκεψιμότητα μέσω VPN.

Βήμα 6: Λογισμικό WRTG

Λογισμικό WRTG
Λογισμικό WRTG

Το υλικολογισμικό βασίζεται στην καλύτερη έκδοση: DD-WRT v24-sp2 (08/12/10) std-nokaid (αναθεώρηση SVN 14929) Υπάρχουν και άλλες εικόνες όπως το VPN που θυσιάζει τη μονάδα ext2 για εξοικονόμηση χώρου ενώ έχετε ακόμα το mmc kernelmodul (LoL). Το Optware 2 είναι ένα πακέτο διακοπής, αλλά ακόμα χρήσιμο, το οποίο επεκτείνει τη βασική λειτουργικότητα DD-WRT:

-Κάνει μια βασική διανομή linux από την εγκατεστημένη εγκατάσταση busybox.

-Παρέχει bash και άλλα κελύφη.

-Παρέχει πολλές θεές όπως: htop, netcat, tcpdump, ngrep, mc

-Παρέχει υπηρεσίες διακομιστή όπως: samba, αστερίσκο, vsftpd, διακομιστή jabber

Ωστόσο, τα πακέτα λογισμικού είναι παλιά, γεμάτα σφάλματα και τρωτά σημεία. Η δημοσίευση και η εικόνα εδώ θα ήταν το ίδιο με την παροχή μιας εγκατάστασης Window $ 98, επομένως δεν θα δημοσιεύσω τίποτα ακόμη, αλλά θα το γράψω βήμα προς βήμα πώς να ρυθμίσετε την κάρτα OptWare 2 SDCard.

Στο μέλλον σχεδιάζω να φτιάξω μια νέα διανομή linux (SnowGlobe Linux) με νέα πακέτα για αυτήν τη συσκευή και να τη δημοσιεύσω.

1, το JFFS2 πρέπει να είναι ενεργοποιημένο, δεν έχει σημασία ότι δεν έχει ελεύθερο χώρο σε αυτό:

/dev/mtdblock/4 128K 128K 0 100%/jffs

2, διαμέρισμα SDCARD. Εδώ είναι ένα έξυπνο κόλπο:

14 GB ή οτιδήποτε θέλουμε να έχουμε για το πρώτο διαμέρισμα δεδομένων για ddwrt 100-500mb δεύτερο διαμέρισμα (EXT2) για ανάκτηση

Για παράδειγμα:

Disk /dev /sde: 14,5 GiB, 15523119104 bytes, 30318592 τομείς

Μονάδες: τομείς 1 * 512 = 512 bytes Μέγεθος τομέα (λογικό/φυσικό): 512 bytes/512 bytes Μέγεθος I/O (ελάχιστο/βέλτιστο): 512 bytes/512 bytes Τύπος ετικέτας Disk: dos Αναγνωριστικό δίσκου: 0x6ad48986 Έναρξη εκκίνησης συσκευής Τέλος Τομέας Id Id Type /dev /sde1 2048 29362175 29360128 14G 83 Linux /dev /sde2 29362176 30318591 956416 467M 83 Linux

Δημιουργία συστημάτων αρχείων:

mkfs.ext2 -L SnowGlobe -data /dev /sde1

mkfs.ext2 -L SnowGlobe -recovery /dev /sde2

Συντονίστε τα συστήματα αρχείων:

tune2fs -c0 -i0 -m0 /dev /sde1

tune2fs -c0 -i0 -m0 /dev /sde2

Μόνο το πρώτο διαμέρισμα θα υπολογιστεί αυτόματα από το σύστημα στην αρχή! Η ιδέα πίσω από το διαμέρισμα ανάκτησης είναι ότι το WRT54G δεν έχει χώρο για να κρατήσει ένα fdisk οπουδήποτε αλλού. Έτσι, εάν υπάρχει ακάθαρτος τερματισμός λειτουργίας και υπάρχουν ασυνέπειες στο σύστημα αρχείων, ο μόνος τρόπος για να το επιδιορθώσετε είναι να έχετε ένα αντίγραφο του fdisk (και απαιτείται η έναρξη των libs) σε ένα δεύτερο διαμέρισμα το οποίο θα τοποθετείται περιστασιακά μόνο ως μόνο για ανάγνωση για την εκτέλεση του fsck εάν απαιτείται. Διαφορετικά, η κάρτα θα έπρεπε να αφαιρεθεί και να τοποθετηθεί σε έναν υπολογιστή για επισκευή…

3, τοποθέτηση

Εάν βάλετε σωστά μια ήδη διαμερισμένη, διαμορφωμένη κάρτα και μπότες wrtg, το πιο πιθανό είναι ότι το πρώτο διαμέρισμα θα υπολογιστεί αυτόματα:

/dev/mmc/disc0/part1 13,8G 59,6M 13,7G 0%/mmc

Το opt πρέπει να είναι συνδεδεμένο τώρα:

mount -o bind /mmc / /opt /

4, σενάριο εγκατάστασης OWRT2

Πριν ξεκινήσετε, ελέγξτε αν είναι defgw, dns όλα καλά.

wget https://www.3iii.dk/linux/optware/optware-install-… -O -| tr -d '\ r'> /tmp/optware-install.sh

sh /tmp/optware-install.sh

Εάν δεν είναι δυνατή η λήψη του σεναρίου, αυτό οφείλεται στο ότι το busybox wget αποτυγχάνει. Θα λειτουργήσει με το owrt's wget αλλά θέλετε να εγκαταστήσετε το owrt…

Η έξοδος πρέπει να μοιάζει με:

Έλεγχος διαμόρφωσης συστήματος…

Χρησιμοποιώντας το 192.168.1.1 ως προεπιλεγμένη πύλη. Χρησιμοποιώντας τους ακόλουθους διακομιστές ονομάτων: διακομιστή ονομάτων 192.168.1.30 Προειδοποίηση: ο τοπικός διακομιστής ονομάτων είναι διαφορετικός από την πύλη! Ελέγξτε τη ρύθμιση παραμέτρων ή εισαγάγετε: sed -i s/192.168.*/192.168.1.1/ /tmp/resolv.conf για να το διορθώσετε. Εγκατάσταση πακέτου uclibc-opt_0.9.28-13_mipsel.ipk… Σύνδεση στο ipkg.nslu2-linux.org [140.211.166.82]: 80 uclibc-opt_0.9.28-12 100% | ************ ********************************* | 832 KB 00:00:00 ETA Update /opt/etc/ld.so.cache/opt/sbin/ldconfig: δεν μπορεί να δημιουργηθεί /opt/etc/ld.so.cache~ (Δεν υπάρχει τέτοιο αρχείο ή κατάλογος) Εγκατάσταση πακέτου ipkg-opt_0.99.163-9_mipsel.ipk… Σύνδεση με ipkg.nslu2-linux.org [140.211.166.82]: 80 ipkg-opt_0.99.163-9_ 100% | *************** ******************************** | 75896 00:00:00 ETA Λήψη https://ipkg.nslu2-linux.org/feeds/optware/ddwrt/c… Διόγκωση https://ipkg.nslu2-linux.org/feeds/optware/ddwrt/c… Ενημερώθηκε λίστα με τα διαθέσιμα πακέτα στο/opt/lib/ipkg/λίστες/optware Τερματίστηκε επιτυχώς. Εγκατάσταση του uclibc-opt (0.9.28-12) στο/opt/… Λήψη https://ipkg.nslu2-linux.org/feeds/optware/ddwrt/c… πακέτου uclibc-opt προτείνει εγκατάσταση ipkg-opt Διαμόρφωση uclibc-opt Η ενημέρωση /opt/etc/ld.so.cache τερματίστηκε επιτυχώς. Εγκατάσταση του ipkg-opt (0.99.163-9) στο/opt/… Λήψη https://ipkg.nslu2-linux.org/feeds/optware/ddwrt/c… Η διαμόρφωση του ipkg-opt τερματίστηκε επιτυχώς.

5, σφάλμα διαδρομής:

ΠΡΕΠΕΙ να εξάγετε τη διαδρομή με:

εξαγωγή PATH = "/opt/bin:/opt/sbin:/opt/usr/bin:/opt/usr/sbin:/bin:/usr/bin:/sbin:/usr/sbin:/jffs/sbin:/ jffs/bin:/jffs/usr/sbin:/jffs/usr/bin:/mmc/sbin:/mmc/bin:/mmc/usr/sbin:/mmc/usr/bin"

αλλιως το ipkg δεν θα κανει τιποτα!

6, Επαλήθευση ipkg:

ενημέρωση ipkg

Πρέπει να εξέλθει:

Λήψη

Διόγκωση https://ipkg.nslu2-linux.org/feeds/optware/ddwrt/c… Ενημερωμένη λίστα διαθέσιμων πακέτων στο/opt/lib/ipkg/λίστες/optware Τερματίστηκε επιτυχώς.

7, Εγκατάσταση πακέτων:

ipkg install bash htop mc openvpn tcpdump vim bzip2 bc e2fsprogs findutils gawk grep gzip less make ntfs-3g openssl perl php psmisc psutils

samba36 sed tar unrar unzip vnstat vsftpd wget whois zip ncftp

8, Λίστα εγκατεστημένων πακέτων:

ipkg-opt list_installed

Δεν συνιστάται η δημιουργία πακέτων στο δρομολογητή λόγω έλλειψης πόρων. Ρυθμίστε ξεχωριστό περιβάλλον διασταυρούμενης σύνθεσης mips στο Vmware/Vbox/KVM για το σκοπό αυτό.

Πράγματα που χρειάζονται:

-Debian 7 wheezy 64bit host OS

-OpenWrt-SDK-Linux-x86_64-1.tar.bz2->

openwrt.org/docs/guide-developer/obtain.fi…

Μην χάνετε χρόνο για να προσπαθήσετε να συντάξετε το SDK μόνοι σας, το παρεχόμενο δυαδικό SDK είναι αρκετά καλό.

Δημιουργήστε μια απλή εφαρμογή helloworld

#include int main (void) {printf ("Hell! O 'world, γιατί δεν θα μεταγλωττιστεί ο κώδικας μου; / n / n"); επιστροφή 0? }

./staging_dir_mipsel/mipsel-linux-uclibc/bin/gcc -lpthread hello.c -o γεια

Εάν όλα πάνε σωστά, θα πρέπει να έχετε ένα εκτελέσιμο mips τώρα:

γεια: ELF 32-bit LSB εκτελέσιμο, MIPS, MIPS32 έκδοση 1 (SYSV), δυναμικά συνδεδεμένο (χρησιμοποιεί κοινά λίπη), χωρίς απογύμνωση

Βήμα 7: Λογισμικό Arduino

Μπορείτε να κατεβάσετε τον πλήρη πηγαίο κώδικα παρακάτω. Είναι αρκετά απλό, μπορεί να ελέγξει τα 2 ρελέ και μερικά βύσματα RC μέσω ραδιοφώνου 433Mhz. Μπορείτε εύκολα να το επεκτείνετε π.χ.: προσθέστε περισσότερους διακόπτες rc.

Βήμα 8: Κλείσιμο και λίστα εργασιών

Κλείσιμο και λίστα εργασιών
Κλείσιμο και λίστα εργασιών

Το WRT54G είναι ένα εξαιρετικό υλικό, οπότε όλη η δουλειά που επενδύθηκε σε αυτό το έργο αξίζει τον κόπο, εκτός από την ασπίδα NLD Wrtg μπορεί να χρησιμοποιηθεί με μελλοντικές εκδόσεις υλικού.

Δεδομένου ότι η κατανάλωση ενέργειας ενός WRTG είναι χαμηλότερη από τα Raspberry PIs, η ηλιακή τροφοδοσία του δρομολογητή μπορεί επίσης να είναι μια καλή αναβάθμιση και με το Arduino μπορούμε να παρακολουθούμε κάθε λεπτομέρεια της διαδικασίας ηλιακής φόρτισης (τάση μπαταρίας, τάση πίνακα, κατανάλωση). Θα συνεχίσω τη σειρά WRTG με ηλιακούς αμυχές αργότερα.

Η εύρεση τρόπου προγραμματισμού του Arduino απευθείας από το WRTG θα ήταν υπέροχη (αυτό θα απαιτούσε μια μέθοδο επαναφοράς του Arduino).

Τα άτομα με 3D, Makerbot δεξιότητες είναι κάτι παραπάνω από ευπρόσδεκτα να σχεδιάσουν μια προσαρμοσμένη πλάκα κάλυψης (με τους συνδετήρες της πλακέτας μου) για το μπροστινό μέρος ή να επανασχεδιάσουν το πλήρες πλαστικό μπροστινό μέρος του δρομολογητή.

ΕΝΗΜΕΡΩΣΗ: Για να γιορτάσουμε την αρχιτεκτονική MIPS να γίνει Open Source, έχω ενημερώσει το σεμινάριο με τον τρόπο διασταύρωσης απλών προγραμμάτων C στο WRTG.

Ζήτω τα MIPS!:)

Τύπος συστήματος: Broadcom BCM5352 chip rev 0 επεξεργαστής: 0 μοντέλο cpu: BCM3302 V0.8 BogoMIPS: 199.47 οδηγίες αναμονής: χωρίς χρονοδιακόπτες μικρο δευτερολέπτου: ναι tlb_entries: 32 επιπλέον διανύσματα διακοπών: κανένα σημείο παρακολούθησης υλικού: όχι εξαιρέσεις VCED: δεν υπάρχουν εξαιρέσεις VCEI: δεν υπάρχουν

Συνιστάται: