Talaan ng mga Nilalaman:

Raspberry Pi: Wall Mounted Calendar at Notification Center: 5 Hakbang (na may Mga Larawan)
Raspberry Pi: Wall Mounted Calendar at Notification Center: 5 Hakbang (na may Mga Larawan)

Video: Raspberry Pi: Wall Mounted Calendar at Notification Center: 5 Hakbang (na may Mga Larawan)

Video: Raspberry Pi: Wall Mounted Calendar at Notification Center: 5 Hakbang (na may Mga Larawan)
Video: Digital Dashboard (Calendar/Weather/To-Do List/etc) 2024, Nobyembre
Anonim
Raspberry Pi: Wall Mounted Calendar at Notification Center
Raspberry Pi: Wall Mounted Calendar at Notification Center

Bago ang "digital age" maraming pamilya ang gumamit ng mga kalendaryo sa dingding upang maipakita ang isang buwanang pagtingin sa mga paparating na kaganapan. Ang modernong bersyon ng kalendaryong naka-mount sa dingding ay may kasamang parehong mga pangunahing pag-andar:

  • Isang buwanang agenda
  • Pag-sync ng mga aktibidad ng mga miyembro ng pamilya
  • Madaling mag-browse sa pagitan ng buwan

Higit pa sa mga pangunahing pag-andar na hahawakin din ng gadget na ito:

  • Isang kung forecast
  • Mga paparating na kaganapan sa kalapit na lugar
  • Live na impormasyon tungkol sa pampublikong transportasyon
  • At higit pa…

