Forumi


Povratak   PC Ekspert Forum > Računala > Software > Web dizajn, programiranje i ostalo
Ime
Lozinka

Odgovori
 
Uređivanje
Staro 30.11.2016., 11:32   #1
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
Android parsing inputs sa OTG USB uređaja u globalne kontrole; tethering media server

Hvala unaprijed svima koji će pomoći.

Kod Androida nisam nikad programirao svoju vlastitu aplikaciju, međutim u zadnje vrijeme sam počelo malo njuškati oko njega jer imam jednu specifičnu situaciju, opis slijedi.

Cilj: Radi se o integraciji Nexus 7 2013 (flo, wlan only) tableta unutar starijeg BMW-a, da postane integralni non/semi-removable uređaj koji će služiti za navigaciju, kao internet radio i općeniti music player.

Motivacija: Želim da se kontrole na volanu (glasnoća, bck-fwd itd.) mogu prenijeti na tablet/Android, te se za tu svrhu koristi adapter koji omogućuje "čitanje" poruka kad su tipke na volanu pritisnute s IBUS-a. IBUS je pak BMW specifični sustav baziran na standardiziranom K-Bus (ISO 9141), te postoje gotovi čipovi koji mogu čitati poruke kodirane tim postupkom. Dodatna ušteda vremena je kupnja gotovog USB-Donglea (Resler). Ovaj dio priče je relativno jednostavan i nema direktnu interakciju s Android aplikacijom, već bi Android trebao "samo" slušati ima li USB-Dongle nešto za reći.


Cilj svega ovoga je da se tipke volana mogu koristiti primarno kao globalne naredbe poput postojećih tipki na tabletu (pošto će tipke biti nepristupačne). To znači da ak stisnem "+" u autu da mi Android poveća glasnoću na način kao što to inače nativno radi: ako sam na home, da mi pojačava zvuk notifikacija, a ako sam u nekoj aplikaciji da pojačava media stream zvuk.

Ovo bih riješio na taj način da se pojednostavi sustav i da se osigura kompatibilnost svih ispravno napravljenih aplikacija.


Hardverski sam potkovan, implementacija se sastoji od polugotovih komponenata (financijski i vremenski isplativije), a ugradnja u sam dash automobila je još uvijek u testnoj fazi, ali dosad sam riješio sljedeće:
  • DC 12 na DC 5V adapter, dovoljne snage da pogoni nekoliko uređaja paralelno (specifikacija kaže 100W, ovdje sam napravio debeli oversizing da ne bi došlo do pregrijavanja jer je deklariran na do +85°C)
  • aktivacija eksternog pojačala bez originalnog radio uređaja
  • predpojačalo zvuka za ugrađeno pojačalo jer izlazna snaga Android uređaja nije bila dovoljna; baziran na IC PAM8403.
  • Kablovinje s adapterom, kako bi originalni kablovi ostali netaktnuti
  • aktivacija sklopa preko ACC pozicije na ključu auta preko releja koji šalta na glavnu 12V granu. Svrha: ne crpi bateriju auta dok je auto ugašen + osigurač za ACC 12V granu je znatno manji od glavne 12V grane prema radio uređaju.
  • OTG USB kabel za OTG + charge
  • Nexus 7 root + Kernel s opcijom OTG + charge
  • Resler IBUS interface (USB dongle) - prima IBUS poruke i prebacuje na standardni USB
  • Dodatna dva USB porta, charge only.

Što sam dosad uspio iskemijati u Android Studiu:
  • aktivacija aplikacije kad prepozna USB uređaj (USB manifest). Znači uspio sam prema dokumentaciji sa android stranica ipak nešto sklepati.
  • Izlistati spojene uređaje preko USB-Huba

Što mi treba:
  • service koji će biti aktivan kad je USB-dongle spojen. Pošto će on biti spojen 99.9% vremena, može se napraviti i service koji će biti aktivan odmah po paljenju. Rado bih odmah napravio kako treba, naučim odmah i to.
  • Primanje podataka sa USB-donglea. Ovo je kritični dio koji ne znam kako implementirati.
  • Parser/prevodilac primljenih poruka sa USB-donglea u globalne komande.
  • Kao proširenje prethodne točke: mapper primljenih poruka na specifične naredbe u androidu.


--
Moji dosadašnji infosi:

IBUS osnove

Na githubu sam naletio na nekoliko verzija interfacea za IBUS + Nexus 7, međutim svi koriste okolne metode preko rPi, IOIO i bluetooth rješenja, što je po meni blesavo jer u startu svi koriste isti način pristupa IBUS-u, što znači da IBUS-to-USB teoretski mora funkcionirati i direktno spojen na Androidu. Pošto je uređaj prepoznat od strane android OS-a, mislim da nema problema po tom pitanju.

DroidIBus (IOIO verzija)
BMWired: koristi usb-serial-for-android, ali mi je šturo dokumentiran, pa nisam znao di početi.

Također sam naletio na usb-serial-for-android lib koji bi mi mogao pomoći, ali nemam blage veze je li to way-to-go. Nexus 7 je službeno podržan što je definitivno plus.

Postoji puno primjera gdje su ljudi "prevarili" IBUS da je CD-Player još uvijek aktivan ili slične kerefeke, međutim za mene to nije opcija.

--


