• Så bygger du din digitalaskylt med Linux.

    Kom och köp konserverad gröt”

    Digitala skyltar: Utmaningar och lösningar

    Digitala skyltar har funnits i cirka 30 år och har blivit allt vanligare i vår vardag. De finns i tunnelbanor, på bussar och i butiker. Utmaningen har dock varit att utveckla dessa system till en rimlig kostnad.

    Behovet

    Många småföretagare som driver verksamheter beroende av väder eller andra variabler finner det stressande att ständigt behöva bemanna sina butiker. Att kunna informera kunder om ändrade öppettider och samtidigt synkronisera denna information med företagets webbplats är därför mycket värdefullt.

    Min lokala thailändska kiosk, som serverar utmärkt mat, har ibland svårt att informera om ändrade öppettider när de tar ledigt. Ofta använder de en papperslapp som fladdrar med vinden, och de glömmer att uppdatera hemsidan. En kund som möts av en stängd butik utan förklaring kommer troligen inte tillbaka. Att kunna lämna aktuell status om öppettider är ett bra sätt att behålla kunder.

    Tekniska utmaningar och lösningar

    Jag har funderat först på att återanvända paneler från skrotade laptops och använda en Raspberry Pi som dator. Det hade varit komplicerat eftersom elektroniken som krävs för att anpassa gamla laptopskärmar till en Raspberry Pi är otymplig. En surfplatta som tillåter installation av exempelvis Debian vore idealisk, men kräver en budget för att testa olika lösningar.

    På senare år har alternativa sekundära skärmar blivit tillgängliga. Dessa kan anslutas via USB-C eller HDMI och kräver minimalt med kablage, vilket är önskvärt då skylten ska hängas på en dörr. Jag började med Raspberry Pi Zero och Pi4 men fann att de var för långsamma. Istället valde jag ZimaBlade, som tillåter anpassning av RAM-minne och har en x86-baserad CPU. Den billigaste modellen kostar $79 och man behöver rusta ZimaBlad med RAM. Kostnad ytterligare 300:-

    Budget

    Jag strävar efter att hålla budgeten så låg som möjligt. Sekundära skärmar är numera prisvärda och finns i många varianter. En 16-tums sekundär mobilskärm ( Exempel på vad jag köpte hos amazon) som klarar 2,5k IPS kostar cirka 1300 kr på Amazon )

    ZimaBlade datorn med 16 GB RAM kostar cirka 1300 kr. Kostnaden kan pressas ytterligare genom att hitta en billigare skärm eller använda Raspberry Pi Zero och acceptera dess långsammare prestanda. Man kan även använda en gammal laptop, beroende på ambitioner och förutsättningar.

    Installation av operativsystem

    Om man vill öva först kan det vara en bra idé att göra detta i en virtuell maskin, exempelvis med VirtualBox.

    Som standard är debian inte inställd på sudo, så ett tips det att de kommando nämns nedan kör dem som root direkt istället. Där det står sudo , skriv su – först.

    1. Installera Debian utan grafisk miljö. ( Länkar finns här )
    2. När installationen är klar, logga in som den användare du valde under installationen och skriv följande kommandon:
       sudo apt update
       sudo apt install openssh-server net-tools xorg openbox firefox-esr unclutter xdotool
    1. Skapa nödvändiga konfigurationsfiler och lägg till rader för att starta Firefox i kiosk-läge:

      Dessa kommando kör du som den användare som skall köra firefox .
       mkdir -p ~/.config/openbox
       cp /etc/xdg/openbox/autostart ~/.config/openbox/
       nano ~/.config/openbox/autostart

    Lägg till raden:

    firefox-esr --kiosk "http://dinwebbsida.se" &
    unclutter -idle 0 &

    Skapa och redigera .xinitrc-filen:

       nano ~/.xinitrc

    Lägg till raden: exec openbox-session

    1. För att starta X vid inloggning, redigera .profile:
       nano ~/.profile

    Lägg till följande rader:

       if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ]; then
       startx
       fi
    1. För automatisk inloggning:

    sudo mkdir /etc/systemd/system/getty@tty1.service.d/

       sudo nano /etc/systemd/system/getty@tty1.service.d/override.conf
    
    Lägg till följande rader:
       [Service]
       ExecStart=
       ExecStart=-/sbin/agetty --autologin yourusername --noclear %I $TERM

    Ladda om systemet:

       sudo systemctl daemon-reload
       sudo systemctl enable getty@tty1

    Automatisk uppdatering av information

    För att skylten ska uppdateras automatiskt och regelbundet används ett cron-jobb som utför följande skript:

    #!/bin/bash
    export DISPLAY=:0
    xhost +
    xdotool key --clearmodifiers F5
    
    Lämpligen spara ovanstående script som AutoUpdate
    
    Skriv 
    
    chmod +x AutoUpdate
    crontab -e
    
    Lägg till följande rader
    */2 * * * * /home/dittusernamne/AutoUpdate

    Detta skript uppdaterar automatiskt sidan i de intervaller som valts i cron-jobbet, vilket säkerställer att informationen på skylten alltid är aktuell.

    WordPress

    När dörrskylten startar, kommer den att öppna Firefox i kiosk-läge och ladda en förbestämd hemsida. WordPress är ett populärt verktyg för att skapa hemsidor och tillåter enkelt tillägg av plugins. Man kan skapa mallar för olika tillfällen, som exempelvis vid stängning över julen eller vid sjukdom.

    Vi återkommera senare i annat inlägg hur man kan konfiguera word press som t.ex som dörrskylt

    Slutord:

    Tänk på att det finns gott om elektronik som säljs via second handbutiker som till exempel Stadsmissionen och Myrorna. En 15 år gammal dator duger ofta alldeles utmärkt för detta ändamål.

    De förhållanden som fanns kring mitt projekt krävde att enheten skulle kunna hängas på en dörr. Därför var vikten avgörande.

    Del 2 av denna artikel


