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

Hardware and Software Hack Smart Devices, Tuya and Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 Βήματα
Hardware and Software Hack Smart Devices, Tuya and Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 Βήματα

Βίντεο: Hardware and Software Hack Smart Devices, Tuya and Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 Βήματα

Βίντεο: Hardware and Software Hack Smart Devices, Tuya and Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 Βήματα
Βίντεο: Ultimate Smart Automation Tuya / Smart Life Tips + Tricks 2024, Νοέμβριος
Anonim
Hardware and Software Hack Smart Devices, Tuya and Broadlink LEDbulb, Sonoff, BSD33 Smart Plug
Hardware and Software Hack Smart Devices, Tuya and Broadlink LEDbulb, Sonoff, BSD33 Smart Plug

Σε αυτό το Instructable σας δείχνω πώς έλαμψα αρκετές έξυπνες συσκευές με το δικό μου υλικολογισμικό, ώστε να μπορώ να τις ελέγχω με MQTT μέσω της ρύθμισης Openhab.

Θα προσθέσω νέες συσκευές όταν τις χακάρω.

Φυσικά, υπάρχουν άλλες μέθοδοι που βασίζονται σε λογισμικό για να αναβοσβήνει το προσαρμοσμένο υλικολογισμικό, όπως το Tuya convert, αλλά μου αρέσει να καταλαβαίνω πώς λειτουργεί η συσκευή και τι είναι «κάτω από το καπό».

Ο κωδικός γράφεται και αναβοσβήνει χρησιμοποιώντας το Arduino IDE.

Ελέγχω τις συσκευές μου μέσω Openhab και Google Home (μέσω Openhab), αν θέλετε να μάθετε περισσότερα ή χρειάζεστε το αρχείο.items κ.λπ., ενημερώστε με στα σχόλια.

Πρώτα η ασφάλεια

Να είστε προσεκτικοί αφού εργαζόμαστε σε συσκευές που τροφοδοτούνται με ρεύμα. Αποσυνδέστε τις συσκευές από το τροφοδοτικό πριν τις εργαστείτε.

Έχετε αμφιβολίες εάν η συσκευή είναι ασφαλής μετά την τροποποίηση, απορρίψτε την.

Προμήθειες

Για τις περισσότερες αμυχές χρειάζεστε έναν προγραμματιστή FDTI συνδεδεμένο σε υπολογιστή με Arduino IDE, μερικά καλώδια βραχυκυκλωτήρων, ένα συγκολλητικό σίδερο, μερικές αντιστάσεις και μονάδες ESP8266 ή ESP8285.

Βήμα 1: Έξυπνος λαμπτήρας Tuya LED RGBW

Έξυπνος λαμπτήρας Tuya LED RGBW
Έξυπνος λαμπτήρας Tuya LED RGBW
Έξυπνος λαμπτήρας Tuya LED RGBW
Έξυπνος λαμπτήρας Tuya LED RGBW
Έξυπνος λαμπτήρας Tuya LED RGBW
Έξυπνος λαμπτήρας Tuya LED RGBW

Εισαγωγή

Αγόρασα αυτόν τον λαμπτήρα από το Aliexpress. Λειτουργεί μια χαρά με την εφαρμογή Smart Life, αλλά ήθελα να το ελέγξω μέσω MQTT από το Openhab. Έφτιαξα ήδη το δικό μου υλικολογισμικό Sonoff B1, οπότε προσπάθησα να αναβοσβήσω αυτήν τη λάμπα με αυτό το υλικολογισμικό.

Αναβοσβήνει

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

Οι απαραίτητες συνδέσεις εκτίθενται μέσω μικρών μαξιλαριών στο PCB (3v3, GND, RX, TX και IO0 (GPIO0))

Έβαλα πρώτα λίγη συγκόλληση στα τακάκια και κόλλησα στα καλώδια και μετά τα συγκολλούσα μαζί. Χρησιμοποίησα ένα tiewrap και κάποια ζεστή κόλλα για να συνδέσω τα καλώδια στη λάμπα.

Το GPIO0 χρειάζεται για να φέρει το ESP8266 σε λειτουργία προγράμματος. Συνδέστε το στη γείωση όταν τροφοδοτείτε το ESP8266. Μπορείτε να τροφοδοτήσετε και να αναβοσβήσετε το ESP8266 χρησιμοποιώντας έναν προγραμματιστή FTDI.

Υλικολογισμικό

