Raspberry Pi Zero brenda ekranit Braille Handy Tech Active Star 40

Raspberry Pi Zero brenda ekranit Braille Handy Tech Active Star 40

Autori vendosi brenda ekranit tĂ« tij tĂ« ri Braille Handy Tech Active Star 40 njĂ« Raspberry Pi Zero, njĂ« “dongle” Bluetooth dhe kabllon. Porta e integruar USB siguron furnizimin me energji. Si rezultat, u krijua njĂ« kompjuter ARM i pavarur, pa monitor, me sistem operativ Linux, i pajisur me tastierĂ« dhe ekran Braille. Ai mund tĂ« karikohet/furnizohet pĂ«rmes USB-sĂ«, pĂ«rfshirĂ« nga njĂ« power bank ose njĂ« karikues diellor. Prandaj mund tĂ« funksionojĂ« pa rrjet elektrik jo vetĂ«m pĂ«r disa orĂ«, por pĂ«r disa ditĂ«.

Raspberry Pi Zero brenda ekranit Braille Handy Tech Active Star 40

Dallimet në përmasa të ekraneve Braille

Para sĂ« gjithash, ato ndryshojnĂ« nga gjatĂ«sia e rreshtit. Pajisjet me 60 ose mĂ« shumĂ« qeliza janĂ« tĂ« pĂ«rshtatshme pĂ«r punĂ« me kompjuter desktop, ndĂ«rsa ato me 40 janĂ« praktike pĂ«r t’u mbajtur bashkĂ« me laptopin. Sot ka edhe ekrane Braille qĂ« lidhen me smartfonĂ« dhe tableta, me gjatĂ«si rreshti prej 14 ose 18 qelizash.

Më parë, ekranet Braille ishin mjaft voluminoze. Një model me 40 qeliza, për shembull, kishte përmasa dhe peshë të krahasueshme me një laptop 13-inç. Tani, me të njëjtin numër qelizash, ato janë mjaft kompakte sa që ekrani mund të vendoset përpara laptopit, dhe jo laptopi mbi ekran.

Sigurisht qĂ« kjo Ă«shtĂ« mĂ« mirĂ«, por gjithsesi nuk Ă«shtĂ« shumĂ« komode tĂ« mbash nĂ« prehĂ«r dy pajisje tĂ« ndara. Kur punon nĂ« tavolinĂ«, nuk ka ankesa, por mjafton tĂ« kujtosh se laptopi quhet edhe “laptop”, pra pajisje pĂ«r prehĂ«r, dhe tĂ« pĂ«rpiqesh ta justifikosh kĂ«tĂ« emĂ«r, pĂ«r tĂ« kuptuar se edhe njĂ« ekran miniaturĂ« me 40 qeliza Ă«shtĂ« madje mĂ« pak i rehatshĂ«m.

Prandaj autori priti daljen e modelit të ri, të premtuar prej kohësh, në serinë Handy Tech Star. Qysh në vitin 2002 u lançua modeli i mëparshëm Handy Tech Braille Star 40, ku sipërfaqja e trupit është e mjaftueshme për të vendosur një laptop sipër. Dhe nëse ai nuk përshtatet, është parashikuar një mbështetëse tërheqëse. Tani ky model është zëvendësuar nga Active Star 40; në thelb është pothuajse i njëjti produkt, por me elektronikë të modernizuar.

Raspberry Pi Zero brenda ekranit Braille Handy Tech Active Star 40

Dhe mbështetësja tërheqëse ka mbetur:

Raspberry Pi Zero brenda ekranit Braille Handy Tech Active Star 40

Por gjëja më praktike te kjo risi është zgavra me përmasa afërsisht sa një smartfon (shih KDPV). Ajo hapet duke rrëshqitur platformën mbrapa. Mbajtja e smartfonit aty rezultoi e papërshtatshme, por sidoqoftë duhet shfrytëzuar disi kjo ndarje bosh, brenda së cilës madje është parashikuar edhe dalje energjie.

GjĂ«ja e parĂ« qĂ« mendoi autori ishte tĂ« vendoste aty njĂ« Raspberry Pi, por pasi u ble ekrani, doli se me «mjedrĂ«n» mbajtĂ«sja qĂ« mbyll ndarjen nuk futej deri nĂ« fund. Sikur pllaka tĂ« ishte vetĂ«m 3 mm mĂ« e hollë 