Så bygger du din digitalaskylt med Linux.

Kom och köp konserverad gröt”

Digitala skyltar: Utmaningar och lösningar

Digitala skyltar har funnits i cirka 30 år och har blivit allt vanligare i vår vardag. De finns i tunnelbanor, på bussar och i butiker. Utmaningen har dock varit att utveckla dessa system till en rimlig kostnad.

Behovet

Många småföretagare som driver verksamheter beroende av väder eller andra variabler finner det stressande att ständigt behöva bemanna sina butiker. Att kunna informera kunder om ändrade öppettider och samtidigt synkronisera denna information med företagets webbplats är därför mycket värdefullt.

Min lokala thailändska kiosk, som serverar utmärkt mat, har ibland svårt att informera om ändrade öppettider när de tar ledigt. Ofta använder de en papperslapp som fladdrar med vinden, och de glömmer att uppdatera hemsidan. En kund som möts av en stängd butik utan förklaring kommer troligen inte tillbaka. Att kunna lämna aktuell status om öppettider är ett bra sätt att behålla kunder.

Tekniska utmaningar och lösningar

Jag har funderat först på att återanvända paneler från skrotade laptops och använda en Raspberry Pi som dator. Det hade varit komplicerat eftersom elektroniken som krävs för att anpassa gamla laptopskärmar till en Raspberry Pi är otymplig. En surfplatta som tillåter installation av exempelvis Debian vore idealisk, men kräver en budget för att testa olika lösningar.

På senare år har alternativa sekundära skärmar blivit tillgängliga. Dessa kan anslutas via USB-C eller HDMI och kräver minimalt med kablage, vilket är önskvärt då skylten ska hängas på en dörr. Jag började med Raspberry Pi Zero och Pi4 men fann att de var för långsamma. Istället valde jag ZimaBlade, som tillåter anpassning av RAM-minne och har en x86-baserad CPU. Den billigaste modellen kostar $79 och man behöver rusta ZimaBlad med RAM. Kostnad ytterligare 300:-