Το υλικολογισμικό βασίζεται στο υλικολογισμικό μου Sonoff B1, αλλά έχει τροποποιηθεί, επειδή το Sonoff B1 χρησιμοποιεί προγράμματα οδήγησης MY9231 LED που οδηγούνται από το τσιπ ESP8285 και σε αυτήν την έξυπνη λάμπα Tuya τα 4 κανάλια (RGBW) κινούνται από συνδέσμους που αλλάζουν απευθείας σήματα PWM από το ESP8266.

Το πράσινο κανάλι συνδέεται με το GPIO12, το κόκκινο με το GPIO14, το μπλε με το GPIO13 και το λευκό κανάλι συνδέεται με το GPIO4. Στον κώδικα βλέπετε ότι ως εξής: #define GREENPIN 12 #define REDPIN 14 #define BLUEPIN 13 #define WHITEPIN 4.

Ο πλήρης κωδικός βρίσκεται στο Github μου.

Βήμα 2: Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 1

Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 1
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 1
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 1
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 1
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 1
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 1

Εισαγωγή

Αγόρασα αυτούς τους λαμπτήρες LED από το Aliexpress Blue/white box και black box. Πρέπει να ελέγχονται μέσω της εφαρμογής Magic home smart home και της εφαρμογής Techlife pro. Δεν δοκίμασα αυτές τις εφαρμογές, αφού ήθελα να ελέγξω τους λαμπτήρες LED μέσω MQTT από το Openhab. Δεδομένου ότι είχα ήδη το υλικολογισμικό για τους λαμπτήρες RGBW, το χρησιμοποίησα με όχι τέσσερα (RGBW) κανάλια, αλλά μόνο ένα κανάλι.

Αναβοσβήνει

Ανοίγετε τη λάμπα αφαιρώντας προσεκτικά το πλαστικό καπάκι. Ανακάλυψα ότι το καπάκι ήταν λίγο κολλημένο στο μέταλλο, οπότε χρειάστηκα δύναμη από ένα κατσαβίδι ανάμεσα στο μέταλλο και το πλαστικό.

Περίμενα να δω ένα τσιπ ESP8266 ή ESP8285, ωστόσο ήταν μια ενότητα Broadlink. Η ενότητα έμοιαζε πολύ με μια μονάδα ESP12, αλλά διαπίστωσα ότι το pinout ήταν εντελώς διαφορετικό. Από την αφαίρεση του μεταλλικού καλύμματος, διαπίστωσα ότι ήταν ένα τσιπ RDA 5981AM.

Η λύση μου για την αντικατάσταση αυτού του τσιπ με ESP εμφανίζεται στο επόμενο βήμα.

Βήμα 3: Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2

Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 2

Οι μονάδες συνδέονται με τη βάση του λαμπτήρα μέσω 3 ακίδων, δείτε την πρώτη εικόνα:

  • 3V3 (3.3V)
  • GND (έδαφος)
  • PWM (διαμόρφωση πλάτους παλμού)

Ο πείρος PWM χρησιμοποιείται για τη ρύθμιση της φωτεινότητας της λάμπας μέσω σήματος PWM, το οποίο μπορεί να κυμαίνεται από 0 (η λυχνία είναι σβηστή) έως 100 (η λυχνία είναι εντελώς αναμμένη) και κάθε τιμή ενδιάμεση. Δείτε αυτόν τον ιστότοπο για περισσότερες πληροφορίες σχετικά με τα σήματα PWM.

Δεδομένου ότι οι μονάδες ESP8266 και ESP8285 λειτουργούν σε 3.3V και μπορούν εύκολα να δημιουργήσουν σήμα PWM, άλλαξα τις μονάδες Broadlink σε μονάδες ESP8266 ή ESP8285 που είχα τοποθετήσει.

Οι μονάδες ESP-01S (ESP8266) αναβοσβήνουν μέσω ξεχωριστού προγραμματιστή, δείτε το βήμα 3 αυτού του Οδηγού. Κόλλησα θηλυκές καρφίτσες κεφαλίδας στη λάμπα με αντίσταση έλξης μεταξύ 3V3 και EN (ενεργοποίηση). Αυτό ήταν το πρώτο μου πείραμα, αργότερα άλλαξα στις μονάδες ESP8285.