Por njĂ« koleg i tregoi pĂ«r daljen e Raspberry Pi Zero, i cili doli aq kompakt sa nĂ« ndarje do tĂ« hynin dy tĂ« tillë  ose, mĂ« saktĂ«, edhe tre. U porosit menjĂ«herĂ« bashkĂ« me njĂ« kartĂ« memorieje 64 GB, njĂ« Bluetooth dongle dhe njĂ« kabllo Micro USB. Pas disa ditĂ«sh gjithçka mbĂ«rriti, dhe miqtĂ« me shikim e ndihmuan autorin tĂ« pĂ«rgatiste kartĂ«n. Gjithçka funksionoi menjĂ«herĂ« siç duhet.

ÇfarĂ« u bĂ« pĂ«r kĂ«tĂ«

Në panelin e pasmë të Handy Tech Active Star 40 ndodhen dy porta USB për pajisje të tilla si tastierat. Përfshihet një tastierë kompakte me fiksim magnetik. Kur tastiera është e lidhur dhe vetë ekrani punon përmes Bluetooth, kompjuteri e njeh shtesë edhe si tastierë Bluetooth.

Kështu, nëse te Raspberry Pi Zero i vendosur në ndarjen për smartphone lidhet një Bluetooth dongle, ai do të mund të shkëmbejë të dhëna me ekranin Braille përmes Bluetooth me ndihmën e BRLTTY, dhe nëse ekranit i lidhet edhe tastiera, «mjedra» do të punojë edhe me të.

Por kjo nuk Ă«shtĂ« ende e gjitha. VetĂ« «mjedra», nga ana e saj, mund tĂ« marrĂ« akses nĂ« internet pĂ«rmes Bluetooth PAN nga çdo pajisje qĂ« e mbĂ«shtet atĂ«. Autori e ka konfiguruar nĂ« kĂ«tĂ« mĂ«nyrĂ« smartphone-in e tij dhe kompjuterĂ«t nĂ« shtĂ«pi e nĂ« punĂ«, por nĂ« tĂ« ardhmen planifikon tĂ« pĂ«rshtatĂ« pĂ«r kĂ«tĂ« edhe njĂ« tjetĂ«r «mjedĂ«r» — klasike, jo Zero, tĂ« lidhur me Ethernet dhe me njĂ« Bluetooth dongle tjetĂ«r.

BlueZ 5 dhe PAN

Mënyra e konfigurimit të PAN me ndihmën e BlueZ rezultoi jo e qartë. Autori gjeti skriptin Python bt-pan (shih më poshtë), i cili lejon konfigurimin e PAN pa GUI.

Me ndihmën e tij mund të konfigurohet si serveri, ashtu edhe klienti. Kur merr komandën përkatëse përmes D-Bus gjatë punës në modalitetin klient, ai krijon një pajisje të re rrjeti bnep0 menjëherë pas vendosjes së lidhjes me serverin. Zakonisht për caktimin e adresës IP për këtë ndërfaqe përdoret DHCP. Në modalitetin server, BlueZ kërkon të specifikohet emri i pajisjes bridge, te e cila mund të shtojë nga një pajisje vartëse për lidhjen e secilit klient. Konfigurimi i adresës për pajisjen bridge dhe nisja e serverit DHCP plus IP masquerading në bridge zakonisht janë gjithçka që nevojitet.

Pikë aksesi Bluetooth PAN me Systemd

Për konfigurimin e urës, autori përdori systemd-networkd:

Skedari /etc/systemd/network/pan.netdev

[NetDev]
Name=pan
Kind=bridge
ForwardDelaySec=0

Skedari /etc/systemd/network/pan.network

[Match]
Name=pan

[Network]
Address=0.0.0.0/24
DHCPServer=yes
IPMasquerade=yes

Tani duhet bërë që BlueZ të konfigurojë profilin NAP. Doli se me mjetet standarde të BlueZ 5.36 kjo nuk mund të bëhet. Nëse autori gabon, korrigjojeni: mlang (di të lëvizë veshët) blind (ndodh te aksesi dhe te kuantika) guru

Por ai gjeti një postim në blog dhe një skript në Python për të kryer thirrjet e nevojshme në D-Bus.

Për lehtësi, autori përdori një shërbim Systemd për nisjen e skriptit dhe verifikimin e disponueshmërisë së varësive.

Skedari /etc/systemd/system/pan.service

[Unit]
Description=Bluetooth Personal Area Network
After=bluetooth.service systemd-networkd.service
Requires=systemd-networkd.service
PartOf=bluetooth.service

[Service]
Type=notify
ExecStart=/usr/local/sbin/pan

[Install]
WantedBy=bluetooth.target