U budućnosti bih volio i sljedeće stvari riješiti, ali one nisu prijeko potrebne:
  • integracija deep sleepa nakon što nestane napajanja (tablet na bateriji)
  • USB Hub koji trenutno ne funkcionira ako nestane napajanja bez iskopčaj-ukopčaj kabel u tabletu.
  • restart naredba u shut down meniju (nema je na AOSPu)
  • mogućnost korištenja tetheringa s mobitela te da mobitel ujedno bude media server, tj. da je moguće kroz tethering slušati muziku s mobitela
  • telefonija preko tetheringa - koristiti mobitel kao server preko kojeg se zove/prima poziv, ali da se zvuk prenosi tetheringom na tablet, tj. da se omogući handsfree.

--
Na stranu budućnost, točke pod "Što mi treba" su trenutno aktivne i ako bilo tko može pomoći i/ili je imao iskustva sa sličnim stvarima na Androidu, molio bih da javi. Svaka informacija je dobrodošla
OFC: kod će na kraju biti dostupan preko Githuba za svakoga tko će htjeti isprobati/koristiti.
__________________
Spoiler alert!
De5tr0yer je offline   Reply With Quote
Staro 12.03.2017., 20:22   #2
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
Prošlo je dosta vremena od mog pitanja, u međuvremenu sam naučio znatno više nego sam mislio da je potrebno (a bilo je potrebno), tako da sam jučer uspio napraviti koliko-toliko zaokruženu funkcionalnost background servicea na androidu.

U kratkim crtama:
  • osnove objektnog programiranja must-have --> poželjno znanje Jave. Osobno mi je Java mrska, ali uspio sam se nekako natjerati. Nije preteško.
  • Počeo sam jednostavno, da shvatim kako radi USB host: device enumeration, USB port list, interfaces + direction.
  • Primanje bilo kakvih podataka preko USB-a.
  • Prebacio sam se na korištenje usb-serial-for-android, iz kojeg sam naučio da ima priličan broj parametara koji se još moraju "dodati" na osnovno ostvarivanje komunikacijskog kanala s USB uređajem kako bi se moglo ispravno čitati podatke. Postoje gotovi driveri za najpopularnije USB-serial IC-ove, među njima i za moj u vidu Cp21xxSerialDriver.
  • Fenomenalna stvar je bila SerialInputOutputManager (u daljnjem tekstu manager), koji dolazi u paketu sa usb-serial-for-android. Manager reagira na ulazni i/ili izlazni stream podataka na USB-u. Iz toga sam shvatio da nema kruha bez Threadinga. Tu se stvari počinju malo komplicirati, jer za nekog tko nije radio (multi)threading dosad, ne može se samo uzet nečiji primjer i adaptirati, trebalo bi se razumjeti što se radi. Nazad na osnove, pa onda potom tek dalje.
  • Prvo sam koristio također primjere iz gore navedene biblioteke, SerialConsoleActivity. Kad sam počeo dobivati suvisle (očekivane) podatke na USB-u, išao sam korak dalje.
  • Stvaranje poruka od podataka iz USB buffera. Drugim riječima, prepoznavanje koju sam tipku na volanu pritisnuo. KeyMapping.
  • Odrađivanje funkcije kad se prepozna koja je tipka pritisnuta. Iz Manager Threada se informacija u primjerima vraća u UI Thread --> za background service neće ići. U ovom trenu preko UI Threada funkcionira pojačavanje/stišavanje.
  • "Gradnja" servisa: glavni problem mi je bio shvatiti kako iz Managera odraditi podešavanje glasnoće: novim threadom i izgradnjom podklase tipa Runnable koja će se vrtiti na tom threadu. Funkcionira super

Ovo gore je jako puno sitnica i finesa komprimirano u najkraće moguće objašnjenje, tko treba detaljnije, neka pita.

Trenutno pokušavam shvatiti kako mogu kontrolirati mediaplayback (next, previous, ffw, rwd) ako je neki mediastream aktivan, a ako nije da tipke gore/dolje mogu služiti navigiranjem izbornicima. Ako netko ima iskustva, nek mi javi, rado bih prihvatio kratki how-to da si smanjim muku

Kad završim i koliko-toliko uredim kod, osvanut će na githubu, ako će eventualno nekome koristiti.
__________________
Spoiler alert!
De5tr0yer je offline   Reply With Quote
Oglasni prostor
Oglas
 
Oglas
Staro 13.03.2017., 12:07   #3
Nikky
Moderator
 
Nikky's Avatar
 
Datum registracije: Sep 2006
Lokacija: St
Postovi: 22,554
Tema mi je promakla, pohvala za trud

Par dobronamjernih:
- ne bi bilo loše (barem u beta fazi) negdje premjestiti / sakriti fizičke tipke tableta

- najgore je otkrivati toplu vodu tj. ponovo rješavati šta je netko već riješio / isprogramirao,
aludiram kad bi "našao" nekakav source code za makar rudimentalni player pa od toga graditi dalje,
možda toga ima po onom XDA ...

- telefoniju preko moba bi trebalo biti brzo / jednostavno riješiti ako se spoje preko plavog zuba kao handsfree,
to je već "definirano" i nebi trebalo zezati

- za izlaz na internet bez SIM - a u tabletu a opet preko moba svakako zbog bržeg linka treba ići preko WiFi tetheringa

- ovaj problem sa USB Hub - om je posljedica šroteks standarda kao takvog,
treba viditi jel se može više integrirati sa tabletom, aludiram odakle će dobiti napajanje ...

