Nieuwe instructies toegevoegd voor het uitvoeren van een git pull, wijzigen van uitvoerrechten en opnieuw uitvoeren van pi-setup-desktop.sh. Dit zorgt ervoor dat gebruikers de bijgewerkte HDMI audio configuraties zonder problemen kunnen toepassen.
Deze commit introduceert de mogelijkheid om het HDMI volume van de Raspberry Pi in te stellen via de webapplicatie.
Belangrijkste wijzigingen:
- Toevoeging van een nieuwe invoercontrole (slider) in de instellingenpagina voor het aanpassen van het Pi HDMI volume.
- Implementatie van een backend API endpoint dat het volume instelt via amixer, met validatie en foutafhandeling.
- Testfunctie toegevoegd waarmee gebruikers onmiddellijk het ingestelde volume kunnen testen.
- Automatische HDMI audio configuratie toegevoegd in pi-setup-desktop.sh script.
Dit verbetert de gebruiksvriendelijkheid, doordat gebruikers eenvoudig het audio-uitgangsvolume kunnen beheren en testen zonder directe toegang tot de hardware.
Een nieuwe sectie voor audiotests is toegevoegd aan de debugpagina om browser (HDMI) en Sonos audio te testen. Drie nieuwe knoppen activeren respectievelijk tests voor browseraudio, Sonosaudio of beide. Bijbehorende JavaScript-functies zijn geïmplementeerd om de tests uit te voeren en statusupdates weer te geven. In pi-setup-desktop.sh worden nu HDMI audio-uitvoer, volume instellingen, en kiosk browseropstartparameters geconfigureerd ter ondersteuning van automatische audiotests en weergave-optimalisaties.
Docker volume mounts zijn toegevoegd voor app.py, config.py en adhan_cron.py om directe wijzigingen mogelijk te maken zonder de containers opnieuw te moeten bouwen. De containers zijn succesvol herstart met deze nieuwe configuratie, wat het IP-adres probleem definitief zou moeten oplossen.
Deze wijziging in de docker-compose-pi.yml voegt extra bestandskoppelingen toe voor app.py, config.py en adhan_cron.py als read-only mounts. Dit is bedoeld om ervoor te zorgen dat deze essentiële bestanden beschikbaar zijn binnen de Docker-container zonder dat ze kunnen worden gewijzigd, wat zorgt voor meer stabiliteit en consistentie van de applicatie.
SONOS_API_IP is verplaatst van adhan_cron.py naar de config module om de configuratiegegevens centraler en onderhoudbaarder te maken. Deze wijziging verbetert de leesbaarheid van de codebase en faciliteert eenvoudiger aanpassingen aan API-gerelateerde configuraties zonder direct de hoofdcode te moeten wijzigen.
Het hardcoded IP-adres voor de SONOS API is verwijderd uit app.py. In plaats daarvan wordt het IP-adres nu geïmporteerd uit config.py, wat configuratiebeheer vergemakkelijkt en flexibiliteit biedt bij het wijzigen van netwerkinstellingen.
Het IP-adres voor de Sonos API is bijgewerkt van 192.168.0.114 naar 192.168.0.112 in de configuratie. Deze wijziging is nodig om overeen te komen met de nieuwe netwerkinstellingen, zodat de applicatie correct verbinding kan maken met de Sonos-service. Zorg ervoor dat dit overeenkomt met de actuele netwerkconfiguratie om verbindingsproblemen te vermijden.
De commit introduceert een debug tijdsynchronisatie tussen de cron script, de hoofdpagina en de Flask API. Deze functies maken het mogelijk om de huidige tijd te simuleren met een instelbare offset voor testdoeleinden. Het volume en de gebedstijden passen zich nu aan op basis van deze debug tijd indien actief. Debugger gebruikers kunnen via de nieuwe '/api/debug-time' endpoint de tijd aanpassen. De wijzigingen verbeteren de testbaarheid van de applicatie en zorgen ervoor dat gebedsafroepen en volumebepaling correct functioneren onder simulatieomstandigheden.
Hadith-interval kan nu via instellingen worden aangepast met de toevoeging van 'hadith_interval_seconds' aan settings.json, settings.html en app.py. De update interval voor hadiths in JavaScript gebruikt deze variabele. Daarnaast is de instellingenpagina herzien en georganiseerd in vier tabbladen: Audio & Volume, Gebedstijden, Functies, Systeem. Nieuwe CSS-styling en JavaScript-functionaliteit zijn toegevoegd om het schakelgedrag van tabbladen te beheren, waarbij de laatst actieve tab in localStorage wordt opgeslagen.
De huidige gebedssectie is verplaatst naar de onderkant van het scherm met absolute positionering. De oude `huidig-gebed` CSS is verwijderd en vervangen door de nieuwe `huidig-gebed-bottom` klasse. Dit zorgt voor een consistentere en responsieve gebruikersinterface. Daarnaast zijn flexbox layouts geïntroduceerd om de tijds- en weersinformatie naast elkaar weer te geven, waardoor de interface op verschillende schermformaten beter functioneert. JavaScript is bijgewerkt om de juiste klasse te selecteren voor de naamweergave in de countdown.
De CSS-stijlen zijn bijgewerkt om een nieuwe compacte zijbalk en een verbeterde weersectie te ondersteunen, met speciale aandacht voor responsiviteit en gebruikerservaring. De hadith-sectie is visueel gescheiden van andere inhoudselementen met aangepaste themakleuren voor betere leesbaarheid in zowel licht als donker modus. Er is ook een glasmorphisme-effect aan de weersectie toegevoegd voor een moderne uitstraling. Deze veranderingen verbeteren de gebruiksvriendelijkheid van de webapp door belangrijke informatie op een georganiseerde en duidelijke manier weer te geven.
De instelling 'debug_mode' is toegevoegd aan de settings.json om ontwikkelaars te ondersteunen bij het opsporen van problemen. Deze wijziging biedt meer flexibiliteit bij het testen en verfijnen van functionaliteit, maar zorg ervoor dat deze optie wordt uitgeschakeld in productieomgevingen om ongewenste informatielekken te voorkomen.
Debug functionaliteit is nu alleen toegankelijk wanneer debug_mode is ingeschakeld. Dit omvat het omleiden van gebruikers naar de hoofdpagina als debug_mode uitgeschakeld is en het tonen van een foutmelding bij een niet-geautoriseerde API-aanroep. Ook is de debug knop in de UI alleen zichtbaar als debug_mode aan staat. Dit verhoogt de veiligheid en beperkt toegang tot debugging opties.
Een nieuw centraal kleurensysteem is geïntroduceerd via colors.css, waardoor het eenvoudiger wordt om het kleurenschema van de Adhan-app te beheren en aan te passen. Dit verbetert de consistentie en onderhoudbaarheid van de stijlen in verschillende componenten van de app.
Daarnaast is een functie toegevoegd voor automatische dhikr-wisseling in adzkaar.html, die elke 30 seconden naar de volgende dhikr schakelt. Hierdoor verbetert de gebruikerservaring door een soepele en intuïtieve navigatie tussen de dhikr-items mogelijk te maken.
Deze commit implementeert een nieuw Adzkaar-scherm dat automatisch verschijnt na de gebedstijden. Belangrijke wijzigingen omvatten:
- Toevoeging van instellingen voor het inschakelen en aanpassen van de duur van het Adzkaar-scherm in `settings.json` en de bijbehorende HTML.
- Implementatie van nieuwe routes `/adzkaar` en `/api/trigger-adzkaar` om respectievelijk het scherm weer te geven en te debuggen.
- Update van de countdown-logica om het Adzkaar-scherm drie seconden na het adhan af te spelen.
- Nieuwe frontend-elementen voor een interactieve, kaart-voor-kaart weergave van de Adzkaar met ondersteuning voor navigatie en toetsenbordbediening.
- Aanpassing van bestaande templates om integratie van de nieuwe functionaliteiten te faciliteren.
Deze toevoegingen verbeteren de gebruikerservaring door meer spirituele betrokkenheid mogelijk te maken na de gebedstijden.
De countdown script is bijgewerkt om de logica voor gebedstijden te verbeteren. De huidige en volgende gebeden worden nu correct geanalyseerd, inclusief ondersteuning voor het identificeren of het volgende gebed op de volgende dag valt. Gebedstitels bevatten nu "morgen" indien nodig. CSS en HTML aanpassingen zorgen voor een verbeterde layout van de instellingenpagina met een drie-kolommen structuur en betere zichtbaarheid in lichte modus. Deze wijzigingen zorgen voor een nauwkeurigere weergave van gebedstijden en een gebruiksvriendelijke interface.
Dit commit voegt een nieuw installatie script toe dat een Raspberry Pi configureert om een desktop-gebaseerde kiosk te draaien. Het script installeert noodzakelijke software zoals Docker en Chromium, maakt een autostart configuratie aan voor de kiosk, schakelt power management uit, en zorgt ervoor dat het systeem automatisch naar de desktop omgeving boot met autologin. Dit behoudt volledige desktop functionaliteit en vermijdt complexe boot configuraties.
De commit voegt nieuwe instructies toe voor het opzetten van de Adhaan applicatie als een kiosk op een Raspberry Pi. Inclusief stappen zoals Raspberry Pi OS installatie, project downloaden en het uitvoeren van een automatische setup via een script. Daarnaast is de repository-URL in het installatieproces bijgewerkt naar de correcte URL.
Nieuwe functies toegevoegd aan de Raspberry Pi setup script om het opstartgedrag te verbeteren: automatische startx zonder display manager, uitgeschakelde splash screen voor snellere boot, en console login optimalisaties. Dit verhoogt de efficiëntie van het systeem en biedt gebruikers een direct beschikbare kiosk mode zonder inlogschermen. SSH blijft beschikbaar voor remote toegang, en handmatige bediening is vereenvoudigd.
Deze update verbetert de configuratie van de Raspberry Pi door automatische login te verfijnen en de boot-snelheid te optimaliseren. De splash screen wordt uitgeschakeld voor een snellere start, en het login scherm is verwijderd om direct toegang te krijgen tot de console in multi-user mode. Gebruikers worden automatisch ingelogd zonder een wachtwoord in te voeren. SSH blijft beschikbaar voor externe toegang, en instructies voor lokale terminal toegang via Ctrl+Alt+F2 zijn toegevoegd.
Deze commit introduceert een volledige installatiehandleiding en scripts voor het instellen van de Adhaan applicatie in fullscreen kioskmodus op een Raspberry Pi. Inclusief nieuwe bestanden voor automatische installatie, Docker configuraties, en aanpassing van instellingen. Hierdoor wordt de installatie gemakkelijker en efficiënter, met automatische configuratie van systeemdiensten en kiosk start-up.
Gebedstijd offsets zijn toegevoegd waarmee gebruikers tijdaanpassingen kunnen maken aan de tijden verkregen van de VUMG API. Dit biedt meer flexibiliteit door de mogelijkheid te geven om minuten toe te voegen of af te trekken van elke specifieke gebedstijd (Fajr, Zuhr, Asr, Maghrib, Isha). Het template voor instellingen is aangepast om deze nieuwe offset functionaliteit op een gebruiksvriendelijke manier toegankelijk te maken. Ook zijn er kleine correcties uitgevoerd om de seconden correct uit de gebedstijden te halen voor een betere verwerking.