Skedari /usr/local/sbin/pan

#!/bin/sh
# Ugly hack to work around #787480
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

exec /usr/local/sbin/bt-pan --systemd --debug server pan

Skedari i dytë nuk do të nevojitej, nëse Debian do të kishte mbështetje për IPMasquerade= (shihni. #787480).

Pas ekzekutimit të komandave systemctl daemon-reload dhe systemctl restart systemd-networkd Bluetooth PAN mund të niset me komandën systemctl start pan

Klient Bluetooth PAN me përdorimin e Systemd

Edhe pjesa klient mund të konfigurohet lehtësisht me ndihmën e Systemd.

Skedari /etc/systemd/network/pan-client.network

[Match]
Name=bnep*

[Network]
DHCP=yes

Skedari /etc/systemd/system/pan@.service

[Unit]
Description=Bluetooth Personal Area Network client

[Service]
Type=notify
ExecStart=/usr/local/sbin/bt-pan --debug --systemd client %I --wait

Tani, pas ringarkimit të konfigurimit, mund të lidheni me pikën e caktuar të aksesit Bluetooth kështu:

systemctl start pan@00:11:22:33:44:55

ÇiftĂ«zimi pĂ«rmes rreshtit tĂ« komandĂ«s

Natyrisht, konfigurimi i serverit dhe i klientĂ«ve duhet tĂ« bĂ«het pasi ato tĂ« çiftĂ«zohen pĂ«rmes Bluetooth. NĂ« server duhet tĂ« nisni bluetoothctl dhe t’i jepni kĂ«to komanda:

power on
agent on
default-agent
scan on
scan off
pair XX:XX:XX:XX:XX:XX
trust XX:XX:XX:XX:XX:XX

Pasi të nisni skanimin, prisni disa sekonda derisa pajisja që ju nevojitet të shfaqet në listë. Shënoni adresën e saj dhe përdoreni atë me komandën pair, dhe, nëse është e nevojshme, edhe me komandën trust.

Nga ana e klientit duhet bërë e njëjta gjë, por komanda trust me siguri nuk do të nevojitet. Serverit i duhet që të pranojë lidhjen përmes profilit NAP pa konfirmim manual nga përdoruesi.

Autori nuk është i sigurt nëse kjo është renditja optimale e komandave. Ndoshta gjithçka që duhet është çiftëzimi i klientit me serverin dhe ekzekutimi i komandës trust në server, por kështu ai ende nuk ka provuar.

Lejimi i përdorimit të profilit Bluetooth HID

KĂ«rkohet qĂ« “mjedra” tĂ« njohĂ« tastierĂ«n e lidhur me ekranin Braille me kabllo dhe qĂ« mĂ« pas vetĂ« ekrani e pĂ«rcjell pĂ«rmes Bluetooth. BĂ«het nĂ« tĂ« njĂ«jtĂ«n mĂ«nyrĂ«, vetĂ«m se nĂ« vend tĂ« agent on duhet tĂ« jepni komandĂ«n agent KeyboardOnly dhe bluetoothctl do tĂ« gjejĂ« pajisjen me profil HID.

Por konfigurimi i Bluetooth përmes rreshtit të komandës është disi i ndërlikuar

Edhe pse autori arriti ta konfigurojĂ« gjithçka, ai e kupton se konfigurimi i BlueZ pĂ«rmes rreshtit tĂ« komandĂ«s nuk Ă«shtĂ« praktik. Fillimisht ai mendonte se agjentĂ«t nevojiteshin vetĂ«m pĂ«r futjen e kodeve PIN, por doli, pĂ«r shembull, se pĂ«r tĂ« aktivizuar profilin HID duhet tĂ« shkruani “agent KeyboardOnly”. ËshtĂ« pĂ«r t’u habitur qĂ« pĂ«r tĂ« nisur Bluetooth PAN duhet tĂ« kĂ«rkoni nĂ«pĂ«r depo pĂ«r skriptin e duhur. Ai kujton se nĂ« versionin e mĂ«parshĂ«m tĂ« BlueZ pĂ«r kĂ«tĂ« kishte njĂ« mjet tĂ« gatshĂ«m pand — ku pĂ«rfundoi ai nĂ« BlueZ 5? Ndoshta Ă«shtĂ« shfaqur njĂ« zgjidhje e re, e panjohur pĂ«r autorin, por e dukshme?

Performanca

Shpejtësia e transmetimit të të dhënave ishte afërsisht 120 kbit/s, gjë që është plotësisht e mjaftueshme. Procesori ARM 1 GHz është shumë i shpejtë për ndërfaqen e rreshtit të komandës. Autori gjithsesi planifikon të përdorë kryesisht ssh dhe emacs në këtë pajisje.

Fontet e konsolës dhe rezolucioni i ekranit

Rezolucioni i ekranit qĂ« framebuffer pĂ«rdor si parazgjedhje nĂ« Raspberry Pi Zero Ă«shtĂ« mjaft i çuditshĂ«m: fbset raporton se Ă«shtĂ« 656×416 pikselĂ« (natyrisht, monitori nuk Ă«shtĂ« i lidhur). Me njĂ« font konsole 8×16 u morĂ«n 82 karaktere nĂ« rresht dhe 26 rreshta.

Puna me një ekran Braille me 40 qeliza në këtë mënyrë nuk është e përshtatshme. Autori gjithashtu dëshiron që shenjat Unicode të shfaqen në ekran në formë Braille. Për fat të mirë, Linux mbështet 512 simbole, ndërsa shumica e fonteve të konsolës kanë 256. Me ndihmën e console-setup mund të përdoren së bashku dy fonte me nga 256 simbole. Autori shtoi këto rreshta në skedarin /etc/default/console-setup:

SCREEN_WIDTH=80
SCREEN_HEIGHT=25
FONT="Lat15-Terminus16.psf.gz brl-16x8.psf"

ShĂ«nim: qĂ« fonti brl-16×8.psf tĂ« bĂ«het i disponueshĂ«m, duhet tĂ« instaloni console-braille.

ÇfarĂ« ndodh mĂ« tej?

Ekrani braille ka një prizë 3,5 mm, por autori nuk njeh adaptorë për të marrë sinjal audio nga Mini-HDMI. Ai nuk arriti të aktivizojë kartën e zërit të integruar në «mjedër» (çuditërisht, përkthyesi ishte i bindur se Zero nuk e ka një të tillë, megjithëse ka mënyra për të nxjerrë zërin me PWM përmes GPIO). Ai planifikon të përdorë një hub USB-OTG, të lidhë një kartë të jashtme dhe ta nxjerrë zërin në altoparlantin e integruar të ekranit braille. Dy karta të jashtme, për ndonjë arsye, nuk funksionuan, ndaj tani ai po kërkon një pajisje të ngjashme me një chipset tjetër.

Po ashtu është e papërshtatshme ta fikësh manualisht «mjedrën», të presësh disa sekonda dhe vetëm pastaj të shkëpusësh ekranin braille. Arsyeja është se gjatë shkëputjes ai heq furnizimin nga porta në ndarjen e brendshme. Autori planifikon të vendosë në atë ndarje një bateri të vogël tampon dhe, përmes GPIO, t'i sinjalizojë «mjedrës» se ekrani po shkëputet, në mënyrë që ajo të nisë procesin e fikjes. Një UPS në miniaturë.

Imazhi i sistemit

Nëse keni të njëjtin ekran braille dhe dëshironi të bëni të njëjtën gjë me të, autori është i gatshëm t'ju ofrojë një imazh të gatshëm të sistemit (bazuar në Raspbian Stretch). Shkruajini në adresën e treguar më sipër. Nëse numri i të interesuarve do të jetë mjaft i madh, madje mund të ofrohen edhe komplete që përfshijnë gjithçka të nevojshme për këtë modifikim.

Faleminderit

Faleminderit Dave Mielke për redaktimin e tekstit.

Faleminderit Simon Kainz për fotot ilustruese.

Faleminderit kolegëve nga Universiteti Teknik i Grazit për njohjen e shpejtë të autorit me botën e Raspberry Pi.

P.S. Tweeti i parĂ« i autorit mbi kĂ«tĂ« temĂ« (nuk hapet — shĂ«nim i pĂ«rkthyesit) u publikua vetĂ«m pesĂ« ditĂ« para botimit tĂ« versionit origjinal tĂ« kĂ«tij artikulli, dhe mund tĂ« thuhet se, me pĂ«rjashtim tĂ« problemeve me zĂ«rin, detyra e vendosur Ă«shtĂ« zgjidhur pothuajse plotĂ«sisht. MeqĂ« ra fjala, versionin pĂ«rfundimtar tĂ« tekstit autori e redaktoi nga «ekrani braille i pavarur» qĂ« kishte ndĂ«rtuar vetĂ«, duke e lidhur atĂ« me SSH me kompjuterin e shtĂ«pisĂ«.

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster