Raspberry Pi Zero mukati meHandy Tech Active Star 40 braille display

Raspberry Pi Zero mukati meHandy Tech Active Star 40 braille display

Munyori akaisa Raspberry Pi Zero, muridzo weBluetooth, uye tambo mukati mebraille yake itsva yeHandy Tech Active Star 40. Chiteshi che USB chakavakirwa chinopa simba. Mhedzisiro yacho yaive yekuzvimirira-yega yekutarisisa komputa paARM ine Linux inoshanda sisitimu, yakashongedzerwa nekhibhodi uye yeBraille kuratidza. Unogona kuchaja/kuisimbisa ne USB, incl. kubva kumagetsi emagetsi kana solar charger. Nokudaro, inogona kuita pasina simba kwemaawa akawanda, asi kwemazuva akawanda.

Raspberry Pi Zero mukati meHandy Tech Active Star 40 braille display

Dimensional musiyano we braille displays

Chokutanga pane zvose, dzinosiyana pakureba kwemutsara. Midziyo ine 60 kana kupfuura yakanakira kushanda nedesktop komputa, nepo michina ine makumi mana inokwana kutakura nelaptop. Ikozvino kune mabraille displays akabatana nemafoni uye mahwendefa, ane mutsara wakareba wemavara gumi nemana kana gumi nemasere.

Kare, mabhii ebraille aive akakura. Iyo laptop ine zvigaro makumi mana, semuenzaniso, yaive nehukuru uye huremu hwe40-inch laptop. Iye zvino, nenhamba yakafanana yevanozivana, iwo madiki akakwana zvekuti iwe unogona kuisa chiratidziro pamberi pelaptop, pane iyo laptop pachiratidziro.

Izvi, hongu, zvirinani, asi hazvisati zvanyatsoita kuti ubate zvishandiso zviviri zvakasiyana pamakumbo ako. Paunenge uchishanda padhesiki, hapana zvichemo, asi zvakakosha kuyeuka kuti laptop inonzi laptop neimwe zita, uye kuyedza kupembedza zita rayo, sezvo zvichizoitika kuti iyo miniature 40-character kuratidza haina nyore.

Saka munyori akamirira iyo yakare-yakavimbiswa modhi muHandy Tech Star nhevedzano kuti iburitswe. Kudzoka muna 2002, iyo yapfuura modhi Handy Tech Braille Star 40 yakaburitswa, uko nzvimbo yemuviri inokwana kuisa laptop pamusoro. Uye kana isingakodzeri, pane chinomira chinodzokororwa. Iye zvino iyi modhi yakatsiviwa neActive Star 40, inenge yakafanana, asi nemagetsi akakwidziridzwa.

Raspberry Pi Zero mukati meHandy Tech Active Star 40 braille display

Uye chimiro chinodzokororwa chinoramba chiri:

Raspberry Pi Zero mukati meHandy Tech Active Star 40 braille display

Asi chinhu chinonyanya kukosha pamusoro pechigadzirwa chitsva ndechekuzorora kunenge saizi ye smartphone (ona KDPV). Inovhura kana chikuva chadzoserwa kumashure. Zvakazove zvisingaite kubata smartphone ipapo, asi iwe unofanirwa kushandisa imwe nzvimbo isina chinhu, mukati mayo mune kunyange magetsi.

Chinhu chekutanga chakauya nemunyori ndechekuisa iyo Raspberry Pi ipapo, asi payakatengwa chiratidziro, zvakazoitika kuti chigadziko chakavhara kamuri haina kutsvedza ne "raspberry." Zvino, dai bhodhi raingova 3 mm mutete ...

Asi mumwe wandaishanda naye akandiudza nezve kuburitswa kweRaspberry Pi Zero, iyo yakazoita diki zvekuti maviri acho anogona kukwana mukamuri ... kana zvimwe kunyange matatu. Yakakurumidza kurairwa pamwe chete ne64 GB memori kadhi, Bluetooth, "muridzo" uye Micro USB tambo. Mazuva mashoma gare gare zvose izvi zvakasvika, uye shamwari dzaiona dzakabatsira munyori kugadzira mepu. Zvese zvakabva zvangoshanda sezvazvaifanira.

Chii chakaitirwa izvi

Kuseri kweHandy Tech Active Star 40 kune maviri USB madoko emidziyo yakaita sekiyibhodhi. Iyo diki-saizi keyboard ine magineti gomo inosanganisirwa. Kana iyo kiyibhodhi yakabatana, uye chiratidziro pachacho chinoshanda kuburikidza neBluetooth, komputa inozvionawo seBluetooth keyboard.

Saka, kana iwe ukabatanidza "muridzo" yeBluetooth kuRaspberry Pi Zero yakaiswa mukamuri ye smartphone, inokwanisa kutaurirana nebraille kuratidza kuburikidza neBluetooth uchishandisa Bluetooth. BRLTTY, uye kana iwe ukabatanidzawo keyboard kune chiratidziro, "raspberry" ichashanda nayo zvakare.

Asi handizvo zvoga. Iyo "raspberry" pachayo, zvakare, inokwanisa kuwana iyo Internet kuburikidza neBluetooth PAN kubva kune chero mudziyo unoitsigira. Munyori akagadzira yake smartphone nemakomputa kumba uye kubasa zvinoenderana, asi mune ramangwana anoronga kugadzirisa imwe "raspberry" kune iyi - yekare, kwete Zero, yakabatana neEthernet uye imwe "muridzo" yeBluetooth.

BlueZ 5 uye PAN

PAN kugadzirisa nzira uchishandisa bluez zvakava pachena. Munyori akawana bt-pan Python script (ona pazasi), iyo inokutendera kuti ugadzirise PAN pasina GUI.

Inogona kushandiswa kugadzirisa zvese sevha uye mutengi. Mushure mekugamuchira murairo wakakodzera kuburikidza neD-Bhazi paunenge uchishanda mune mutengi modhi, inogadzira imwe network network bnep0 pakarepo mushure mekutanga kubatana neserver. Kazhinji, DHCP inoshandiswa kugovera IP kero kune iyi interface. Mune server mode, BlueZ inoda zita rebhiriji mudziyo kwarinogona kuwedzera mudziyo wenhapwa kubatanidza mutengi wega wega. Kugadzirisa kero yemudziyo webhiriji uye kushandisa DHCP server pamwe neIP masquerading pabhiriji kazhinji ndizvo zvinongodiwa.

Bluetooth PAN Access Point ine Systemd

Kugadzirisa bhiriji, munyori akashandisa systemd-networkd:

Faira /etc/systemd/network/pan.netdev

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

Faira /etc/systemd/network/pan.network

[Match]
Name=pan

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

Iye zvino tinoda kumanikidza BlueZ kugadzirisa iyo NAP mbiri. Zvakazoitika kuti izvi hazvigone kuitwa neyakajairwa BlueZ 5.36 zvishandiso. Kana munyori akakanganisa, mururamise: mlang (anogona kufambisa nzeve dzake) bofu (dzimwe nguva kuwana uye quantum) guru

Asi akawana blog post ΠΈ Python script kuita mafoni anodiwa kuD-Bus.

Kuti zvive nyore, munyori akashandisa iyo Systemd sevhisi kumhanyisa script uye kutarisa kana kutsamira kwakagadziriswa.

Faira /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

Faira /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

Yechipiri faira yaisazodiwa kana Debian aine IPMasquerade= rutsigiro (ona pazasi). #787480).

Mushure mekuita mirairo systemctl daemon-reload ΠΈ systemctl restart systemd-networkd unogona kutanga Bluetooth PAN nemurairo systemctl kutanga pani

Bluetooth PAN mutengi uchishandisa Systemd

Rutivi rwemutengi zvakare nyore kugadzirisa uchishandisa Systemd.

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

[Match]
Name=bnep*

[Network]
DHCP=yes

Faira /etc/systemd/system/[email inodzivirirwa]

[Unit]
Description=Bluetooth Personal Area Network client

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

Iye zvino, mushure mekurodhazve gadziriso, unogona kubatana kune yakatsanangurwa Bluetooth yekusvika poindi seizvi:

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

Kubatanidza uchishandisa mutsara wekuraira

Ehe, kumisikidzwa kwesevha nevatengi kunofanirwa kuitwa mushure mekuvabatanidza kuburikidza neBluetooth. Pane sevha iwe unofanirwa kumhanya bluetoothctl uye ugoipa iyo mirairo:

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

Mushure mekutanga scan, mirira masekondi mashoma kusvika mudziyo waunoda waonekwa mune rondedzero. Nyora pasi kero yayo uye uishandise nekupa iwo maviri kuraira uye, kana zvichidikanwa, iyo trust command.

Padivi remutengi, iwe unofanirwa kuita chinhu chimwe chete, asi murairo wekuvimba haudiwi. Sevha inoida kuti igamuchire chinongedzo uchishandisa iyo NAP mbiri pasina kusimbiswa nemaoko nemushandisi.

Munyori haana chokwadi chekuti uku ndiko kutevedzana kwakakwana kwemirairo. Zvichida zvese zvinodikanwa kubatanidza mutengi nesevha uye kumhanya murairo wekuvimba pane sevha, asi haasati aedza izvi.

Kugonesa HID Bluetooth Profile

Izvo zvinodikanwa kuti Raspberry ione kiyibhodhi yakabatana neBraille kuratidza newaya, uye inofambiswa nechiratidziro pachayo kuburikidza neBluetooth. Izvi zvinoitwa nenzira imwechete, chete panzvimbo agent on zvinoda kupa murairo mumiririri KeyboardOnly uye bluetoothctl ichawana mudziyo une HID mbiri.

Asi kumisikidza Bluetooth kuburikidza nemutsara wekuraira kwakaoma

