Philips soundbar, förhindra automatisk avstängning

Berätta om dina pågående projekt.
haben12
Inlägg: 67
Blev medlem: 7 april 2017, 13:04:50

Philips soundbar, förhindra automatisk avstängning

Inlägg av haben12 »

Jag har en soundbar, av märket Philips. Denna ser ut som en lång limpa och ligger framför min TV, och är även ansluten till en subwoofer. Tillverkaren har valt att låta enheten stänga av sig automatiskt efter att inget ljud har spelats i denna på cirka 20min, denna funktion går inte att stänga av tyvärr. Detta leder till att om jag går ifrån min TV för att gå ut med hunden, svara i telefon, diska efter maten etc... så måste jag sätta på soundbaren igen när jag kommer tillbaka. Av någon anledning så tar det 10-15s för denna att starta, möjligen på grund av att subwoofern är ansluten via BT. Detta gör att jag ofta har hunnit starta vad det nu var som jag tittade på, och hunnit upptäcka att ludet är av, måste pausa detta och hitta fjärrkontrollen till soundbaren, starta denna och vänta i 15s. Särskilt besvärligt blir det när mina släktingar och vänner kommer på besök och ska sätta på TVn, och eftersom det inte är något ljud(dom har inte startat soundbaren) så sätter dom på ljudet på min TV istället. När jag senare ska sätta på TV och soundbar får jag dubbelt ljud och måste hitta fjärrkontrollen till min TV och muta ljudet där. Ett I-landsproblem helt enkelt.

Jag vill gärna slippa denna funktion, genom att låta en arduino sända "volym upp" och "volym ner" en gång var 20.e minut. Detta gör att soundbaren förmodligen inte går ner i väntläge utan håller sig igång dygnet runt.

Jag har inte så mycket erfarenhet av att jobba med IR, men testade att ladda hem detta https://learn.sparkfun.com/tutorials/ir-communication arduino exempel och låta denna mäta upp vilken kod som sänds.

Bild

Denna ger mig tillsammans med exemplet "IRecord" följande svar när jag trycker volym upp, konstigt nog är volym upp 2st signaler som skickas varannan gång.

Kod: Markera allt

Received unknown code, saving as raw
 m2550 s1000 m300 s1000 m350 s550 m300 s600 m300 s1000 m750 s550 m350 s550 m300 s550 m800 s1000 m300 s550 m350 s550 m300 s550 m350 s550 m350 s550 m300 s550 m750 s1000 m350 s550 m300 s600 m300 s550 m350

Received unknown code, saving as raw
 m2500 s1000 m350 s950 m350 s550 m300 s600 m1200 s1400 m350 s550 m300 s550 m800 s1000 m300 s550 m350 s550 m300 s550 m350 s550 m350 s550 m300 s550 m750 s1000 m350 s550 m300 s600 m300 s550 m350
Det verkar som att protokollet är Philips RC6, tiderna i tabellen ser lite konstiga ut, men förmodligen är det svårt att mäta så korta tider med koden. M bör betyda hög och S betyda låg.

Bild

Ett av exemplena i sketchen skickar en RAW-ir kod, men det verkar inte riktigt fungera. Jag har ett digitalt oscilloskop på 50MHz, ett Siglent SDS1052DL+, skulle jag kunna spela in en signal på den och titta på i efterhand och själv mäta pulserna? Jag kommer inte alls på vad en sådan funktion ska heta och hittar inte något i manualen.

Edit:

Koden för att välja "aux" som ingång är enklare, eftersom man inte riskerar att höja och sänka volymen eller göra något annat som skapar problem. Även denna har 2st olika koder som alternerar.

Kod: Markera allt

Received unknown code, saving as raw
 m2500 s1000 m350 s1000 m300 s550 m350 s550 m1200 s1450 m300 s550 m350 s550 m750 s1000 m300 s550 m350 s550 m300 s600 m300 s550 m350 s550 m750 s550 m350 s550 m300 s1000 m350 s550 m300 s550 m350
Received unknown code, saving as raw
 m2500 s1000 m350 s1000 m300 s550 m350 s550 m300 s1000 m750 s550 m350 s550 m350 s550 m750 s1000 m300 s550 m350 s550 m300 s600 m300 s550 m350 s550 m750 s550 m350 s550 m300 s1000 m350 s550 m300 s550 m350
Received unknown code, saving as raw
 m2500 s1000 m350 s1000 m300 s550 m350 s550 m1200 s1450 m300 s550 m350 s550 m750 s1000 m300 s600 m300 s550 m350 s550 m300 s600 m300 s550 m750 s550 m350 s550 m350 s950 m350 s550 m300 s600 m300
Received unknown code, saving as raw
 m2500 s1000 m350 s1000 m300 s550 m350 s550 m300 s1000 m750 s600 m300 s550 m350 s550 m750 s1000 m300 s600 m300 s550 m350 s550 m300 s550 m350 s550 m750 s550 m350 s550 m300 s1000 m350 s550 m300 s600 m300
