Raspberry Pi Zero n'ime ihe ngosi Handy Tech Active Star 40 braille

Raspberry Pi Zero n'ime ihe ngosi Handy Tech Active Star 40 braille

Etinyere m Raspberry Pi Zero, whistle Bluetooth na eriri n'ime ihe ngosi braille ọhụrụ m Handy Tech Active Star 40. Ọdụ ụgbọ USB arụnyere na-enye ike. Ihe si na ya pụta bụ kọmpụta enweghị nleba anya zuru oke na ARM nwere sistemụ arụmọrụ Linux, nke nwere keyboard na ihe ngosi Braille. Ị nwere ike ịgbaji / gbanye ya site na USB, gụnyere. site na ụlọ akụ ọkụ ma ọ bụ chaja anyanwụ. Ya mere, ọ nwere ike ime na-enweghị mains ọ bụghị ruo ọtụtụ awa, ma ruo ọtụtụ ụbọchị.

Raspberry Pi Zero n'ime ihe ngosi Handy Tech Active Star 40 braille

Akụkụ dị iche iche nke ihe ngosi braille

Nke mbụ, ha dị iche na ogologo ahịrị. Ngwaọrụ nwere 60 ma ọ bụ karịa maara dị mma mgbe ị na-arụ ọrụ na kọmputa desktọọpụ, 40 dị mma maka iburu ya na laptọọpụ. Ugbu a enwekwara ihe ngosi braille ejikọrọ na smartphones na mbadamba, nwere ahịrị ogologo mkpụrụedemede 14 ma ọ bụ 18.

N'oge gara aga, ihe ngosi braille buru oke ibu. Dị ka ihe atụ, àgwà 40 ahụ nwere otu akụkụ na ịdị arọ ya dị ka laptọọpụ inch 13. Ugbu a, n'otu ọnụ ọgụgụ ahụ nke maara nke ọma, ha dị ntakịrị nke mere na ị nwere ike tinye ihe ngosi n'ihu laptọọpụ, ọ bụghị laptọọpụ na ngosi.

Nke a ka mma n'ezie, mana ọ kaghị mma ijide ngwaọrụ abụọ dị iche iche n'apata gị. Mgbe ị na-arụ ọrụ na tebụl, enweghị mkpesa, mana ọ bara uru icheta na a na-akpọ laptọọpụ laptọọpụ n'ụzọ ọzọ, ma na-agbalị ịkọwa aha ya n'ụzọ ziri ezi, dịka ọ na-apụta na obere ihe ngosi 40-dị obere karịa.

Ya mere, onye edemede ahụ chere maka mwepụta nke ihe nlereanya ọhụrụ a na-ekwe nkwa ogologo oge na usoro Handy Tech Star. Laa azụ na 2002, ewepụtara ihe nlereanya gara aga Handy Tech Braille Star 40, ebe akụkụ ahụ zuru ezu iji tinye laptọọpụ n'elu. Ma ọ bụrụ na ọ dabara, a na-enye nkwụghachi azụ. Ugbu a, Active Star 40, dochie ihe nlereanya a, nke bụ otu ihe ahụ, ma jiri ngwá electronic kwalitere.

Raspberry Pi Zero n'ime ihe ngosi Handy Tech Active Star 40 braille

Na retractable guzoro nọgidere:

Raspberry Pi Zero n'ime ihe ngosi Handy Tech Active Star 40 braille

Mana ihe kachasị adaba maka ihe ọhụrụ bụ ezumike gbasara nha ekwentị (lee KDPV). Ọ na-emepe mgbe ikpo okwu na-atụgharị azụ. Ọ tụgharịrị bụrụ ihe na-adịghị mma idobe smartphone n'ebe ahụ, mana mmadụ ga-eji otu akụkụ ahụ efu, n'ime nke a na-enye ọbụna ọkụ ọkụ.

Ihe mbụ onye edemede ahụ bịara bụ itinye Raspberry Pi n'ebe ahụ, ma mgbe azụrụ ihe ngosi ahụ, ọ bịara bụrụ na nkwụnye nke mechiri ọnụ ụlọ ahụ ejighị "utu". Ugbu a, ọ bụrụ na osisi ahụ dị naanị 3 mm dị gịrịgịrị ...

Mana otu onye ọrụ ibe kwuru banyere ntọhapụ nke Raspberry Pi Zero, nke mechara bụrụ obere nke na abụọ n'ime ha ga-adaba n'ọnụ mmiri ... ma ọ bụ ikekwe ọbụna atọ. Enyere ya iwu ozugbo yana kaadị ebe nchekwa 64 GB, Bluetooth, whistle na eriri USB Micro. Ụbọchị ole na ole ka e mesịrị, ihe a nile rutere, ndị enyi na-ahụ anya nyeere onye edemede ahụ aka ịkwadebe maapụ ahụ. Ihe niile mere ozugbo dị ka o kwesịrị.

Kedu ihe e mere maka nke a

N'azụ Handy Tech Active Star 40 bụ ọdụ ụgbọ mmiri USB abụọ maka ngwaọrụ dị ka ahụigodo. Ahụigodo kọmpat nwere mgbakwunye ndọta gụnyere. Mgbe ejikọrọ ahụigodo, na ihe ngosi n'onwe ya na-arụ ọrụ site na Bluetooth, kọmputa na-amatakwa ya dị ka ahụigodo Bluetooth.

Ya mere, ọ bụrụ na ejikọrọ eriri Bluetooth na Raspberry Pi Zero nke etinyere n'ime ụlọ smartphone, ọ ga-enwe ike iji ihe ngosi braille kparịta ụka site na iji Bluetooth. BRLTTY, ma ọ bụrụ na ijikọ kiiboodu na ihe ngosi, "utu" ga-ejikwa ya rụọ ọrụ.

Ma ọ bụghị naanị nke ahụ. Raspberry n'onwe ya, n'aka nke ya, nwere ike ịnweta ịntanetị site na PAN Bluetooth site na ngwaọrụ ọ bụla na-akwado ya. Onye edemede ahụ setịpụrụ smartphone na kọmputa ya n'ụlọ na ọrụ ya, ma n'ọdịnihu ọ na-ezube imeghari "utu" ọzọ maka nke a - kpochapụ, ọ bụghị Zero, jikọọ na Ethernet na Bluetooth ọzọ "ụfụ".

BlueZ5 na PAN