Kunyangwe munyori akakwanisa kugadzirisa zvese, anonzwisisa kuti kugadzirisa BlueZ kuburikidza nemutsara wekuraira hakuna kunaka. Pakutanga akafunga kuti vamiririri vaingodiwa chete kuisa maPIN kodhi, asi zvakazoitika, semuenzaniso, kuti kugonesa iyo HID mbiri unofanirwa kunyora "agent KeyboardOnly". Zvinoshamisa kuti kuvhura Bluetooth PAN unofanirwa kukwira kuburikidza nemarepositori uchitsvaga iyo inodiwa script. Anoyeuka kuti mune yapfuura vhezheni yeBlueZ paive neyakagadzirirwa-yakagadzirwa chishandiso cheizvi pand - arikuitei muBlueZ 5? Pakarepo mhinduro itsva yakaonekwa, isingazivikanwi nemunyori, asi yakarara pamusoro?

Kubudirira

Iyo yekumhanyisa data yaive ingangoita 120 kbit / s, izvo zvakakwana zvakakwana. Iyo 1GHz ARM processor inokurumidza kwazvo kune yekuraira mutsara interface. Munyori achiri kuronga kushandisa kunyanya ssh uye emacs pachigadzirwa.

Console mafonti uye skrini yekugadzirisa

Iyo yekusarudzika skrini yekugadzirisa inoshandiswa neiyo furebuffer paRaspberry Pi Zero inoshamisa: fbset inoshuma se656x416 pixels (hapana cheki chakabatana, hongu). Iine console font ye8 Γ— 16, pakanga paine mavara makumi masere nemaviri pamutsetse uye mitsara makumi maviri nematanhatu.

Hazvisi nyore kushanda neBraille ine mavara makumi mana mune iyi modhi. Munyori angadewo kuona mavara eUnicode achiratidzwa mubraille. Sezvineiwo, Linux inotsigira 40 mavara, uye akawanda console fonts ane 512. Uchishandisa console-setup, unogona kushandisa maviri 256-mavara mafonti pamwechete. Munyori akawedzera mitsara inotevera kune /etc/default/console-setup file:

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

Cherechedza: kuita kuti brl-16 Γ— 8.psf font ivepo, unoda kuisa console-braille.

Chii chinotevera?

Iyo Braille inoratidzira ine 3,5 mm jack, asi munyori haazive maadapter ekugamuchira odhiyo chiratidzo kubva kuMini-HDMI. Munyori akanga asingakwanisi kushandisa kadhi rezwi rakavakwa muRaspberry (zvinoshamisa, muturikiri aiva nechokwadi chokuti Zero yakanga isina imwe, asi kune nzira dzekubudisa inzwi uchishandisa PWM kuGPIO). Anoronga kushandisa USB-OTG hub uye kubatanidza yekunze kadhi uye inobuda ruzha kune mutauri akavakirwa mubraille kuratidza. Nechimwe chikonzero, makadhi maviri ekunze haana kushanda; iye zvino ari kutsvaga mudziyo wakafanana pane imwe chipset.

Izvo zvakare zvinonetsa kudzima nemaoko "raspberry", mirira mashoma mashoma uye kudzima braille kuratidza. Uye zvese nekuti kana yakadzimwa, inobvisa simba kubva kune chinongedzo chiri mukamuri. Munyori anoronga kuisa bhatiri diki mukamuri uye, kuburikidza neGPIO, zivisa Raspberry nezve kudzima kwekuratidzira, kuitira kuti itange kudzima basa rayo. Iyi iUPS mune diki.

Mufananidzo weSystem

Kana iwe uine chiratidziro cheBraille chimwechete uye uchida kuita zvimwe chete nacho, munyori akagadzirira kupa mufananidzo wakagadzirwa weiyo system (yakavakirwa paRaspbian Stretch). Nyora kwaari nezveizvi pakero yaratidzwa pamusoro apa. Kana paine vanhu vakakwana vanofarira, zvinotokwanisika kuburitsa kits dzinosanganisira zvese zvinodiwa pakushandurwa kwakadaro.

Kutenda

Kutenda kuna Dave Mielke nekuongorora.

Kutenda kuna Simon Kainz nemifananidzo yemifananidzo.

Ndinotenda kune vandinoshanda navo kuGraz Technical University nekukurumidza kusuma munyori kunyika yeRaspberry Pi.

PS Kutanga tweet munyori wenyaya iyi (haavhure - muturikiri) akaitwa mazuva mashanu chete kusati kwaburitswa kwekutanga kwechinyorwa ichi, uye zvinogona kutariswa kuti, kunze kwematambudziko nekurira, basa racho rakagadziriswa. Nenzira, munyori akagadzirisa shanduro yekupedzisira yezvinyorwa kubva ku "self-self-self-self Braille display" yaakaita, achiibatanidza neSSH kune kombiyuta yake yekumba.

Source: www.habr.com

Voeg