- isto / slično su već napravile mnoge kompanije iz auto industrije (Rimac, Tesla, ... Suzuki ...

That's my 5 cents
Nikky je offline   Reply With Quote
Staro 13.03.2017., 14:12   #4
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
Thx Nikky,
jučer sam uspio i mediaplayback tipke simulirati, zapravo je bilo jednostavnije nego što sam pretpostavio: kreira se Object audioManager, kojeg JEST moguće pozvati iz Service (nisam siguran za jednostavniji IntentService, ali kako IntentService ne zadovoljava potrebe jer se deaktivira kad obavi posao, onda nije niti interesantno).

Njega sam već koristio za kontrolu glasnoće, i to funkcionira briljantno: audioManager.adjustVolume(int direction, int flags)

Onda sam naletio na stackOverflow na hrpu sličnih pitanja, među kojima jedan šturi odgovor u kojem samo kaže da se koristi dispatchMediaKeyEvent(KeyEvent keyEvent).
EDIT2: evo link, odgovor je ovaj šturi u dva reda, bez objašnjenja: http://stackoverflow.com/questions/4...ically-android

Kako bi se simulirao pritisak tipke, mora se dodati "dupla" naredba, tako da se prvi argument u prvoj naredbi navede kao ACTION_DOWN i u narednoj ACTION_UP.

NAPOMENA: iako se koristi ista klasa "KeyEvent", koja sadržava konstante za sve tipke, preko audioManagera idu samo nabrojane u gore linkanom dispatchMediaKeyEvent-u, isprobano na primjeru KEYCODE_POWER i KEYCODE_VOLUME_xxxy koji NE rade.

Morat ću probati s Activity klasom, koja ima dispatchKeyEvent, bit će kad dođem kući.

---

Citiraj:
Autor Nikky Pregled postova
Tema mi je promakla, pohvala za trud

Par dobronamjernih:
- ne bi bilo loše (barem u beta fazi) negdje premjestiti / sakriti fizičke tipke tableta

Kak si mislio premjestiti/sakriti fizičke tipke? Jesi mislio da ih napravim "externima"? Ako da, nije potrebno jer fizičke tipke na tabletu neću uopće koristiti, a i tablet je removable, tj. nije fiksan u autu. Sve radim doma, pa kad sam spreman isprobati cuknem T61 i tablet u auto, tablet prebacim u WiFi ADB mode i spojim u autu, tako da mogu debuggat direkt u Android Studiu.

Citiraj:
Autor Nikky Pregled postova
- najgore je otkrivati toplu vodu tj. ponovo rješavati šta je netko već riješio / isprogramirao,
aludiram kad bi "našao" nekakav source code za makar rudimentalni player pa od toga graditi dalje,
možda toga ima po onom XDA ...
Nađe se toga, i upravo takav jedan source mi je pomogao da shvatim da je još jednostavnije samo dispečirati u audioManageru naredbu nego kemijati sa "emuliranjem" pritisnute tipke u GUI aplikacije. Prvo sam mislio da je potrebno imati onClick ili sličnu metodu kako bi se uopće aktivirala mogućnost emulacije tipke. Kako nemam GUI, onClick mi nikako nije igrao.

Probam naći source u history kod kuće, odgovor na stackOverflow je bio doslovce samo natipkana naredba "dispatchMediaKeyEvent" s pripadajućim argumentima.

Citiraj:
Autor Nikky Pregled postova
- telefoniju preko moba bi trebalo biti brzo / jednostavno riješiti ako se spoje preko plavog zuba kao handsfree,
to je već "definirano" i nebi trebalo zezati
Nisam niti probao, dakle ak bluetoothom spojim tablet i mob, tablet bi prepoznao da se treba prebaciti u "phone_connected" mode i automatski bi prenosio zvuk poziva? Skeptičan sam prema toj ideji, ali vrijedi probati

Citiraj:
Autor Nikky Pregled postova
- za izlaz na internet bez SIM - a u tabletu a opet preko moba svakako zbog bržeg linka treba ići preko WiFi tetheringa
Kad bi pozivi išli bez kemijanja preko BT, onda se spojim i tetheringom i BT-om, trebalo bi fercerati.

Citiraj:
Autor Nikky Pregled postova
- ovaj problem sa USB Hub - om je posljedica šroteks standarda kao takvog,
treba viditi jel se može više integrirati sa tabletom, aludiram odakle će dobiti napajanje ...
Kad to ne bi imalo svojih mušica, tj. kad bih mogao striktno odrediti u kojim scenarijima se USB-OTG-HUB ponaša 100% normalno, implementirao bih makar hardwaresko rješenje odgode paljenja uređaja. Međutim, ne može se ni sa 50% sigurnošću reći kad funkcionira. Zato sam odustao. Mogao bih riješiti problem kao levat, fino prekidač, pa da palim-gasim dok ne upali, al to anulira onda postojeću implementaciju preko KL15 i releja, tak da sam odustao od toga.

Citiraj:
Autor Nikky Pregled postova
- isto / slično su već napravile mnoge kompanije iz auto industrije (Rimac, Tesla, ... Suzuki ...

That's my 5 cents
Na što točno misliš? Integracija s Androidom, USB-OTG ili spajanje mobitela na carputer?

EDIT: ne mogu editirat prvi post, što je uvedena zabrana editiranja nakon x mjeseci na globalnoj razini? Mislio sam da je samo na tržnjaku...

Htjedoh prepraviti informacije: umjesto 2 USB-a bit će samo jedan, čisto zbog manjka fizičkog prostora u za to predviđenom dijelu automobila.

Predpojačalo zvuka za ugrađeno pojačalo jer izlazna snaga Android uređaja nije bila dovoljna; baziran na IC PAM8403 --> užasna kvaliteta zvuka, ne znam zašto sam optimistično očekivao da će od običnog op-ampa ispasti iole dobro... Uglavnom, zasad sam na nekakvom polurješenju u vidu softwareskog tweaka za pojačavanje razine signala na 3.5mm jacku. Prihvaćam ideje za malo pojačalo. USB-DAC nažalost zbog USB-HUB problema ne dolazi u obzir
__________________
Spoiler alert!

Zadnje izmijenjeno od: De5tr0yer. 13.03.2017. u 17:56.
De5tr0yer je offline   Reply With Quote
Staro 13.03.2017., 17:54   #5
Nikky
Moderator
 
Nikky's Avatar
 
Datum registracije: Sep 2006
Lokacija: St
Postovi: 22,554
Prvo par ideja / rješenja da ti zaintrigira maštu:
http://www.mp3car.com/forum/general/...tablet-install
http://www.mp3car.com/forum/general/...-bit-different
http://www.mp3car.com/forum/general/...rom-pc-worklog
http://www.mp3car.com/forum/general/...4-fully-loaded
http://www.mp3car.com/forum/general/...-build-log-diy
http://www.bmdroid.co.nz/

- za tipke sam mislio to da ih napraviš "externima" > ali kako kažeš da se tablet cijeli skida onda nije nužno / potrebno

- bluetooth spojen tablet i mob ... tablet bi prepoznao da se treba prebaciti u "phone_connected" mode i automatski bi prenosio zvuk poziva > upravo tako,
to lako testiraš doma na stolu, poanta je u tome da se max. pojednostavni cijeli niz koraka radi sigurnosti u vožnji:
ako svira / reproducira nešto to stavlja na pauzu i/ili mute,
prikazuje na ekranu tko smeta (šta bi rekao Izet),
na ekranu je tipka za prihvat ili odbivanje poziva,
to te dovodi (opet) na tipke i komande sa volana,
prekid / kraj razgovora i povratak na "prethodno stanje".

- USB Hub > letimičnim pregledom gore linkanih primjera sam vidio da ga netko nije koristio ili ga koristi i ne spominje ikakve probleme a jedan je spominjao probleme i kao rješenje ima nekakav delay (relej) sa ne definiranim vremenom

- isto / slično su već napravile mnoge kompanije iz auto industrije > samo navodim kao primjer, e sad kod ovih "skupih" integracija je napravljena "do jaja" sve živo je integrirano zajedno od mijenjanja xy parametara upravljanja autom, managment ovoga i onoga do entertainment / multimedia dijela,
kod ovih "jeftinijih" je to samo multimedia + tel + eventualno zadnja kamera (parkiranje).

- u vezi audio izlaza nisi definirao jel koristiš postojeći HU (car radio) ili bi kovao nešto sam a izbacio HU.
Najlakše je koristiti HU "kakav je" ili kao u zadnjem primjeru gdje je izmasakrirao jedan HU i gurnio ga izad. Samo se tad otvara pandorina kutija sa xy problema sa paljenjem i upravljanjem općenito.

Dakle u prvom slučaju samo treba aktivirati / iskoristiti Aux IN i ako treba samo dodaj nekakav kvalitetan pre-amp koji će odvojiti, napraviti prilagođenje impedancije (tablet / mob drajva slušalice na 8 - 32 Ohm) na Hi-Imp kakav je obično na Aux IN. Istovremeno radiš prilagođenje sa slabašnog nivoa slušalica na recimo 2V p/p kakav je na Aux IN (opet ovisi o karakteristikama HU.

Možda da probaš iskovati sa LM386 te izračunaš precizno imp. prilagođenje i pojačanje ?
U beta varijanti sa trimerima za štimanje ?

Ako ti se to neda kovati možda po DE nađeš za siću kakav gotovi adapter za i_gofno_pad na Aux IN ali aktivni, ne pasivni koji je samo spojio žice tamo - amo.

Ne treba zaboraviti na mogući problem sa "Ground Loop" pa može biti "zabavno" rješavati ga.

Onako za žuntu ko u mesara:
http://www.epanorama.net/newepa/2014...al-mic-wiring/

Još jedan primjer sa USB Hub + USB Audio DAC (koju ekipa preferira zbog bolje kvalitete dobivenog)
http://www.instructables.com/id/Turn...Unit/?ALLSTEPS
Nikky je offline   Reply With Quote
Staro 14.03.2017., 22:25   #6
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
Citiraj:
Autor Nikky Pregled postova
Prvo par ideja / rješenja da ti zaintrigira maštu:
*linkovi*
većinu toga sam već prožvakao, oni koji koriste interakciju s tipkama volana koriste emulaciju preko tipkovnice --> trenutno istražujem kako (ako ikako) se može preko Service (bez da je aplikacija aktivna) mockati tipkovnicu tj. slati pritiske tipki. Ukratko, google je to onemogućio iz sigurnosnih razloga i ovdje se stvar dodatno komplicira, do kojih razmjera, trenutno ne mogu točno reći, jedan link s tom tematikom, pisano u C-u (Android NDK) što mi sad dodatno proširuje horizont i već pomalo uzima toliko maha, da se bojim da će se prekomjerno početi komplicirati.

EDIT: apk koji je isporučen u privitku ne radi kako treba: kad pokrenem app i stisnem "Scan Input Devs" ne dogodi se ništa.
Nemam dovoljno znanja pokušati prokljuviti u čemu je kvaka, samim time niti motivacije. JNI, C, pa ko zna što još dolazi s time su mi malo too much. Vjerujem da će media controls zadovoljiti
Možda u budućnosti...

Citiraj:
Autor Nikky Pregled postova
- bluetooth spojen tablet i mob ... tablet bi prepoznao da se treba prebaciti u "phone_connected" mode i automatski bi prenosio zvuk poziva > upravo tako,
to lako testiraš doma na stolu, poanta je u tome da se max. pojednostavni cijeli niz koraka radi sigurnosti u vožnji:
ako svira / reproducira nešto to stavlja na pauzu i/ili mute,
prikazuje na ekranu tko smeta (šta bi rekao Izet),
na ekranu je tipka za prihvat ili odbivanje poziva,
to te dovodi (opet) na tipke i komande sa volana,
prekid / kraj razgovora i povratak na "prethodno stanje".
NOP, ne radi out of the box uopće. Ne spajaju se uređaji međusobno.
EDIT: malo detaljnije: pairing se odradi bez problema, ali nisu "spojeni", tj. ne piše connected kao kad spojim BT slušku. Može netko to isprobat?

Citiraj:
Autor Nikky Pregled postova
- USB Hub > letimičnim pregledom gore linkanih primjera sam vidio da ga netko nije koristio ili ga koristi i ne spominje ikakve probleme a jedan je spominjao probleme i kao rješenje ima nekakav delay (relej) sa ne definiranim vremenom
Sve stoji, ali s trenutnim usb hubom koji imam paljenje sa zadrškom nije uspijevalo u više od 50% slučajeva, a ne pada mi na pamet prije paljenja auta tri-četiri puta palit-gasit kontakt.
Jedan generički usb hub je prestao funkcionirati kad sam mu "odvojio" izvore signala i napajanja. U čemu je točno problem bio, mogu jedino kriviti kineski hub čip.


Citiraj:
Autor Nikky Pregled postova
- u vezi audio izlaza nisi definirao jel koristiš postojeći HU (car radio) ili bi kovao nešto sam a izbacio HU.
Najlakše je koristiti HU "kakav je" ili kao u zadnjem primjeru gdje je izmasakrirao jedan HU i gurnio ga izad. Samo se tad otvara pandorina kutija sa xy problema sa paljenjem i upravljanjem općenito.

Imam "sreće" da je u autu "HiFi" sustav koji ima eksterno, u auto nativno integrirano/instalirano pojačalo, tj. zvučnici nisu direktno vezani s radiom.

Napisah, paljenje eksternog pojačala se izvodi isto na kontakt (KL15), te pojačalo uredno prima nedistorzirani zvuk s android uređaja. Problem je niska snaga izlaznog signala iz tableta. Trenutna doskočica koja funkcionira koliko-toliko OK je softwaerskog tipa: na rootan tablet se instalira mala modifikacija konfiguracijskih datoteka u rootu androida (ZIP).

Citiraj:
Autor Nikky Pregled postova
Dakle u prvom slučaju samo treba aktivirati / iskoristiti Aux IN i ako treba samo dodaj nekakav kvalitetan pre-amp koji će odvojiti, napraviti prilagođenje impedancije (tablet / mob drajva slušalice na 8 - 32 Ohm) na Hi-Imp kakav je obično na Aux IN. Istovremeno radiš prilagođenje sa slabašnog nivoa slušalica na recimo 2V p/p kakav je na Aux IN (opet ovisi o karakteristikama HU.
Nemam aux in u radiu na svom e46 jer je prefacelift model -> napravio sam prije ca godinu dana jedan jednostavan aux in tako da sam direkt na DSP čip zalemio kabel s 3.5mm priključkom na kraju -> stvar funkcionira, ali kako DSP ima posebne izlaze za prednje i stražnje zvučnike (naravno, posebno i L+R), morao sam kratko spojiti prednje i stražnje kanale (FL+FR; RL+RR) i time izgubio meni nebitnu kontrolu balansa naprijed/iza.

Citiraj:
Autor Nikky Pregled postova
Možda da probaš iskovati sa LM386 te izračunaš precizno imp. prilagođenje i pojačanje ?
U beta varijanti sa trimerima za štimanje ?
PAM koji sam koristio ima bolju prijenosnu frekvencijsku karakteristiku od LM-ca, tako da čisto sumnjam da LM može pokriti cijelu zvučnu sliku, bez obzira na priključenu impedanciju, a da bude upotrebljivo kao audio pojačalo. PAM jako pojačava šum i smetnje.
Provjerim i izračunam još prije finalne odluke.

Citiraj:
Autor Nikky Pregled postova
Ako ti se to neda kovati možda po DE nađeš za siću kakav gotovi adapter za i_gofno_pad na Aux IN ali aktivni, ne pasivni koji je samo spojio žice tamo - amo.
Za tak stari autek teško + koštaju više od svega dosad potrošenog na modifikaciju.

Citiraj:
Autor Nikky Pregled postova
Ne treba zaboraviti na mogući problem sa "Ground Loop" pa može biti "zabavno" rješavati ga.
Vrlo jednostavno rješenje: neimanje ground loopa na prvom mjestu! Fino se sve spoji na jednom mjestu na masu. Primjerice, 3.5mm priključak za tablet je floating (bez spojene mase), jer je masa tog priključka kratko spojena s masom USB konektora. Pošto je USB stalno ukopčan, ground loop je time anuliran. U poslovnom svijetu mi je upravo EMC glavni opis posla.

Citiraj:
Autor Nikky Pregled postova
To je baš rudimentarno

Citiraj:
Autor Nikky Pregled postova
Još jedan primjer sa USB Hub + USB Audio DAC (koju ekipa preferira zbog bolje kvalitete dobivenog)
http://www.instructables.com/id/Turn...Unit/?ALLSTEPS
DAC bi mi bio prvi izbor da imam HiFi pojačalo (bez navodnika), dovoljno je pogledati frekvencijski odziv na linku.

Najveći problem je što ne mogu sjediti u autu cijeli dan, zbog baterije u laptopu, temperature zraka (hladno je), neudobno je programirati u tom položaju. A isprobavanje koda mogu jedino u interakciji s IBUS-om, kojeg je teško simulirati, tj. trebao bi mi još jedan IBUS adapter i računalo s winxp jer NAVCODER aplikacija ne radi kako treba pod win7,8,10. YAAAY. -.-

Susjedi me sigurno spominju kad nekoliko puta dnevno idem tri kata dolje do auta, pa nazad, pa za sat vremena opet i tako
__________________
Spoiler alert!

Zadnje izmijenjeno od: De5tr0yer. 16.03.2017. u 12:48.
De5tr0yer je offline   Reply With Quote
Staro 14.03.2017., 22:43   #7
Nikky
Moderator
 
Nikky's Avatar
 
Datum registracije: Sep 2006
Lokacija: St
Postovi: 22,554
Još te budu prijavili da imaš fetiš na / sa autom
Ovo mi je čudno da se ne žele spojiti tablet i mob ??
Možda nešto fali.
U svakom slučaju samo hrabro napred.
Nikky je offline   Reply With Quote
Staro 16.03.2017., 14:10   #8
kasko
Premium
Moj komp
 
kasko's Avatar
 
Datum registracije: Apr 2007
Lokacija: Ivanić_Grad
Postovi: 1,943
Na sve ovo bez detaljnog čitanja mogu ti samo dat jedan input
Da postoji 12V DC BT-to-AUX OUT na ebayju za siću jer ja tako slušam.
kasko je offline   Reply With Quote
Staro 16.03.2017., 16:22   #9
Nikky
Moderator
 
Nikky's Avatar
 
Datum registracije: Sep 2006
Lokacija: St
Postovi: 22,554
Valjda Aux In, 'bem školu koja nije odradila svoje
Nisi čitao, a isto se može naći na netu,
BT može poslužiti za handsfree telefoniju ali često ne daje dovoljno kvalitetan signal (prolaz) za kvalitetan audio.
Sve zavisi koliko kvalitetno je napravljen.

Gledajući na te BT adaptere kao ovaj > http://www.ebay.com/itm/Car-Stereo-T...-/331841419661

naletio sam na ovaj od Alpine > http://t3country.alpine-europe.com/p...842/ezi-dab-bt
http://www.carsound.dk/log/links/man...-bt_eng_ny.pdf
je i nije vezana za temu ali za koju godinu kad i kod nas ubiju FM Radio te pređu na DAB bit će traženi artikal.
Zgodno je jer pokriva više funkcija / potreba.
Nikky je offline   Reply With Quote
Staro 16.03.2017., 18:48   #10
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
Citiraj:
Autor kasko Pregled postova
Na sve ovo bez detaljnog čitanja mogu ti samo dat jedan input
Da postoji 12V DC BT-to-AUX OUT na ebayju za siću jer ja tako slušam.
Nisi se trebao ubiti od čitanja, niti razumjeti mumbo-jumbo o programiranju, već samo pročitati nekoliko rečenica s početka:

Citiraj:
Autor De5tr0yer Pregled postova
Cilj: Radi se o integraciji Nexus 7 2013 (flo, wlan only) tableta unutar starijeg BMW-a, da postane integralni non/semi-removable uređaj koji će služiti za navigaciju, kao internet radio i općeniti music player.

Motivacija: Želim da se kontrole na volanu (glasnoća, bck-fwd itd.) mogu prenijeti na tablet/Android, te se za tu svrhu koristi adapter koji omogućuje "čitanje" poruka kad su tipke na volanu pritisnute

Citiraj:
Autor Nikky Pregled postova
Valjda Aux In, 'bem školu koja nije odradila svoje
Nisi čitao, a isto se može naći na netu,
BT može poslužiti za handsfree telefoniju ali često ne daje dovoljno kvalitetan signal (prolaz) za kvalitetan audio.
Sve zavisi koliko kvalitetno je napravljen.

Gledajući na te BT adaptere kao ovaj > http://www.ebay.com/itm/Car-Stereo-T...-/331841419661

naletio sam na ovaj od Alpine > http://t3country.alpine-europe.com/p...842/ezi-dab-bt
http://www.carsound.dk/log/links/man...-bt_eng_ny.pdf
je i nije vezana za temu ali za koju godinu kad i kod nas ubiju FM Radio te pređu na DAB bit će traženi artikal.
Zgodno je jer pokriva više funkcija / potreba.
To je sve simpatično, i kao što kažeš, daje samo određene funkcije, tj. nema funkcije koje želim i nema nikakvu mogućnost "nadogradnje". Postoje i gotovi E46 doubledin android sustavi s fizičkim kontrolama, ne možeš razlikovati od originalne 16:9 navigacije, ali je sve hardwareski slabo i dolazi sa danas prastarim androidom kitkat (4.4) i s kineskim chipsetima za koje moraš biti lord clockan da im staviš nešto novo, opet upitno s kojim performansama.

Nexus 7 je star uređaj ali ne šteka, ima nove updatee, radi ko zmaj i dimenzijama odgovara ko rukavica u trenutno mjesto.
__________________
Spoiler alert!
De5tr0yer je offline   Reply With Quote
Oglasni prostor
Oglas
 
Oglas
Staro 16.03.2017., 19:48   #11
Nikky
Moderator
 
Nikky's Avatar
 
Datum registracije: Sep 2006
Lokacija: St
Postovi: 22,554
Ma jasno kolega De5tr0yer, skužio sam razlog kovanja.
Ovaj dodatak od Alpine je samo uletio kao primjer a i tek će biti aktualan kod nas za koju godinu.
Nikky je offline   Reply With Quote
Staro 16.03.2017., 20:10   #12
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
Ne sumnjam da si apsolutno shvatio o čemu se radi, ta naveo si nekoliko primjera direktno povezanih s mojom idejom, samo nisam bio siguran dal da citiram tvoj post pa odgovorim ili da samo tipkam dalje. Ovako je ipak zaokruženije izgledalo, pa smo kolegi kasku odgovorili znatno bolje nego da sam samo ja tipkao Thx
__________________
Spoiler alert!
De5tr0yer je offline   Reply With Quote
Staro 17.03.2017., 13:16   #13
kasko
Premium
Moj komp
 
kasko's Avatar
 
Datum registracije: Apr 2007
Lokacija: Ivanić_Grad
Postovi: 1,943
Ok, kuzim sto zelis postici, iskreno se nadam da ce ti to i uspijeti tako kako si zamislio da zelis. Neovisno o tome, fora bi bilo imati i BT modul opcenito tako u vozilu za druge korisnike ili tvoj mobitel.

@nikky
PA boga mu valjda taj BT adapter ima AUX OUT a ne AUX IN.
Glasniji, cisci i osjetno bolji zvuk mi je preko BT adaptera nego aux-aux konekcijom s mojega mobitela i što je jos smjesnije jednako je bolje nego s usb-a direktno u radiu a iste pjesme/izvor.

BTW jel se moze preko android mobitela s BT streamat glazba na laptop s windowsima recimo?
kasko je offline   Reply With Quote
Staro 17.03.2017., 13:58   #14
Nikky
Moderator
 
Nikky's Avatar
 
Datum registracije: Sep 2006
Lokacija: St
Postovi: 22,554
@kasko
Kod tebe takav slučaj, imaš takvo iskustvo, al bi bilo logično da Aux In (bilo 2x chinch ili 3.5 jack) daje "bolji" zvuk.
Prvenstveno jer na putu signala prema izlazu (pojačalu) ima manje konverzije.
Kažeš da kada sam HU čita i dekodira audio daje "lošiji" zvuk.
Rekao bih da je taj HU "takav".

Ovo zadnje ne znam, treba viditi kako da lap preko BT ili WiFi pristupa memoriji moba,
pa ti sam "povlačiš" šta želiš svirat.
Drugačiji pristup je ako ima neki app na mobu kao stream server kojega bi netko / nešto lovilo na lapu i reproduciralo.
Nikky je offline   Reply With Quote
Staro 17.03.2017., 14:17   #15
kasko
Premium
Moj komp
 
kasko's Avatar
 
Datum registracije: Apr 2007
Lokacija: Ivanić_Grad
Postovi: 1,943
Točno tako, nelogično je na prvu a s drugim adapterima nemam iskustva, znaci isti source je najjglasniji preko BT-a i najčišći također. (jednako pojačano takoder daje najvecu glasnocu preko BT).
Stoga mu i predlažem da izvuče još koju zeru iz sustava a malo košta. Pokušat cu pronaci konkretno koji adapter je u pitanju al je fkt low end.

@nikky Nastavit cemo preko PM da ne spamamo temu nepotrebnim stvarima.
kasko je offline   Reply With Quote
Staro 20.03.2017., 23:20   #16
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
Citiraj:
Autor kasko Pregled postova
Ok, kuzim sto zelis postici, iskreno se nadam da ce ti to i uspijeti tako kako si zamislio da zelis. Neovisno o tome, fora bi bilo imati i BT modul opcenito tako u vozilu za druge korisnike ili tvoj mobitel.
Ideja i jest da se ostavi slobodan BT na tabletu za ostale namjene koje podrazumijevaju i ovo gore. Inače ima brdo već isprogramiranih rješenja/appova koji komuniciraju preko BT-a s RPijem ili IOIO boardovima. Ideja je bila, ako postoji USB IBUS adapter, zašto ne direktno/žično?

-------

Good news:
Konačno sam našao način(e) kako bilo koju tipku simulirati, rješenje je prilično trivijalno, ali zahtijeva lower level access u vidu SU, dakle nije opcija za one bez rootanog uređaja:

Java (majka kraljica) runtime.exec. Strašno jednostavno:

Code:
try {
    String keyCode = "input keyevent " + KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE;
    Runtime runtime = Runtime.getRuntime();
    Process proc = runtime.exec(new String[] { "su", "-c", keyCode });
}
catch (IOException e){
    e.printStackTrace();
}
SAUCE

Nakon izvođenja naredbe do obavljanja akcije postoji zadrška od otprilike 200ms, primjetan je taj mali delay, pa se eventualno može riješiti drugim načinom, ali još ga nisam isprobao, čitaj ispod.

--

Drugi način, no koliko čitam, google je onemogućio autocomplete funkciju za interne/privatne klase poput IBinderService i IWindowManagera, pa se moraju skinuti sa primjerice android git-a.

Ovakav pristup zahtijeva system level pristup, tj. opet SU/root, tj. app bi se morao instalirati u /system/ kako bi se dobio INJECT_EVENTS permission: SAUCE

Moram isprobati brzinu izvođenja ovakve naredbe.

------

Inače je samo za mediacontrols najlakše ovako preko AudioManagera riješiti:

Code:
AudioManager audio = (AudioManager) getSystemService(AUDIO_SERVICE);

audio.adjustVolume(AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);

audio.dispatchMediaKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_FAST_FORWARD));

---

Sljedeće tražim kako aktivirati globalnu "OK, Google" naredbu, tj. koja će reagirati ili kao na homepageu ili još bolje u svakoj aplikaciji koja je trenutno aktivna posebno. Primjerice ako imam otvorenu app Maps, da mi onda naredbu šalje u Maps, ne u google now. Ideje?
__________________
Spoiler alert!

Zadnje izmijenjeno od: De5tr0yer. 20.03.2017. u 23:27.
De5tr0yer je offline   Reply With Quote
Staro 21.03.2017., 12:56   #17
Nikky
Moderator
 
Nikky's Avatar
 
Datum registracije: Sep 2006
Lokacija: St
Postovi: 22,554
Vidi ga šta je zagrizao
Neka, bravo.

Nekako mi se čini da ćeš na kraju morati / biti poželjno iskukičati komplet custom fw.
Samo se bojim da to tek otvara pandorinu kutiju sa xy mogućih zaheba ...

Samo slikovnica jedne instalacije > http://imgur.com/a/Ijejh
Nikky je offline   Reply With Quote
Staro 24.03.2017., 23:08   #18
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
EDIT:
Verzija 1.0 je danas (gotovo) završena, preostaje mi još napraviti da mi je Service persistent, tj. da ga Android ne stavlja na sleep nakon kratkog vremena, već da stalno vrti.

Emuliranje power tipke riješeno je prethodno opisanim runtime.exec, potrebno je upucati ovo "KeyEvent.KEYCODE_POWER" na za to pripadajuće mjesto (intuitivno jasno na temelju prethodnog posta).

OK, Google funkcija riješena isto tako relativno jednostavno:
Code:
Intent googleNowIntent = new Intent("android.intent.action.VOICE_ASSIST");
googleNowIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(googleNowIntent);
----

Par fotki gužve kablova:

Glavna kutijica s DC/DC pretvaračem


Distribucijski kabel 1, sa spojenim IBUSom na USB adapter. Smeđa žica je masa, odvojena je od ostatka kako bih imao što manje razdvajanja mase, samim time manje GND petlji.
D-SUB s lijeve strane se spaja na gornju kutijicu, desni D-Sub na USB YY kabel, vidi malo ispod:


USB YY kabel:


Prilagođeni originalni bracket za radio i klimu.
Korišten je jeftilen case za N7 s magnetičnim coverom koji je jednostavno odrezan kako bi ostao samo tvrdi pozadinski dio casea za dosjed N7 bez posebnog lijepljenja ili izmišljanja tople vode. Time se zadržala i relativno jednostavno micanje tableta.
Korišten je također UHU dvokomponentni putty na dva mjesta, koji je onda zalijepio case za bracket.


Donji dio dasha je kupljen novi i diskretno ubačen USB za punjenje:


Gužvica i kablovi; hlađenje: pasivno:


Gotov produkt, spreman na ugradnju, te potom ugrađen.:



Dremel je puno radio kod ugradnje USB priključka i adaptacije bracketa, ali najviše sam ruku utrošio na ovu masku koja dolazi na sve. U originalu je dubina rubova prevelika (od prednje maske do ekrana) za normalno korištenje, pa se npr. nije mogao uopće dohvatiti status bar ili home/back/appswitcher tipke. Ovako je to sad puno jednostavnije:


Za dovršiti ugradnju nedostaje još gumeno punjenje između ekrana i maske, nešto poput silikona između pločica i kade u kupaonici, jedino bi trebalo biti crne boje, jel. Ne znam kako se to uopće zove, pretpostavljam da ima u pevecu i sličnim dućanima. Preporuka?
__________________
Spoiler alert!

Zadnje izmijenjeno od: De5tr0yer. 25.03.2017. u 00:52.
De5tr0yer je offline   Reply With Quote
Staro 24.03.2017., 23:17   #19
kasko
Premium
Moj komp
 
kasko's Avatar
 
Datum registracije: Apr 2007
Lokacija: Ivanić_Grad
Postovi: 1,943
Pohvale za uradak kolega!
Ja ti mogu preporuciti nesto tipa silikon, ima jako dobra ljepljiva svojstva, crne je boje, jedino je malo skuplji od klasicnih silikona.
Radi se o Victor Reinz Reinzosil.
http://www.tools.vocor.nl/data/artic...big/b_3096.jpg
Konkretno ova tuba sa slike, inace sluzi za brtvljenje u mehanici gdje je visoka temp ali ja koristim i za ljepljenje gdje su prozirne/crne stvari u igri i pokazalo mi se super a zadrazava elasticnost.

Sent from my LG-D802 using Tapatalk
kasko je offline   Reply With Quote
Staro 25.03.2017., 00:45   #20
De5tr0yer
Avocado
Moj komp
 
De5tr0yer's Avatar
 
Datum registracije: Aug 2005
Lokacija: Zagreb
Postovi: 7,801
Tenksić

Možda i najbitnije pitanje: je li Reinzosil jako ljepljiv? Naime, nije mi u interesu baš zalijepiti prednju masku za tablet, tablet bi trebao ostat upotrebljiv i kao standalone uređaj. Potrebna masa bi trebala fino dosjesti na tablet, ali da ju onda nakon (djelomičnog) sušenja/utvrđivanja/stvrdnjavanja mogu jednostavno maknuti s površine ekrana. Ako je kao silikon, onda bi se to dalo pažljivo skinuti.
__________________
Spoiler alert!
De5tr0yer je offline   Reply With Quote
Oglasni prostor
Oglas
 
Oglas
Odgovori



Pravila postanja
Vi ne možete otvarati nove teme
Vi ne možete pisati odgovore
Vi ne možete uploadati priloge
Vi ne možete uređivati svoje poruke

BB code je Uključeno
Smajlići su Uključeno
[IMG] kod je Uključeno
HTML je Isključeno

Idi na