Raspberry Pi Zero í Handy Tech Active Star 40 blindraletursskjá

Raspberry Pi Zero í Handy Tech Active Star 40 blindraletursskjá

Höfundur setti Raspberry Pi Zero, Bluetooth-flautu og snúru inn í nýja Handy Tech Active Star 40 blindraletursskjáinn sinn. Innbyggt USB-tengi veitir afl. Útkoman var sjálfbjarga skjálaus tölva á ARM með Linux stýrikerfi, búin lyklaborði og blindraletursskjá. Þú getur hlaðið/kveikt í gegnum USB, þ.m.t. frá rafmagnsbanka eða sólarhleðslutæki. Þess vegna getur það verið án rafmagns í nokkrar klukkustundir, en í nokkra daga.

Raspberry Pi Zero í Handy Tech Active Star 40 blindraletursskjá

Málaðgreining blindraletursskjáa

Í fyrsta lagi eru þeir mismunandi í línulengd. Tæki með 60 eða meira rúmtak eru góð til að vinna með borðtölvu, en tæki með 40 rúmtak eru þægileg til að bera með fartölvu. Nú eru blindraletursskjáir tengdir snjallsímum og spjaldtölvum, með línulengd upp á 14 eða 18 stafi.

Áður fyrr voru blindraletursskjáir nokkuð stórir. 40 sæta fartölvan hafði til dæmis stærð og þyngd eins og 13 tommu fartölva. Núna, með jafnmörgum kunningjum, eru þeir nógu smækkaðir til að hægt sé að setja skjáinn fyrir framan fartölvuna, frekar en fartölvuna á skjánum.

Þetta er auðvitað betra, en það er samt ekki mjög þægilegt að halda tveimur aðskildum tækjum í kjöltu sér. Þegar þú vinnur við skrifborð eru engar kvartanir, en það er þess virði að muna að fartölva er kölluð fartölva öðru nafni og reyna að réttlæta nafnið, þar sem það kemur í ljós að lítill 40 stafa skjárinn er enn minna þægilegur.

Þannig að höfundurinn beið eftir að hin löngu lofaða nýja gerð í Handy Tech Star seríunni kæmi út. Árið 2002 kom fyrri gerð Handy Tech Braille Star 40 út, þar sem líkamsflatarmálið er nóg til að setja fartölvu ofan á. Og ef það passar ekki, þá er útdraganleg standur. Nú hefur þessari gerð verið skipt út fyrir Active Star 40, sem er nánast það sama, en með uppfærðri rafeindatækni.

Raspberry Pi Zero í Handy Tech Active Star 40 blindraletursskjá

Og útdraganlegi standurinn er eftir:

Raspberry Pi Zero í Handy Tech Active Star 40 blindraletursskjá

En það þægilegasta við nýju vöruna er holur sem er um það bil á stærð við snjallsíma (sjá KDPV). Hann opnast þegar pallurinn er færður til baka. Það reyndist óþægilegt að halda snjallsíma þar, en þú þarft einhvern veginn að nota tóma hólfið, inn í því er jafnvel rafmagnsinnstunga.

Það fyrsta sem höfundinum datt í hug var að setja Raspberry Pi þar, en þegar skjárinn var keyptur kom í ljós að standurinn sem hylur hólfið rann ekki inn með „hindberjum“. Nú, ef borðið væri aðeins 3 mm þynnra...

En samstarfsmaður sagði mér frá útgáfu Raspberry Pi Zero, sem reyndist vera svo smækkuð að tveir þeirra gátu passað í hólfið... eða jafnvel þrír. Það var strax pantað ásamt 64 GB minniskorti, Bluetooth, „flautu“ og Micro USB snúru. Nokkrum dögum síðar kom allt þetta og sjáandi vinir hjálpuðu höfundinum að útbúa kort. Allt virkaði strax eins og það átti að gera.

Hvað var gert fyrir þetta

Á bakhlið Handy Tech Active Star 40 eru tvö USB tengi fyrir tæki eins og lyklaborð. Lítið lyklaborð með segulfestingu fylgir. Þegar lyklaborðið er tengt og skjárinn sjálfur virkar í gegnum Bluetooth, þekkir tölvan það að auki sem Bluetooth lyklaborð.

Þannig að ef þú tengir Bluetooth „flautu“ við Raspberry Pi Zero sem er staðsettur í snjallsímahólfinu, mun það geta átt samskipti við blindraletursskjáinn í gegnum Bluetooth með því að nota BRLTTY, og ef þú tengir líka lyklaborð við skjáinn mun „hindberið“ líka virka með því.

En það er ekki allt. „hindberið“ sjálft getur aftur á móti fengið aðgang að internetinu í gegnum Bluetooth PAN frá hvaða tæki sem er sem styður það. Höfundurinn hefur stillt snjallsímann sinn og tölvur heima og í vinnunni í samræmi við það, en í framtíðinni ætlar hann að laga annað „hindber“ fyrir þetta - klassískt, ekki Zero, tengt við Ethernet og annað Bluetooth „flauta“.

BlueZ 5 og PAN

PAN stillingaraðferð með því að nota blár reyndist óljóst. Höfundur fann bt-pan Python handritið (sjá hér að neðan), sem gerir þér kleift að stilla PAN án GUI.

Það er hægt að nota til að stilla bæði þjóninn og biðlarann. Eftir að hafa fengið viðeigandi skipun í gegnum D-Bus þegar unnið er í biðlaraham, býr það til nýtt nettæki bnep0 strax eftir að tenging er við netþjóninn. Venjulega er DHCP notað til að úthluta IP tölu við þetta viðmót. Í miðlaraham krefst BlueZ nafns á brúartæki sem það getur bætt þrælbúnaði við til að tengja hvern viðskiptavin. Að stilla heimilisfang fyrir brúartækið og keyra DHCP netþjón ásamt IP grímugerð á brúnni er venjulega allt sem þarf.

Bluetooth PAN aðgangsstaður með Systemd

Til að stilla brúna notaði höfundurinn systemd-networkd:

Skrá /etc/systemd/network/pan.netdev

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

Skrá /etc/systemd/network/pan.network

[Match]
Name=pan

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

Nú þurfum við að þvinga BlueZ til að stilla NAP prófílinn. Það kom í ljós að þetta er ekki hægt að gera með venjulegu BlueZ 5.36 tólunum. Ef höfundur hefur rangt fyrir sér skaltu leiðrétta hann: mlang (getur hreyft eyrun) blindur (stundum aðgangur og skammtafræði) sérfræðingur

En hann fann bloggfærsla и Python handrit til að hringja nauðsynleg símtöl í D-Bus.

Til hægðarauka notaði höfundur Systemd þjónustuna til að keyra handritið og athuga hvort ósjálfstæði séu leyst.

Skrá /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

Skrá /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

Seinni skráin væri ekki þörf ef Debian væri með IPMasquerade= stuðning (sjá hér að neðan). # 787480).

Eftir að hafa framkvæmt skipanirnar endurskipulagning kerfisins и systemctl endurræsa systemd-networkd þú getur ræst Bluetooth PAN með skipuninni systemctl start pan

Bluetooth PAN viðskiptavinur sem notar Systemd

Það er líka auðvelt að stilla biðlarahliðina með Systemd.

Skrá /etc/systemd/network/pan-client.network

[Match]
Name=bnep*

[Network]
DHCP=yes

Skrá /etc/systemd/system/[netvarið]

[Unit]
Description=Bluetooth Personal Area Network client

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

Nú, eftir að stillingarnar hafa verið endurhlaðnar, geturðu tengst tilgreindum Bluetooth aðgangsstað á þennan hátt:

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

Pörun með því að nota skipanalínuna

Auðvitað verður að stilla netþjóninn og viðskiptavinina eftir að hafa parað þá í gegnum Bluetooth. Á þjóninum þarftu að keyra bluetoothctl og gefa honum skipanirnar:

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

Eftir að skönnun hefur verið hafin skaltu bíða í nokkrar sekúndur þar til tækið sem þú þarft birtist á listanum. Skrifaðu niður heimilisfang þess og notaðu það með því að gefa út paraskipunina og, ef nauðsyn krefur, traustskipunina.

Hjá viðskiptavininum þarftu að gera það sama, en traustskipunin er örugglega ekki þörf. Miðlarinn þarf hann til að samþykkja tengingu með NAP prófílnum án handvirkrar staðfestingar notanda.

Höfundur er ekki viss um að þetta sé besta röð skipana. Kannski þarf ekki annað en að para biðlarann ​​við þjóninn og keyra trust skipunina á þjóninum, en hann hefur ekki prófað þetta ennþá.

Virkjar HID Bluetooth prófíl

Nauðsynlegt er að Raspberry þekki lyklaborð sem er tengt við blindraletursskjáinn með vír og sent frá skjánum sjálfum í gegnum Bluetooth. Þetta er gert á sama hátt, aðeins í staðinn umboðsmaður á þarf að gefa skipun umboðsmaður LyklaborðAðeins og bluetoothctl mun finna tæki með HID prófíl.

En að setja upp Bluetooth í gegnum skipanalínuna er svolítið flókið

Þó höfundinum hafi tekist að stilla allt, skilur hann að stilla BlueZ í gegnum skipanalínuna er óþægilegt. Í fyrstu hélt hann að umboðsmenn væru aðeins nauðsynlegir til að slá inn PIN-númer, en það kom til dæmis í ljós að til að virkja HID prófílinn þarftu að slá inn „agent KeyboardOnly“. Það kemur á óvart að til að ræsa Bluetooth PAN þarftu að klifra í gegnum geymslur í leit að nauðsynlegu handriti. Hann minnist þess að í fyrri útgáfu BlueZ hafi verið tilbúið tól fyrir þetta pand - hvar er hann að gera í BlueZ 5? Skyndilega birtist ný lausn, sem höfundur þekkir ekki, en lá á yfirborðinu?

Framleiðni

Gagnaflutningshraðinn var um það bil 120 kbit/s, sem er alveg nóg. 1GHz ARM örgjörvinn er mjög hraður fyrir skipanalínuviðmót. Höfundur ætlar samt að nota aðallega ssh og emacs á tækinu.

Console leturgerðir og skjáupplausn

Sjálfgefin skjáupplausn sem framebufferinn notar á Raspberry Pi Zero er frekar undarleg: fbset segir að það sé 656x416 pixlar (enginn skjár tengdur, auðvitað). Með stjórnborðsleturgerðinni 8×16 voru 82 stafir í hverri línu og 26 línur.

Það er óþægilegt að vinna með 40 stafa blindraletursskjá í þessari stillingu. Höfundur vill líka sjá Unicode stafi birta á blindraletri. Sem betur fer styður Linux 512 stafi og flest leikja leturgerðir eru með 256. Með því að nota stjórnborðsuppsetningu geturðu notað tvö 256 stafa leturgerðir saman. Höfundur bætti eftirfarandi línum við /etc/default/console-setup skrána:

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

Athugið: til að gera brl-16×8.psf leturgerðina aðgengilega þarftu að setja upp console-blindraletur.

Hvað er næst?

Blindraletursskjárinn er með 3,5 mm tengi en höfundi er ekki kunnugt um millistykki til að taka á móti hljóðmerki frá Mini-HDMI. Höfundur gat ekki notað hljóðkortið sem var innbyggt í Raspberry (undarlega var þýðandinn viss um að Zero væri ekki með það, en það eru leiðir til að senda hljóð með PWM til GPIO). Hann ætlar að nota USB-OTG miðstöð og tengja utanaðkomandi kort og gefa út hljóð í hátalarann ​​sem er innbyggður í blindraletursskjánum. Einhverra hluta vegna virkuðu tvö ytri kort ekki; nú er hann að leita að svipuðu tæki á öðru flís.

Það er líka óþægilegt að slökkva handvirkt á „hindberjum“, bíða í nokkrar sekúndur og slökkva á blindraletursskjánum. Og allt vegna þess að þegar slökkt er á honum, fjarlægir það rafmagn frá tenginu í hólfinu. Höfundur ætlar að setja litla biðminni rafhlöðu í hólfið og í gegnum GPIO upplýsa Raspberry um að skjárinn slekkur á sér, svo hann geti byrjað að slökkva á vinnu sinni. Þetta er UPS í smámynd.

Kerfismynd

Ef þú ert með sama blindraletursskjá og vilt gera það sama við hann, þá er höfundur tilbúinn að gefa tilbúna mynd af kerfinu (byggt á Raspbian Stretch). Skrifaðu honum um þetta á heimilisfanginu sem tilgreint er hér að ofan. Ef nógu margir hafa áhuga er jafnvel hægt að gefa út pökk sem innihalda allt sem þarf til slíkrar breytingar.

Viðurkenningar

Takk Dave Mielke fyrir prófarkalestur.

Þökk sé Simon Kainz fyrir myndskreytingarnar.

Þökk sé samstarfsfólki mínu við tækniháskólann í Graz fyrir að kynna höfundinn fljótt fyrir heimi Raspberry Pi.

PS Fyrsta tweetið höfundur um þetta efni (opnast ekki - þýðandi) var gerður aðeins fimm dögum fyrir birtingu frumrits þessarar greinar og má telja að, að undanskildum vandamálum með hljóð, hafi verkefnið verið nánast leyst. Við the vegur, höfundur breytti lokaútgáfu textans af „sjálfbjarga blindraletursskjá“ sem hann bjó til og tengdi hann í gegnum SSH við heimatölvuna sína.

Heimild: www.habr.com

Bæta við athugasemd