Budget

Jag strävar efter att hålla budgeten så låg som möjligt. Sekundära skärmar är numera prisvärda och finns i många varianter. En 16-tums sekundär mobilskärm ( Exempel på vad jag köpte hos amazon) som klarar 2,5k IPS kostar cirka 1300 kr på Amazon )

ZimaBlade datorn med 16 GB RAM kostar cirka 1300 kr. Kostnaden kan pressas ytterligare genom att hitta en billigare skärm eller använda Raspberry Pi Zero och acceptera dess långsammare prestanda. Man kan även använda en gammal laptop, beroende på ambitioner och förutsättningar.

Installation av operativsystem

Om man vill öva först kan det vara en bra idé att göra detta i en virtuell maskin, exempelvis med VirtualBox.

Som standard är debian inte inställd på sudo, så ett tips det att de kommando nämns nedan kör dem som root direkt istället. Där det står sudo , skriv su – först.

  1. Installera Debian utan grafisk miljö. ( Länkar finns här )
  2. När installationen är klar, logga in som den användare du valde under installationen och skriv följande kommandon:
   sudo apt update
   sudo apt install openssh-server net-tools xorg openbox firefox-esr unclutter xdotool
  1. Skapa nödvändiga konfigurationsfiler och lägg till rader för att starta Firefox i kiosk-läge:

    Dessa kommando kör du som den användare som skall köra firefox .
   mkdir -p ~/.config/openbox
   cp /etc/xdg/openbox/autostart ~/.config/openbox/
   nano ~/.config/openbox/autostart

Lägg till raden:

firefox-esr --kiosk "http://dinwebbsida.se" &
unclutter -idle 0 &

Skapa och redigera .xinitrc-filen:

   nano ~/.xinitrc

Lägg till raden: exec openbox-session

  1. För att starta X vid inloggning, redigera .profile:
   nano ~/.profile

Lägg till följande rader:

   if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ]; then
   startx
   fi
  1. För automatisk inloggning:

sudo mkdir /etc/systemd/system/getty@tty1.service.d/

   sudo nano /etc/systemd/system/getty@tty1.service.d/override.conf

Lägg till följande rader:
   [Service]
   ExecStart=
   ExecStart=-/sbin/agetty --autologin yourusername --noclear %I $TERM

Ladda om systemet:

   sudo systemctl daemon-reload
   sudo systemctl enable getty@tty1

Automatisk uppdatering av information

För att skylten ska uppdateras automatiskt och regelbundet används ett cron-jobb som utför följande skript:

#!/bin/bash
export DISPLAY=:0
xhost +
xdotool key --clearmodifiers F5

Lämpligen spara ovanstående script som AutoUpdate

Skriv 

chmod +x AutoUpdate
crontab -e

Lägg till följande rader
*/2 * * * * /home/dittusernamne/AutoUpdate

Detta skript uppdaterar automatiskt sidan i de intervaller som valts i cron-jobbet, vilket säkerställer att informationen på skylten alltid är aktuell.

WordPress

När dörrskylten startar, kommer den att öppna Firefox i kiosk-läge och ladda en förbestämd hemsida. WordPress är ett populärt verktyg för att skapa hemsidor och tillåter enkelt tillägg av plugins. Man kan skapa mallar för olika tillfällen, som exempelvis vid stängning över julen eller vid sjukdom.

Vi återkommera senare i annat inlägg hur man kan konfiguera word press som t.ex som dörrskylt

Slutord:

Tänk på att det finns gott om elektronik som säljs via second handbutiker som till exempel Stadsmissionen och Myrorna. En 15 år gammal dator duger ofta alldeles utmärkt för detta ändamål.

De förhållanden som fanns kring mitt projekt krävde att enheten skulle kunna hängas på en dörr. Därför var vikten avgörande.

Del 2 av denna artikel