Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia

p.kaczmarek2 15 Jun 2022 16:59 1551 9
e-mierniki
  • Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Witajcie, przedstawię tu jak w praktyce prezentuje się płytka rozwojowa DT-BL10 oferująca BL602 od Bouffalo Lab, czyli mikrokontroler Wi-Fi + BLE o taktowaniu do 192MH.
    Płytka ta była już pokazywana na naszym forum jako news:
    DT-BL10 - płytka prototypowa z BL602, Wi-Fi i Bluetooth za 5 dolarów
    BL602 zainteresowałem się ponieważ zaczął występować on w różnego rodzaju urządzeniach IoT, takich jak inteligentne LEDówki, przekaźniki sterowane przez WiFi, kontrolera pasków LED, itd. Nie występuje on tak często jak ESP8266 czy tam BK7231T/BK7231N, ale częściej niż inne mniej znane moduły. Chyba mniej więcej tak często, jak układy Realteka (RTL8710BN, moduły WBR2 i podobne). Mój OpenBeken już go wspiera, ale i tak uznałem, że warto przedstawić pokrótce tu ten moduł.


    Zakup płytki
    Płytkę udało sprowadzić mi się z Chin za około 35 zł (już wliczając koszty przesyłki). Nie było problemów z cłem, ale na paczkę czekałem kilka tygodni. Oto zrzut ekranu z aukcji gdzie kupowałem:
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Otrzymany zestaw:
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Na płytce oprócz głównego modułu BL jest stabilizator LDO dający nam 3.3V z 5V z USB oraz CH340N, czyli konwerter USB na UART, do którego może być potrzeba zainstalowania sterowników.
    Pin "DX" odpowiada "GPIOX" (gdzie X to indeks pinu), więc nie ma problemów z mapowaniem wyprowadzeń.

    SDL BL602 i wgrywanie wsadu
    Wymagane SDK dostępne jest za darmo na Githubie:
    https://github.com/bouffalolab/bl_iot_sdk
    SDK obejmuje też program do wgrywania wsadu przez USB (a właściwie to UART, na płytce jest CH340), BLDevCube.exe.
    Opis kompilacji i wgrywania wsadu przedstawiałem już w tym temacie:
    Zamiennik Tasmoty dla BL602, programowanie, parowanie z Home Assistant.
    Kompilacji dokonuje się w Msys z pakietu Mingw.
    Aby wgrać wsad:
    1. zwalniamy port UART (jeśli mamy go otwarty w Realterm by odczytywać logi)
    2. trzymamy wciśnięty przycisk Boot
    3. chwilowo naciskamy En
    4. zwalniamy przycisk Boot
    5. w BLDevCube.exe włączamy wgrywanie wsadu (nasza binarka to firmware.bin)
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    6. po wgraniu wsadu, by uruchomić normalnie program, wciskamy krótko przycisk En

    Oprócz tego, od jakiś 9 miesięcy, mamy też dostępny framework dla PlatformIO i VSCode:
    https://github.com/Community-BL-IOT/pio-bl602-boufallo-arduino-test
    Pozwala to programować ten moduł podobnie jak Arduino:
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Osobiście tego nie testowałem, ale uważam, że to wspaniała alternatywa dla początkujących i na pewno wielu osobom to znacznie ułatwi przygodę z tą platformą.

    Dostępne przykłady
    SDK zawiera przykłady użycia peryferiów i dostępnych bibliotek, obejmujące ADC, DAC, dostęp do pamięci Flash, GPIO, I2C, PWM, RNG (generowanie liczb pseudolosowych), RTC, SPI, timery, UART, watchdog), OTA, sockety, HTTP, DNS i wiele więcej:
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia

    Środowisko pracy
    Moduł z DT-BL10 najłatwiej jest ustawić na dwóch płytkach stykowych, przy czym od jednej z nich musimy odpiąć jedną z szyn zasilania/masy. Jest to bardzo łatwe w przypadku standardowych płytek stykowych:
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Na jednej płytce stykowej się po prostu nie zmieści. Warto zatem pamiętać o zakupie dwóch, jak dopiero zaczynamy przygodę.

    BL602 w urządzeniach IoT
    BL602 stosuje się w różnych urządzeniach 'smart', przykładowo w kontrolerach paska LED Magic Home:
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    W Sonoff MINIR3:
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    źródło: https://notenoughtech.com/home-automation-review/sonoff-minir3/
    W LEDówce smart jako BL-200 (DT-BL200):
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    (przy okazji, na zdjęciu macie podpisane wyprowadzenia BL-200)
    A tu z kolei z innej lampki LED, zupełnie inny, mini-pcb z BL602 (tutaj użyty jest protokół I2C do kontroli z obsługą LEDów RGB poprzez SM2135):
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia

    Podsumowanie i wrażenia
    Płytka jest dość wygodna w użyciu, lecz uważam, że kilka rzeczy można by w niej usprawnić.
    - na pokładzie jest jeden CH340, czyli jeden port UART, który służy zarówno do drukowania (i odbierania) informacji na terminal, jak i do programowania. W przypadku podstawowego SDK nie ma zintegrowanego środowiska dla BL, więc w roli terminala mam Realterm a do programowania używam BLDevCube.exe. Z tego powodu przed każdym programowaniem muszę ręcznie zwolnić port w Realterm a po programowaniu znów go otworzyć. Niby to tylko dwa kliknięcia, ale zawsze...
    Aczkolwiek ten problem rozwiązuje wgrywanie wsadu przez WiFi - OTA: https://github.com/bouffalolab/bl_iot_sdk/tree/master/customer_app/system/ota/demo_ota
    Być może rozwiązane jest też to we frameworku od PlatformIO wspomnianym wcześniej, tam wszystko jest razem w jednym IDE.
    - szkoda, że w ogóle trzeba naciskać te przyciski by wgrać wsad. Jakby użyty konwerter USB na UART miał GPIO, to można by tego uniknąć. Podobny mechanizm jest w Arduino. W swoich projektach stosowałem do tego MCP2221 i odpowiedni sterownik. Nawet w przypadku PIC32MZ poprzez GPIO MCP2221 byłem w stanie zewrzeć do masy pin RESET pin PICa i wywołać reboot.
    - nie wiem czemu niektóre wyprowadzone piny są N/C, przecież jak jest wolny to mogli dać tam masę, zawsze to wygodniej...
    Mimo wszystko moduł jest dość poręczny i tani, te tytulowe "5 dolarów" się nie utrzymało, ale "niecałe 8$" też brzmi nieźle.
    Płytka ta naprawdę ułatwiła mi rozwój OpenBeken (czy tam: OpenBL602), jednak znacznie łatwiej testować jest na płytce rozwojowej niż na urządzeniu IoT.
    Bluetooth z tej płytki jeszcze nie uruchamiałem, ale jak coś ruszy, to może pokażę na forum.
    Zapraszam do zapoznania się z dokumentacją BL602:
    https://pine64.github.io/bl602-docs/

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    p.kaczmarek2
    Level 26  
    Offline 
  • e-mierniki
  • #2
    szymon122
    Level 38  
    p.kaczmarek2 wrote:
    Nie występuje on tak często jak ESP8266


    Czy ten układ lub te z początkiem "BK" mają jakieś przewagi względem ESP8266? Ten drugi jest chyba tańszy co w przypadku tak prostych układów jak np żarówki WiFi jest nie bez znaczenia :)
  • #3
    p.kaczmarek2
    Level 26  
    Przede wszystkim układy Beken oferują dodatkowo też Bluetooth. A jeśli chodzi o cenę, to z tego co słyszałem to dla producentów urządzeń typu Tuya właśnie Beken też jest tańszy, ale tej informacji nie mam jak zweryfikować.

    Faktem natomiast jest że producenci zastępują masowo ESP poprzez BK w urządzeniach IoT. Nawet moduły z nimi mają zgodny footprint, np. TYWE3S (ESP12F) zastępuje WB3S.
  • e-mierniki
  • #4
    szymon122
    Level 38  
    p.kaczmarek2 wrote:
    A jeśli chodzi o cenę, to z tego co słyszałem to dla producentów urządzeń typu Tuya właśnie Beken też jest tańszy


    BL602 przy zamówieniu >1000 sztuk w Chinach kosztuje 1.1152$ a ESP8285 0.981$ również powyżej 1000szt.
    ESP8285 to to samo co ESP8266, lecz ma wbudowaną pamięć zamiast używania dwóch scalaków.

    Jeśli chodzi o bluetooth to jest np ESP32-S2, wtedy mamy również np Ethernet i ogólnie większe możliwości, ale tu już cena trochę wyższa - 1.7096$ przy 30 sztukach (nie mam wycen dla >1000szt, wtedy może byłoby lepiej).

    Zatem jeśli bluetooth jest potrzebne to jest to alternatywa w podobnych pieniądzach, trochę taniej od ESP32.
  • #5
    chemik_16
    Level 25  
    Nie chodzi tu tylko o cenę, w tych BK mamy zaszyfrowany wsad, i utrudnioną zmianę oprogramowania, chinom raczej nie na rękę było modowanie ich chmurowych rozwiązań za które dostają $$ i metadane i zastępowanie otwartym oprogramowaniem.
  • #6
    p.kaczmarek2
    Level 26  
    chemik_16 wrote:
    chinom raczej nie na rękę było modowanie ich chmurowych rozwiązań

    A mimo to udostępnili SDK Tuya dla BK7231 wraz z bkWriter na Githubie... zresztą AliOS chyba też wsparcie BK ma.

    I dodatkowo też nie zabezpieczyli dobrze swoich buforów, jeden z nich można przepełnić (dokładnie bufor od parsera JSon) i potem wykonywać tak zdalnie bez autoryzacji operacje na danym urządzeniu IoT, w tym zrobić OTA i wgrać OpenBeken na dane urządzenie bez otwierania jego obudowy. I tak powstał tuya-cloudcutter
  • #7
    khoam
    Level 41  
    p.kaczmarek2 wrote:
    Faktem natomiast jest że producenci zastępują masowo ESP poprzez BK w urządzeniach IoT.

    Poproszę o wiarygodny link do tej rewelacyjnej informacji.

    szymon122 wrote:
    Jeśli chodzi o bluetooth

    To jest również dostępny w ESP32-C3 oraz C2. Oba tańsze od archaicznych "bekenów", z solidnym wsparciem ESP-IDF, FreeRTOS oraz Arduino Core.
  • #8
    p.kaczmarek2
    Level 26  
    khoam wrote:

    Poproszę o wiarygodny link do tej rewelacyjnej informacji.

    Trochę mam deja vu, bo chyba na to pytanie już Tobie odpisywałem, ale:

    Przykład 1 - a raczej przykłady - spójrz na same urządzenia na stronie blakadder, np. ZMAi-90 - https://templates.blakadder.com/ZMAi-90.html
    Quote:

    WARNING: New Tuya devices have replaced their Wi-Fi module with one incompatible with Tasmota!!!
    Tuya-Convert might not be possible for this device since the template was added (2020-05-12).

    Zamienili TYWE3S na WB3S (wiem, bo mam w kolejce ten produkt).
    Takich przykładów można mnożyć:
    https://templates.blakadder.com/feit_electric-BPA800RGBWAG2P.html
    https://templates.blakadder.com/polux_313799.html
    https://templates.blakadder.com/treatlife_DS01.html tu w 2019 zmienili

    Przykład 2 - opinie użytkowników na Reddicie
    "That moment when you realize the 30 tuya lights you just bought no longer contain ESP8266..."
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Bardzo dobry przykład, ktoś kupił lampki licząć na ESP a tam BK...


    "Tuya moving away from ESP8266"
    Quote:

    Tuya moving away from ESP8266
    I've had lots of success in the past flashing bulbs, switches, plugs, etc with Tuya-Convert, it works amazingly well.

    I wanted to get my dad into the home automation game for Christmas since he seems to like my setup.

    So I got him all set up with HA at home and flashed his existing bulbs and smart plugs with no issues.

    I figured I'd get him 8 more smart bulbs for Christmas and 4 or 5 smart switches.

    I've purchased over 30 light bulbs and probably 15 smart switches so far and have not had success flashing anything. Every time I pull them apart after tuya-convert fails and find something other than an ESP8266.

    So far I've tried merkury bulbs from walmart, and nitebird bulbs from Amazon. All models say they may work when I look them up on the repository, and FCC ID pictures show ESP 8266 but when I open them, they are clearly on a different chip.

    https://www.reddit.com/r/tasmota/comments/k2vvup/tuya_moving_away_from_esp8266/
    Is Tasmota on Tuya dead?|
    Quote:

    I haven’t messed with Tasmota at all until recently. In reading Blakadder templates, it is noted all over that newer Tuya firmware prevents flashing. So does this mean Tuya/rebranded Tuya devices are essentially “uncrackable”? Or simply that one has to solder leads to serial connections? And is that even reasonable on most devices?


    Przykład 3 - opinie sprzedawców urządzeń smart, np. z jednym współpracuję i on twierdzi że już na ESP nie produkują
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    To jeden ze wspierających projekt, zarówno poprzez donacje $$$ jak i wysyłke urządzeń, on sprowadza z Chin produkty IoT brandowane na jego firme i sprzedaje je w polsce, od niego dostałem takie 3 gniazda do testów:
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Czemu z nim współpracuję? O tym się dowiecie wkrótce...

    Przykład 4 - zapomniałbym, ale nawet na Elektrodzie pisali o tym użytkownicy...
    Raz
    pillarama wrote:
    Greetings everyone. Just sharing my experience - I purchased a set of RGB LED smart bulbs branded "Arlec GRID Connect SMART LED GLOBES" from the local hardware store here in Australia.
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Popped one open and found that they are running WB2L modules. :(
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Seems that nothing ships with ESP modules any more... :( Then I found this forum - and hope!

    Dwa
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia
    Trzy
    Płytka DT-BL10 czyli moduł z BL602 w praktyce - moje wrażenia


    Mógłbym tego znacznie więcej przytaczać ale nie mam czasu na takie zabawy i mam dziwne wrażenie, że i tak nie byłoby to pożyteczne spożytkowanie mojego czasu

    khoam wrote:

    To jest również dostępny w ESP32-C3 oraz C2. Oba tańsze od archaicznych "bekenów", z solidnym wsparciem ESP-IDF, FreeRTOS oraz Arduino Core.

    Nie rozumiesz celu projektu który prowadzę. Wróć do pierwszego tematu z serii i zapoznaj się z tym skąd wziął się projekt.

    Ale dla innych czytelników napiszę - projekt wziął się stąd, że w urządzeniach smart są "bekeny" i łatwiej oraz taniej jest im zmienić wsad niż wymieniać je na inne. Osobiście nie wiem czy w ogóle można gdziekolwiek kupić samego "bekena" bez urządzenia smart a dodatkowo nie widzę w tym sensu.

    Zatem jeśli myslicie o tym by zrobić jakiś projekt z WiFi i Bluetooth, to nawet nie próbujcie wybierać "bekenów". Wybierzcie jakieś popularne i tanie rozwiązanie, które łatwo kupić, jest dobrze udokumentowane i daje nam jakąś pewność, że np. za 10 lat dalej będą uzyte przez nas moduły w sprzedaży.
  • #9
    khoam
    Level 41  
    p.kaczmarek2 wrote:
    Mógłbym tego znacznie więcej przytaczać ale nie mam czasu na takie zabawy

    Nie napisałeś nic, co by świadczyło o tym, że producenci masowo wymieniają ESP na BK w urządzeniach IoT. Elektroda to nie forum plotkarskie.

    p.kaczmarek2 wrote:
    Nie rozumiesz celu projektu który prowadzę.

    Nie ma to dla mnie żadnego znaczenia. Zwróciłem jedynie uwagę na faktoidy na temat ESP, które coraz częściej zdarza Ci się generować. Lepiej, abyś skupił się chyba na swoim projekcie.
  • #10
    p.kaczmarek2
    Level 26  
    Ok @khoam, to może zróbmy to inaczej.

    Jakiego rodzaju odpowiedzi oczekujesz i co by Cię przekonało, że rzeczywiście zamieniają ESP na BK? Obawiam się, iż cokolwiek nie napiszę, to zostanie przez Ciebie odrzucone.

    Tak wysoko sobie postawiłeś poprzeczkę, że pewnie tylko oficjalne stanowisko Tuya by Cię przekonało, a raczej wiemy, że takiego stanowiska nie doświadczymy...

    Czyli reasumując, pewnie nawet gdybym wskazał 100 urządzeń gdzie przeszli z ESP na BK to i tak byś to odrzucił, więc Twoje stanowisko sprowadza się do absurdu i dalsza dyskusja i tak nie ma sensu.


    EDIT:
    khoam wrote:

    Zwróciłem jedynie uwagę na faktoidy na temat ESP, które coraz częściej zdarza Ci się generować. Lepiej, abyś skupił się chyba na swoim projekcie.

    Tak jak napisałem wcześniej - jestem przekonany, że w ostatnich latach rzeczywiście w dużym stopniu przeszli z ESP na BK (i pewnie też nieco na inne moduły) a społeczność Tasmoty to potwierdza, jak również dystrybutor mający kontakt z fabryką z którym współpracuję (wspierający projekt).

    Dyskutować można by jedynie o skali tego zjawiska (jeśli byś zwrócił uwagę na słowo "masowo" i dyskutował, że może nie w tak dużym stopniu, to bym Ci przyznał rację), ale zjawisko na pewno ma miejsce.

    Ale w każdym razie - i tak się wzajemnie nie przekonamy więc raczej EOT.