Ang iyong kailangan:

  • Raspberry Pi 2
  • USB Wifi Dongle. (Tulad ng Edimax 150Mbps Wireless nano)
  • LCD laptop screen (kumuha ng isa mula sa isang sirang laptop https://www.instructables.com/id/Old-l laptop-screen…
  • Controller card para sa laptop screen (maghanap ng Ebay para sa LCD Controller Driver Board at ang serial number ng iyong laptop screen)
  • Ilang Mga switch ng Push Button (Tulad ng https://www.ebay.com/itm/16mm-Start-Horn- Button-Mom…)
  • Nagpapatakbo ang Webserver ng isang pasadyang homepage
  • Pirasong kahoy. Ang taas ay dapat na higit sa 30mm, kaya ang electronics ay maaaring magkasya sa loob. Ang lapad at taas ay nakasalalay sa laki ng iyong laptop screen.
  • Sheet ng tapunan. (Tulad nito
  • Maikling HDMI cable
  • Powersuply para sa board control at Raspberry Pi.
  • Foamcore
  • Pandikit
  • Mga mounting screw.

(May inspirasyon ng itinuturo ni Piney

Hakbang 1: Ang Hardware

Ang Hardware
Ang Hardware
Ang Hardware
Ang Hardware
Ang Hardware
Ang Hardware

Ito ang pag-setup ng hardware.

  1. Maghanap ng isang LCD laptop screen. Mag-order ng board ng controller sa Ebay. Maghanap ng LCD Controller Driver Board at ang serial number ng iyong laptop screen. Magbasa nang higit pa: https://www.instructables.com/id/Old-l laptop-screen-..
  2. Gumawa ng isang piraso ng kahoy. Ang taas ay dapat na higit sa 30mm, kaya ang electronics ay maaaring magkasya sa loob. Ang lapad at taas ay nakasalalay sa laki ng iyong laptop screen, magkaroon ng isang margin para sa dagdag na 10 mm sa lahat ng panig. Pag-ukit at bigyan ng puwang ang mga electronics sa likuran. Mag-drill ng mga butas para sa mga pindutan at wires.
  3. I-fasten ang screen ng laptop. Ginamit ko ang orginal mounting frame mula sa laptop.
  4. Gupitin ang foamcore na may pantay na kapal ng screen. at idikit ito sa slab na kahoy.
  5. Takpan ang lahat ng panig ng cork. Gupitin ng isang "snap-off blade kutsilyo" at kola na may "pandikit spray".
  6. I-mount ang Push Buttons. Gumamit ng isang malaking drill, at maingat na mag-drill nang manu-mano.
  7. Ikonekta ang electronics. Ikonekta ang tatlo sa mga Push Buttons sa GPIO-pin 19/20/21 at sa ground. https://ms-iot.github.io/content/images/PinMappin… Alamin ang pin para sa On / Off na pindutan para sa control board, at ikonekta ito sa ika-apat na Push Button. (Mahahanap mo ito sa pamamagitan ng pagsubok na ikonekta ang lupa sa bawat pin, biglang magaan ang LCD). Panghuli, ikonekta ang HDMI cable sa pagitan ng Raspberry at controller board, at ikonekta ang screen sa board ng controller.

Hakbang 2: Ang Software

Ang setup ay kahit papaano ay ginagawang isang kiosk ang Raspberry Pi. Awtomatikong magsisimula ang OS ng isang website sa full screen mode, at ang Push Buttons ay ginagamit upang makontrol ang impormasyon sa website. Ang setup ay:

  1. I-install ang Raspbain sa Raspberry Pi (https://www.raspberrypi.org/documentation/installation/noobs.md)
  2. Mag-sign up para sa isang Google Calender. (https://calendar.google.com). Idagdag ang iyong kaganapan sa upcomming. Humingi ng pag-access sa kalendaryo ng mga miyembro ng iyong pamilya, o lumikha ng isang tiyak na "kalendaryo ng pamilya" at bigyan ito ng natitirang pamilyar na acess dito. Gawing mas pabago-bago ang iyong kalendaryo sa pamamagitan ng pagdaragdag ng mga panlabas na kalendaryo. Ang mga kaganapan sa Facebook, mga pista opisyal, at numero ng linggo ay praktikal para sa akin. Higit pang inspirasyon dito:
  3. Mag-set up ng isang webpage at isang webserver
  4. Mag-install ng isang web browser at ipasadya ang disenyo ng kalendaryo
  5. I-set up ang mga push button

Magpatuloy sa pagbabasa para sa mga detalye tungkol sa 3-5.

Hakbang 3: Lumikha ng isang Webpage at Webserver

Ang webpage ay ang canvas na ipapakita ng Raspberry Pi. Ang canvas ay maaaring mapunan ng anumang impormasyon. Ipapakita ko sa iyo kung paano ako mag-embed ng isang google callender. Ang embeed code ay nabubuo ng mga googles na sariling aplication. Ipinapakita ng youtube na ito kung paano ito maisasagawa:

Ang Google Calendar ay nakabuo ng mga keyboard shortcuts. Pindutin ang N at lilitaw ang susunod na buwan, pindutin ang P at ang dating buwan ay ipinapakita. Gagana lamang ito kapag nakatuon ang. Lumikha ako ng isang JavaScript na tinitiyak na tama ang pokus.

Ang isang halimbawang file ng html code ay nakakabit (palitan ang pangalan mula sa index.html.txt sa index.html). Para sa privacy, pinalitan ko ang ilan sa code ng "* _ REPLACED _ *". Sa halip, gamitin ang embeed code na nabuo ng google.

Alinman ilagay ang index.html file sa iyong sariling webhost, o gawing isang webserver ang iyong Raspberry Pi at i-host ito bilang lokal. Kung mayroon ka nang isang webhost magpatuloy sa susunod na hakbang. Mag-install ng isang webserver sa pamamagitan ng pagsunod sa patnubay na ito: https://www.raspberrypi.org/documentation/remote-a… Ngayon i-save ang iyong binago na index.html sa /var/www/html/index.html, tulad nito:

sudo cp index.html /var/www/html/index.html

Hakbang 4: Mag-install ng isang Web Browser at Ipasadya ang Disenyo ng Kalendaryo

Mayroong maraming web browser doon. Ngunit may isa lamang akong natagpuan na makakayanan ang tatlong kinakailangang ito; 1) maaaring hawakan ang modernong bersyon ng google kalendaryo, 2) ay may isang buong mode ng screen, 3) maaaring magpatakbo ng isang lokal na CSS. Ginagamit ang lokal na CSS upang baguhin ang mga pagpapakita ng kalendaryo ng google. Hindi magagawa ang muling pagdidisenyo sa webpage, dahil ang CSS ay naka-embed mula sa isa pang server (ang google-server).

I-install ang Iceweasel (Firefox para sa Linux)

I-install ang extension na ito para sa Iceweasel:

Buksan ang tab na "Naka-istilong" na extension sa Iceweasel at ipasadya ang CSS upang gawing mas mahusay ang hitsura ng google callander. Nakalakip na file i para sa isang halimbawa.

Ngayon, hinayaan nating gawin ang Iceweasel upang mag-autostart at buksan ang iyong webpage sa pag-login. I-type ito sa terminal ng Linux:

cd /home/pi//.config/autostart

nano cal.desktop

Isulat ang sumusunod sa file. Baguhin ang "localhost" sa adress kung saan nakaimbak ang iyong canvas-webpage. Makatipid at lumabas.

[Entry sa Desktop]

Uri = Pangalan ng Application = hemsida Exec = iceweasel localhost StartupNotify = false

Hakbang 5: I-set up ang Mga Push Buttons

Ginagamit ang Push Buttons upang mag-browse pasulong at paatras sa view ng buwan sa kalendaryo. Bilang default ginagawa ito sa pamamagitan ng pagpindot sa “p” at “n” sa isang keyboard. Samakatuwid ang mga pindutan ay gayahin ang dalawang mga utos ng keyboard.

Una, lumikha ng isang script ng sawa upang gumana ang mga pindutan ng push:

Mag-download at mag-install ng python-uinput, isang python API upang lumikha ng mga virtual na keyboard: https://tjjr.fi/sw/python-uinput/ Ang Raspbian ay mayroong parehong Python 2 at Python 3. Tiyaking na-install mo ang uinput kasama ang bersyon na iyong ginagamit.

Isama ang uinput-API at ang script ng pindutan nang magkasama. Nakalakip ang panghuling scipt ng sawa.

Awtomatikong simulan ang script ng sawa sa pagsisimula: https://www.instructables.com/id/Raspberry-Pi-Laun… Ang aming launcher.sh ay magmumukhang bellow. Palitan ang "/ home / pi / py_switch" sa landas kung saan mo naimbak ang script ng sawa.

cd /

cd / home / pi / py_switch sudo modprobe uinput sudo python switch.py cd /

Yun lang!

I-UPDATE:

Ang bilang ng mga posibleng utos ay maaaring pahabain ng ilang mga kung-ibang-pahayag sa code ng sawa. Nag-attach ako ng isang na-upgrade na switch.py-file sa hakbang na ito. Ang bago ay ang script ay ang mga sumusunod na utos.

  • Pindutin ang pindutan 1 -> Key pindutin ang "P" -> Mag-browse dati buwan
  • Pindutin ang pindutan 2 -> Key pindutin ang "N" -> Mag-browse sa susunod na buwan
  • Pindutin ang pindutan 3 -> Key pindutin ang alinman sa "M" o "A" -> kahalili sa pagitan ng buwan-view o agenda-view
  • Pindutan ng pindutin nang matagal 3. -> Key pindutin ang "F5" -> I-reload ang webpage
  • Sabay-sabay na pindutan ng pindutin ang 1, 2, 3 -> isinasagawa ang utos ng shell na "sudo reboot" -> I-restart ang raspberry pi.

Inirerekumendang: