Ais USB Bridge 👷

Ais USB Bridge

:bridge_at_night: :construction_worker_man:

Kodujemy nową funkcjonalność, za wcześnie jest na wbudowanie jej do aplikacji na bramce dlatego zbudowaliśmy to jako osobną aplikację Android.

Ta aplikacja umożliwia podłączenie adaptera UART (szeregowego) za pomocą USB do gniazda TCP w celu zdalnego wysyłania i odbierania danych.

Przykłady użycia:

  • podłącz adapter Zwave do tabletu (panelu sterowania AIS) za pomocą kabla OTG i uzyskaj do niego dostęp z bramki AIS dom za pomocą połączenia TCP
  • podłącz adapter Zigbee do tabletu (panelu sterowania AIS) za pomocą kabla OTG i uzyskaj do niego dostęp z bramki AIS dom za pomocą połączenia TCP
  • podłącz Arduino do telefonu za pomocą kabla OTG i uzyskaj do niego dostęp z bramki AIS dom za pomocą netcata
  • podłącz ESP8266 / ESP32 do telefonu za pomocą kabla OTG i uzyskaj do niego dostęp z bramki AIS dom za pomocą netcata
    itd…

Czyli w skrócie, chodzi o to, żeby w prosty sposób połączyć dowolne urządzenie które nie ma wbudowanej komunikacji USB (nie rozumie co to jest CDC ACM, tylko komunikuje się szeregowo) do urządzenia(bramki, tabletu, telefonu, telewizora) z systemem Android i komunikować się z nim po TCP.

Co będziesz potrzebował

Aplikacji Ais USB Bridge

https://powiedz.co/ota/

Adapter/Kabel USB OTG

Oczywiście z odpowiednimi gniazdami dla twoich urządzeń (telefonu i urządzenia USB)

albo taki mini hub który pozwala zasilać telefon/tablet podczas jego pracy z urządzeniem USB

Jak to działa

Aplikacja prowadzi krok po kroku:

  1. Uruchamiamy serwer TCP

  1. Podłączamy adapter USB

  1. Łączymy się z adapterem z aplikacji (zigbee2mqtt, zwavejs2mqtt…) za pomocą TCP

tu powinnien zacząć się “Matrix” będzie widać komunikację pomiędzy adapterem USB a aplikacją w formie skonwertowanych tablicy bajtów na ciąg cyfr szesnastkowych - żeby było łatwiej czytać :wink: te “ramki wiadomości” którymi wymienia się aplikacja z urządzeniem

Za jakiś czas, jeżeli będzie to działać stabilnie, to wbudujemy tę funkcjonalność w aplikację na bramce.

Udanej zabawy :slight_smile:

5 polubień

@jolka to może jest to już tylko krok aby zintegrować zacny polski alarm Elmes z Jolką za pomocą tego:

http://www.elmes.pl/pl/produkty/nadajnik-sterowany-portem-szeregowym-tx-rs2

Pozdrowienia

Można to wykorzystać do dongla Cc2652p od Grzegorza?

@kapryk, @sdsi - można wszystko z tym integrować co komunikuje się po UART, ale trzeba wiedzieć co zrobić z odczytanymi ramkami danych, a przede wszystkim co te dane prezentują.
Proste protokoły można by przetwarzać w HA podobnie jak przy integracji z bramką RF czy Broadlink. Odczytać ramkę - przypisać akcję, wysłać komendę do klienta TCP.
Lecz pracę dla poszczególnych protokołów pod integrację ktoś musi wykonać.
@jolka - dzięki za super narzędzie. Kolejny element, który wyróżnia Wasz projekt. :clap:

1 polubienie

Już czytam…
Na początek lektury:

@jolka Czy ta funkcja trafiła już do aplikacji czy nadal jest wymagane posiadanie 2 aplikacji na telefonie oraz czy trafi ona do sklepu z aplikacjami?

To jest nadal osobna aplikacja.

Kupiłem sobie taki hub tylko ze na micro i niestety nie ładuje jednocześnie urzadzenia :frowning:
Czy ten Wasz faktycznie ładuje?
W necie poczytałem że tak się niby nie da, albo otg albo charging. Ale znalazłem sposoby na lutowanie rezystora, to macie zrobione? To “bezpieczne”?

Podbijam powyższe pytanie.
@jolka czy ten Wasz hub ładuje jednocześnie telefon?

a jest jakaś wersja na inne systemy która z tym współpracuje ?

a o co pyta???

chciałbym podłączyć coś do androida a mieć to dostępne na windowsie np.
są inne softy i już to robiłem, ale pytanie czy soft od jolki by to ogarnął

Czym jest to coś? Oczekujemy tutaj jakby konkretów żeby jakkolwiek pomóc, doradzić.
BTW. Ta usługa jest jakby OSless, po prostu masz urządzenie nie na porcie np. COM5, tylko TCP np.192.168.2.10:1234

Swoją drogą kiedyś zajmowałam się testowaniem Hosta jak i Klienta USB w różnych wariantach łącznie z technologią WiGig - to nie są łatwe tematy.

Otatnio musiałem zrobić synchronizację legimi(księgarnia) na windows z kindlem znajdującym się w Hiszpani gdzie nie było żadnego kompa z osx ani windowsem. Udało się podłączając do androida ale soft którego użyłem był w wersji trial, dlatego pytam.
Ale to tylko com obsługuje ?

Poczytaj… są tam też moje próby z innymi aplikacjami. Po stronie Win nie wiem jak to wygląda ale podobnych aplikacji na android jest wiele.

Hej, to nie zależy od “naszego” hub-a tylko od Twojego telefonu.

Niektóre telefony będą ładować i korzystać z OTG w tym samym czasie, wiele z nich będzie działać z kablem typu “USB Y cable” lub adapterem USB do ładowania, a niektóre mogą w ogóle nie działać.
Możesz poszukać w necie model swojego telefonu z dopiskiem “OTG and charging” i zobaczyć wynik.

Tu jest też strona na której wymienione są telefony, które powinny i nie powinny działać z OTG i ładowaniem:

http://techref.massmind.org/techref/io/usb/OTG.htm

image

PS
My podłączamy ten nasz USB bridge do tabletu PoE, tablet jest zasilany z PoE (kablem Ethernet), jest w centralnym miejscu w domu, do USB podłączamy adapter Zigbee lub Zvawe i wszystko śmiga. Połączenie bramki z tabletem jest niezawodne, bo jest po Ethernet. Mamy nadzieję, że kiedyś wprowadzimy do sprzedaży taki tablet i wtedy będziemy w stanie wspierać nasze oprogramowanie USB bridge na naszym sprzęcie.

1 polubienie

Czy Wasza aplikacja Ais USB Bridge może dostarczyć sterowniki dla popularnych konwerterów USB/UART (TTL), takich jak CH340 czy CP2102? Jest z tym problem w Android na bramkach DEV, a te układy sprzętowo są praktycznie wszędzie.

Tak, może.
Ta aplikacja ma sterowniki do tych układów w przestrzeni użytkownika (be potrzeby ich dodawania do jądra). To jest podejście Androidowe - tak to wymyśliło Google.

Istotne jest tu, żeby zrozumieć, że:

  1. Niektóre urządzenia nie mają wbudowanej komunikacji po USB tylko po serialu. CH340 czy CP2102 to konwertery komunikacji serial do USB.
    Żeby takie konwertery działały, wymagają sterownika, sterownik może być dodany w jądrze (dodaliśmy w PRO1) albo może być w przestrzeni użytkownika. Rozwiązanie ze sterownikiem w przestrzeniu użytkownika jest bardziej zgodne z filozofią Android i bardziej przyszłościowe (można podłączyć adapter do tabletu w centralnym miejscu w domu).

  2. Na stronie z dokumentacją wyraźnie zaznaczamy, co my wspieramy (co można wkładać do bramki). Jeżeli ktoś ma potrzebę włożenia czegoś więcej i mu to nie działa, nie wie jak to zrobić, żeby działało a bardzo tego potrzebuje… to zawsze może zgłosić projekt:

@jolka - pytam, ponieważ z moich i kolegi @Pelicjan testów w temacie poniżej, doszedłem do wniosku, że jednak aplikacja AIS nie dostarcza tych sterowników.

nie mamy takich urządzeń i jak dotąd nie mieliśmy takiej potrzeby żeby coś takeigo wkładać do bramki więc na 100% nie wiem czy to działa

AIS USB Bridge ma sterowniki z tego projektu:

jest też inny projekt - który robi to samo:

Są kody trzeba umieć je zintegrować.

Macie nieograniczone możliwości - działajce! Pmożemy wam.

Powtarzam jak mantrę, jeżeli ktoś ma ogromną potrzebę włożenia do USB bramki, czegoś, co nie komunikuje się po USB i czego nie wspieramy i ten ktoś nie umie kodować, to zawsze może zgłosić projekt:

Pomożemy poszukać programisty Java, który podłączy to urządzenie, sprawdzi w kodzie, co się dzieje i opracuje rozwiązanie, które będzie działać “od ręki”. My do takiego projektu dopłacimy 50%.

Nie skupiaj się na problemie - skup się na rozwiązaniu

Pamiętacie projekt Darka z integracją Arduino Mega?

Ten projekt zaczął się od tego, że wyjaśniliśmy Darkowi jak komunikować się po MQTT z Arduino bez konieczności wkładania go do USB w bramce.

PS

Ten kot to symbol użytkownika, który wkłada do USB w bramce urządzenie, które nie komunikuje się po USB i czeka…

1 polubienie