Den hexadecimala koden för dessa är förmodligen F340DAA4 och CECEB366
Senast redigerad av haben12 3 augusti 2018, 17:25:54, redigerad totalt 2 gånger.
haben12
Inlägg: 67
Blev medlem: 7 april 2017, 13:04:50

Re: Philips soundbar, förhindra automatisk avstängning

Inlägg av haben12 »

Jag lyckades få mitt oscillioskop att trigga korrekt, och kunde mäta signalen som faktiskt går ut till IR-dioden med exemplet i IR-biblioteket. Av någon anledning fungerar det fortfarande inte, trots att den ser ut att vara helt korrekt både i 38kHz modulation, och i koderna som skickas. Jag ska prova med några andra IR-dioder, kanske är våglängden känslig.

Bild

Edit:

Bytte till en annan IR-diod(köpte på kjell o co, fick 2st sorter, en svart och en genomskinlig), den sistnämda fungerade! Räckvidden är ungefär 1m, och dioden drar ca 10mA i sändning, förmodligen för lite, får knappt upp spänningen över dioden. Nästa steg blir att försöka ficka förpackningen lite smidigare, och se om ett batteri skulle kunna klara sig tillräckligt länge för att det är ett alternativ.

Tyvärr tog jag fel kod, jag kör optisk in, så den korrekta koden för att aktivera denna(det märks inte något om man redan tittar på tv).

Kod: Markera allt

Unknown encoding: 7B372C48 (32 bits)
Raw (36): 2600 -900 450 -900 400 -450 450 -450 1300 -1350 400 -450 450 -450 850 -900 400 -500 400 -450 450 -450 400 -450 900 -450 400 -900 850 -500 400 -900 400 -500 400 
AB475086
Unknown encoding: AB475086 (32 bits)
Raw (38): 2600 -900 450 -900 400 -450 450 -450 400 -900 900 -450 400 -450 450 -450 850 -900 400 -500 400 -450 450 -450 400 -450 900 -450 400 -900 850 -500 400 -900 400 -500 400 
Koden för arduinon är följande; den sänder 3st kommandon att växla till Optisk ingång, var 10.e minut.

Kod: Markera allt


#include <IRremote.h>

IRsend irsend;

void setup()
{

}

void loop() {
  int khz = 38; // 38kHz carrier frequency for the NEC protocol
  unsigned int irSignal[] = {2600, 900, 450 ,900 ,400 ,450 ,450 ,450 ,1300 ,1350 ,400 ,450 ,450 ,450 ,850 ,900 ,400 ,500 ,400 ,450 ,450 ,450 ,400 ,450 ,900 ,450, 400 ,900 ,850 ,500 ,400 ,900 ,400 ,500 ,400};

for (int i=0; i <= 600; i++)
{
delay(1000);
}

irsend.sendRaw(irSignal, sizeof(irSignal) / sizeof(irSignal[0]), khz);
delay(1000);
irsend.sendRaw(irSignal, sizeof(irSignal) / sizeof(irSignal[0]), khz);
delay(1000);
irsend.sendRaw(irSignal, sizeof(irSignal) / sizeof(irSignal[0]), khz);
delay(1000);

}
Bild
RFC420
Inlägg: 161
Blev medlem: 13 december 2012, 10:28:33
Ort: Stockholm

Re: Philips soundbar, förhindra automatisk avstängning

Inlägg av RFC420 »

Vad är det för modell? Jag har en philips soundbar men ingen fjärr. Jag är väldigt intresserad av koder till fler funktioner om det skulle vara samma modell och om du har ork och möjlighet!
haben12
Inlägg: 67
Blev medlem: 7 april 2017, 13:04:50

Re: Philips soundbar, förhindra automatisk avstängning

Inlägg av haben12 »

Det är en Philips htl5140, det finns en hel del koder på nätet så man kan nog prova sig fram med hjälp av dom.

Intressant nog visade det sig att "optical in" kommandot inte förhindrar Soundbaren från att stänga av sig, däremot så startar den Soundbaren. Nu är kretsen satt på att skicka "optical in" var 10.e sekund, så att den kommer starta automatiskt direkt när den stänger av sig efter ca 20min.
haben12
Inlägg: 67
Blev medlem: 7 april 2017, 13:04:50

Re: Philips soundbar, förhindra automatisk avstängning

Inlägg av haben12 »

Nu har enheten blivit förbättrad, en enkel transistor switchar 4st IR-dioder, dessa drar nu cirka 40mA/st(250mW tillsammans), vilket gör att räckvidden blir så bra att dom kan studsa IR-ljuset i väggen bakom tv-tittaren och ändå få fram signalen till soundbaren. Installationen blir mycket snyggare på detta sätt eftersom man kan placera sändaren på ett diskret ställe.

Bild

Bild
Skriv svar