Usoro nhazi PAN na-eji bluez tụgharịrị bụrụ ihe a na-adịghị ahụ anya. Onye edemede ahụ chọtara script Pyhton bt-pan (lee n'okpuru) nke na-enye gị ohere ịhazi PAN na-enweghị GUI.

Na ya, ị nwere ike hazie ma ihe nkesa na onye ahịa. N'ịbụ onye natara iwu kwesịrị ekwesị site na D-Bus mgbe ọ na-arụ ọrụ na ọnọdụ ndị ahịa, ọ na-emepụta ngwaọrụ netwọk ọhụrụ bnep0 ozugbo guzobe njikọ na ihe nkesa. Dịka, a na-eji DHCP ekenye adreesị IP na interface a. Na ọnọdụ nkesa, BlueZ chọrọ aha ngwaọrụ akwa mmiri, nke ọ nwere ike ịgbakwunye ngwaọrụ ohu iji jikọọ ndị ahịa ọ bụla. Ịhazi adreesị maka ngwaọrụ akwa na ịgba ọsọ nkesa DHCP gbakwunyere IP masquerading na akwa mmiri na-abụkarị ihe a chọrọ.

Ebe ịnweta PAN Bluetooth nwere sistemu

Onye ode akwụkwọ jiri systemd-networkd hazie akwa mmiri:

FILE /etc/systemd/network/pan.netdev

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

FILE /etc/systemd/network/pan.network

[Match]
Name=pan

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

Ugbu a, anyị kwesịrị ịnweta BlueZ iji hazie profaịlụ NAP. Ọ tụgharịrị na ụlọ ọrụ BlueZ 5.36 enweghị ike ime nke a. Ọ bụrụ na onye edemede ahụ ezighị ezi, dozie ya: mlang (maara ka ọ na-emegharị ntị ya) kpuru ìsì (mgbe ụfọdụ ịnweta na quantum) guru.

Ma ọ chọtara blog post и edemede Python ime oku D-Bus dị mkpa.

Maka ịdị mma, onye odee jiri ọrụ Systemd mee edemede ahụ wee lelee ma ekpebiela ịdabere na ya.

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

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

Faịlụ nke abụọ agaghị achọ ma ọ bụrụ na Debian nwere nkwado maka IPMasquerade = (lee n'okpuru). #787480).

Mgbe emechara iwu systemctl daemon-reload и systemctl malitegharịa sistemu-netwọk ị nwere ike iji iwu ahụ malite PAN Bluetooth systemctl malite pan

Onye ahịa Bluetooth PAN na-eji Systemd

Akụkụ ndị ahịa dịkwa mfe ịhazi site na iji Systemd.

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

[Match]
Name=bnep*

[Network]
DHCP=yes

FILE /etc/systemd/system/[email protected]

[Unit]
Description=Bluetooth Personal Area Network client

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

Ugbu a, mgbe ị bugharịrị nhazi ahụ, ị ​​nwere ike jikọọ na ebe ịnweta Bluetooth akọwapụtara dị ka nke a:

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

Iji akara iwu na-ejikọta ọnụ

N'ezie, nhazi nke ihe nkesa na ndị ahịa ga-emerịrị mgbe ijikọta ha site na Bluetooth. Na sava ahụ, ịkwesịrị ịgba ọsọ bluetoothctl wee nye ya iwu:

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

Mgbe ịmalite nyocha ahụ, chere sekọnd ole na ole ruo mgbe ngwaọrụ ị chọrọ pụtara na listi ahụ. Dee adreesị ya wee jiri iwu ụzọ abụọ wee jiri ya, ọ bụrụ na ọ dị mkpa, jiri iwu ntụkwasị obi.

Site n'akụkụ ndị ahịa, ịkwesịrị ịme otu ihe ahụ, mana iwu ntụkwasị obi agaghị adị mkpa n'ezie. Ihe nkesa ahụ chọrọ ya ka ọ nabata njikọ profaịlụ NAP na-enweghị nkwenye nke onye ọrụ.

Odee ejighị n'aka na nke a bụ usoro iwu kachasị mma. Ikekwe ihe niile ọ na-ewe bụ ijikọ onye ahịa na ihe nkesa na-arụ ọrụ ntụkwasị obi na sava ahụ, mana ọ nwalebeghị nke ahụ.

Na-eme profaịlụ HID Bluetooth

Ọ dị mkpa ka "utu" ghọta kiiboodu ejikọrọ na ihe ngosi Braille site na waya, wee bufee ya site na Bluetooth n'onwe ya. Mee otu ihe ahụ, mana kama ime ya onye nnọchi anya na ga-enye iwu Ahụigodo naanị na bluetoothctl ga-ahụ ngwaọrụ nwere profaịlụ HID.

Mana ịhazi Bluetooth site na ahịrị iwu dị aghụghọ.

Ọ bụ ezie na onye edemede ahụ jisiri ike hazie ihe niile, ọ ghọtara na ịhazi BlueZ site na akara iwu adịghị mma. Na mbụ, o chere na a chọrọ ndị ọrụ naanị maka itinye koodu PIN, mana ọ tụgharịrị, dịka ọmụmaatụ, na iji mee ka profaịlụ HID nwee ike, ịkwesịrị pịnye “agent KeyboardOnly”. N'ụzọ dị ịtụnanya, ịmalite PAN Bluetooth, ịkwesịrị ịrịgo site na ebe nchekwa na-achọ edemede ziri ezi. Ọ na-echeta na na mbụ version nke BlueZ e nwere njikere mere ngwá ọrụ maka nke a. pand - kedu ebe ọ na-eme na BlueZ 5? Na mberede, ihe ngwọta ọhụrụ pụtara, nke onye edemede amaghị, ma dina n'elu?

Ubu oke

Ọnụego mbufe data bụ ihe dịka 120 kbps, nke zuru oke. Ihe nhazi 1GHz ARM dị ngwa ngwa maka interface ahịrị iwu. Onye ode akwụkwọ ka na-eme atụmatụ iji tumadi ssh na emacs na ngwaọrụ ahụ.

Mkpụrụ akwụkwọ njikwa na mkpebi ihuenyo

Mkpebi ihuenyo ndabara nke framebuffer na-eji na Raspberry Pi Zero dị njọ: fbset na-akọ ya dị ka pikselụ 656 × 416 (enweghị nyocha ejikọrọ, n'ezie). Site na font njikwa nke 8x16, anyị nwetara mkpụrụedemede 82 n'otu ahịrị yana ahịrị 26.

Ịrụ ọrụ na ihe ngosi braille dị 40 n'ụdị a adịghị mma. Ọzọkwa, onye odee ga-achọ ka e gosipụta mkpụrụedemede Unicode na Braille. Ọ dabara nke ọma, Linux na-akwado mkpụrụedemede 512, na ọtụtụ mkpụrụedemede njikwa nwere mkpụrụedemede 256. Site na nhazi njikwa, ị nwere ike iji mkpụrụedemede mkpụrụedemede 256 abụọ ọnụ. Onye ode akwụkwọ gbakwunyere ahịrị ndị a na faịlụ /etc/default/console-setup:

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

Mara: Iji mee ka font brl-16x8.psf dị, ịkwesịrị ịwụnye console-braille.

Kedu ihe ọzọ?

Ngosipụta braille nwere jakị 3,5 mm, mana odee amaghị ihe nkwụnye maka ị na-ebuli ọdịyo sitere na Mini-HDMI. Onye ode akwụkwọ enweghị ike iji kaadị ụda arụnyere n'ime "raspberry" (ọ dị ịtụnanya, onye ntụgharị ahụ ji n'aka na Zero enweghị otu, mana enwere ụzọ isi wepụta ụda site na PWM na GPIO). Ọ na-ezube iji eriri USB-OTG wee jikọọ kaadị mpụga na ụda mmepụta na ọkà okwu wuru n'ime ihe ngosi Braille. Maka ihe ụfọdụ, kaadị mpụga abụọ adịghị arụ ọrụ, ugbu a ọ na-achọ ngwaọrụ yiri ya na chipset dị iche.

Ọ dịkwaghị mfe iji aka gbanyụọ "raspberry", chere sekọnd ole na ole wee gbanyụọ ngosi braille. Na ihe niile n'ihi na mgbe agbanyụrụ ya, ọ na-ewepụ ike site na njikọ dị na ngalaba. Onye ode akwụkwọ na-ezube itinye obere batrị nchekwa n'ime ụlọ yana, site na GPIO, gwa “raspberry” maka ịgbanyụ ihe ngosi ka ọ malite imechi. Nke a bụ UPS na miniature.

Onyonyo sistemu

Ọ bụrụ na ị nwere otu ihe ngosi braille ma ọ ga-amasị gị ime otu ihe ahụ na ya, onye edemede nwere obi ụtọ ịnye ihe oyiyi sistemụ dị njikere (dabere na Raspbian Stretch). Dee banyere ya n'adres dị n'elu. Ọ bụrụ na enwere ndị mmadụ zuru oke nwere mmasị, ọ ga-ekwe omume ịhapụ ngwa nke gụnyere ihe niile dị mkpa maka ịmegharị dị otú ahụ.

Nkwenye

Daalụ Dave Mielke maka ịgụgharị ederede.

Daalụ Simon Kainz maka ihe atụ foto.

Ekele dịrị ndị ọrụ ibe na Graz University of Technology maka iwebata onye edemede ngwa ngwa na ụwa Raspberry Pi.

PS Tweet mbụ Onye edemede na isiokwu a (anaghị emeghe - onye ntụgharị) mere nanị ụbọchị ise tupu e bipụta akwụkwọ mbụ nke isiokwu a, anyị nwere ike iche na, ewezuga nsogbu na ụda, a na-edozi ọrụ ahụ nke ọma. Site n'ụzọ, onye edemede deziri mbipụta ikpeazụ nke ederede site na "ngosipụta Braille zuru oke" nke o mere, na-ejikọta ya na SSH na kọmputa ụlọ ya.

isi: www.habr.com

Tinye a comment