Οι μονάδες ESP-M1, ESP-M3 και ESP-01F (ESP8285) αναβοσβήνουν με συγκόλληση καλωδίων στις απαραίτητες συνδέσεις (3V3, GND, RX, TX και GPIO0 (βλ. Βήμα 1, αναβοσβήνει η έξυπνη λάμπα Tuya). I συγκολλήθηκε μια αντίσταση έλξης μεταξύ 3V3 και EN (ενεργοποίηση).

Με τη μονάδα ESP-M3, χρησιμοποιώ το GPIO4 για τη δημιουργία του σήματος PWM. Στην αρχή χρησιμοποίησα το GPIO2, αλλά όταν το LEDbulb είναι, το χαμηλό GPIO2 έχει ως αποτέλεσμα τον φωτισμό του ενσωματωμένου LED, το οποίο δίνει μια ανεπιθύμητη μπλε λάμψη στη λάμπα LED.

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

Επεξεργασία: Διαπίστωσα ότι η μονάδα ESP-01F δεν ξεκίνησε αξιόπιστα, πιθανώς λόγω αστάθειας ισχύος κατά την ενεργοποίηση. Το έλυσα προσθέτοντας έναν πυκνωτή τανταλίου 10 uF μεταξύ GND και VCC. Αξιοσημείωτο είναι ότι ένας κεραμικός πυκνωτής 10 uF δεν λειτούργησε.

Βήμα 4: Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 3

Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 3
Γενικοί θερμοί λευκοί λαμπτήρες LED - Μέρος 3

Υλικολογισμικό

Ο κωδικός βρίσκεται στο Github μου.

Το υλικολογισμικό περιλαμβάνει μια διεπαφή ιστού για τον έλεγχο της λυχνίας LED και έχει επίσης μια επιλογή ενημέρωσης του OTA του υλικολογισμικού μέσω του Webupdate

Βήμα 5: Έξυπνο βύσμα Sonoff ή BSD33 - Μέρος 1

Sonoff ή BSD33 Smart Plug - Μέρος 1
Sonoff ή BSD33 Smart Plug - Μέρος 1
Sonoff ή BSD33 Smart Plug - Μέρος 1
Sonoff ή BSD33 Smart Plug - Μέρος 1
Sonoff ή BSD33 Smart Plug - Μέρος 1
Sonoff ή BSD33 Smart Plug - Μέρος 1
Sonoff ή BSD33 Smart Plug - Μέρος 1
Sonoff ή BSD33 Smart Plug - Μέρος 1

Εισαγωγή

Αγόρασα αυτό το έξυπνο βύσμα WiFi από το Aliexpress. Λειτουργεί μια χαρά με την εφαρμογή Smart Life, αλλά ήθελα να το ελέγξω μέσω MQTT από το Openhab. Έφτιαξα ήδη το δικό μου υλικολογισμικό Sonoff για έξυπνα βύσματα και πρίζες, οπότε προσπάθησα να αναβοσβήσω αυτήν τη λάμπα με αυτό το υλικολογισμικό.

Χρησιμοποίησα επίσης αυτό το υλικολογισμικό για να αναβοσβήνω τα έξυπνα βύσματα Sonof S20 και Sonoff S26 και τους έξυπνους διακόπτες Sonoff Basic και Sonoff Basic R3. Ο τρόπος ανοίγματος και σύνδεσης υλικού συσκευών Sonoff για αναβοσβήνει περιγράφεται για την Tasmota στο wiki της tasmota, επομένως αυτό δεν περιγράφεται εδώ.

Ανοίγοντας την πρίζα

Το έξυπνο βύσμα είναι κολλημένο μεταξύ τους. Για να το ανοίξετε, βάλτε ένα κατσαβίδι στη γείωση και εφαρμόστε κάποια δύναμη χρησιμοποιώντας την άλλη πλευρά της πρίζας ως σημείο περιστροφής (υπόδειξη από το netpokin αυτό το θέμα). Με αυτόν τον τρόπο θα πρέπει να μπορείτε να το σβήσετε χωρίς να καταστρέψετε την πρίζα.

Στις εικόνες βλέπετε το εσωτερικό του βύσματος. Αποτελείται από έναν κύριο πίνακα με το ρελέ ένα μικρότερο pcb στο οποίο είναι τοποθετημένο το τσιπ ESP8266 και η μνήμη. Οι πλακέτες συνδέονται μέσω προσβάσιμων συνδέσεων συγκόλλησης.

Βήμα 6: Έξυπνο βύσμα Sonoff ή BSD33 - Μέρος 2

Sonoff ή BSD33 Smart Plug - Μέρος 2
Sonoff ή BSD33 Smart Plug - Μέρος 2
Sonoff ή BSD33 Smart Plug - Μέρος 2
Sonoff ή BSD33 Smart Plug - Μέρος 2
Sonoff ή BSD33 Smart Plug - Μέρος 2
Sonoff ή BSD33 Smart Plug - Μέρος 2
Sonoff ή BSD33 Smart Plug - Μέρος 2
Sonoff ή BSD33 Smart Plug - Μέρος 2

Αναβοσβήνει

Αντιστρέφω τις συνδέσεις συγκόλλησης. Δείτε την εικόνα για την περιγραφή των συνδέσεων. Βρήκα ότι:

  • Το GPIO2 είναι συνδεδεμένο στο LED (στο κουμπί του βύσματος).
  • Το GPIO13 είναι συνδεδεμένο στο ίδιο το κουμπί.
  • Το GPIO15 συνδέεται με το mosfet που αλλάζει το κύριο ρελέ.

Μπορείτε να τροφοδοτήσετε και να αναβοσβήσετε το ESP8266 χρησιμοποιώντας έναν προγραμματιστή FTDI. Συνδέστε θηλυκά καλώδια dupont στις ακόλουθες συνδέσεις: (VCC (3.3V), GND, RX, TX και GPIO0)

Το GPIO0 χρειάζεται για να φέρει το ESP8266 σε λειτουργία προγράμματος. Συνδέστε το στη γείωση όταν τροφοδοτείτε το ESP8266.

Στον προγραμματιστή μου FTDI πρόσθεσα έναν πυκνωτή 470uF μεταξύ γείωσης και VCC. Σε ένα άλλο έργο διαπίστωσα ότι αυτό αύξησε τη σταθερότητα.

Ο προγραμματιστής FTDI έχει κάποιες άλλες αχρησιμοποίητες ακίδες GND και VCC, μπορείτε να τις χρησιμοποιήσετε για να συνδέσετε το GPIO0 με το GND.

Βήμα 7: Έξυπνο βύσμα Sonoff ή BSD33 - Μέρος 3

Sonoff ή BSD33 Smart Plug - Μέρος 3
Sonoff ή BSD33 Smart Plug - Μέρος 3
Sonoff ή BSD33 Smart Plug - Μέρος 3
Sonoff ή BSD33 Smart Plug - Μέρος 3
Sonoff ή BSD33 Smart Plug - Μέρος 3
Sonoff ή BSD33 Smart Plug - Μέρος 3
Sonoff ή BSD33 Smart Plug - Μέρος 3
Sonoff ή BSD33 Smart Plug - Μέρος 3

Υλικολογισμικό

Το υλικολογισμικό μου βρίσκεται στο Github μου.

Κύρια μέρη του υλικολογισμικού

  • Σύνδεση με WiFi και διακομιστή MQTT
  • Χειροκίνητη εναλλαγή όταν είστε συνδεδεμένοι και εκτός σύνδεσης (κατά την εκκίνηση)
  • Εάν το ρελέ αλλάξει χειροκίνητα όταν η συσκευή είναι εκτός σύνδεσης, στέλνει την κατάσταση μέσω MQTT όταν επανασυνδεθεί
  • Η κατάσταση του ρελέ αποθηκεύεται στη μνήμη RTC (δείτε αυτό το βίντεο σχετικά με τη μνήμη RTC του ESP8266)
  • Διεπαφή ιστού για τον έλεγχο του διακόπτη και την πρόσβαση στο Webupdate για OTA
  • Το υλικολογισμικό είναι κατάλληλο για αυτό το έξυπνο βύσμα BSD33, αλλά και για συσκευές Sonoff: Sonoff S20, Sonoff S26, Sonoff Basic, Sonof Basic R3

Ενσωματώσεις Openhab

Χρησιμοποιώ αυτό το βύσμα για να ελέγξω την ισχύ της μηχανής καφέ μου. Μέσω του Openhab και του Google Home μπορώ να το ελέγξω μέσω φωνής.

Υλοποίησα ένα χρονόμετρο που αλλάζει τη μηχανή του καφέ μου μετά από μια προκαθορισμένη ώρα, δείτε την εικόνα του χάρτη ιστότοπου Openhab. Ο προκαθορισμένος χρόνος εγχέεται στο NodeRed, με διαφορετικούς προκαθορισμένους χρόνους τις καθημερινές και τις ημέρες του Σαββατοκύριακου.

Ανατρέξτε στο Github μου για παραδείγματα στοιχείων, κανόνων και αρχείων χάρτη ιστότοπου.

Συνιστάται: