Raspberry Pi Zero y tu mewn i arddangosfa braille Handy Tech Active Star 40

Raspberry Pi Zero y tu mewn i arddangosfa braille Handy Tech Active Star 40

Gosododd yr awdur Raspberry Pi Zero, chwiban Bluetooth, a chebl y tu mewn i'w arddangosfa braille newydd Handy Tech Active Star 40. Mae porth USB adeiledig yn darparu pŵer. Y canlyniad oedd cyfrifiadur hunangynhaliol heb fonitor ar ARM gyda system weithredu Linux, gyda bysellfwrdd ac arddangosfa Braille. Gallwch ei wefru / ei bweru trwy USB, gan gynnwys. o fanc pŵer neu wefrydd solar. Felly, gall wneud heb bŵer am sawl awr, ond am sawl diwrnod.

Raspberry Pi Zero y tu mewn i arddangosfa braille Handy Tech Active Star 40

Gwahaniaethu dimensiwn o arddangosiadau braille

Yn gyntaf oll, maent yn wahanol o ran hyd llinell. Mae dyfeisiau â chynhwysedd o 60 neu fwy yn dda ar gyfer gweithio gyda chyfrifiadur bwrdd gwaith, tra bod dyfeisiau â chynhwysedd 40 yn gyfleus i'w cario gyda gliniadur. Nawr mae yna arddangosiadau braille wedi'u cysylltu â ffonau smart a thabledi, gyda hyd llinell o 14 neu 18 nod.

Yn y gorffennol, roedd arddangosiadau braille yn eithaf enfawr. Roedd gan y gliniadur 40 sedd, er enghraifft, faint a phwysau gliniadur 13 modfedd. Nawr, gyda'r un nifer o gydnabod, maen nhw'n ddigon bach fel y gallwch chi roi'r arddangosfa o flaen y gliniadur, yn hytrach na'r gliniadur ar yr arddangosfa.

Mae hyn, wrth gwrs, yn well, ond nid yw'n gyfleus iawn dal dwy ddyfais ar wahân ar eich glin. Pan fyddwch chi'n gweithio wrth ddesg, nid oes unrhyw gwynion, ond mae'n werth cofio bod gliniadur yn cael ei alw'n liniadur wrth enw arall, a cheisio cyfiawnhau ei enw, oherwydd mae'n ymddangos bod yr arddangosfa fach 40-cymeriad hyd yn oed yn llai cyfleus.

Felly arhosodd yr awdur i'r model newydd hir-addawedig yn y gyfres Handy Tech Star gael ei ryddhau. Yn ôl yn 2002, rhyddhawyd y model blaenorol Handy Tech Braille Star 40, lle mae ardal y corff yn ddigon i roi gliniadur ar ei ben. Ac os nad yw'n ffitio, mae stand y gellir ei dynnu'n ôl. Nawr mae'r model hwn wedi'i ddisodli gan y Active Star 40, sydd bron yr un fath, ond gydag electroneg wedi'i uwchraddio.

Raspberry Pi Zero y tu mewn i arddangosfa braille Handy Tech Active Star 40

Ac erys y stand y gellir ei dynnu'n ôl:

Raspberry Pi Zero y tu mewn i arddangosfa braille Handy Tech Active Star 40

Ond y peth mwyaf cyfleus am y cynnyrch newydd yw toriad tua maint ffôn clyfar (gweler KDPV). Mae'n agor pan fydd y platfform yn cael ei symud yn ôl. Roedd yn anghyfleus i ddal ffôn clyfar yno, ond mae angen i chi rywsut ddefnyddio'r adran wag, ac mae hyd yn oed allfa bŵer y tu mewn iddi.

Y peth cyntaf y gwnaeth yr awdur ei wneud oedd gosod y Raspberry Pi yno, ond pan brynwyd yr arddangosfa, daeth i'r amlwg nad oedd y stondin sy'n gorchuddio'r adran yn llithro i mewn gyda'r “mafon”. Nawr, pe bai'r bwrdd ond 3 mm yn deneuach ...

Ond dywedodd cydweithiwr wrthyf am ryddhau'r Raspberry Pi Zero, a drodd allan i fod mor fach fel y gallai dau ohonyn nhw ffitio yn y compartment ... neu efallai dri hyd yn oed. Fe'i archebwyd ar unwaith ynghyd â cherdyn cof 64 GB, Bluetooth, "chwiban" a chebl Micro USB. Ychydig ddyddiau'n ddiweddarach cyrhaeddodd hyn oll, a bu ffrindiau â golwg yn helpu'r awdur i baratoi map. Gweithiodd popeth ar unwaith fel y dylai.

Beth a wnaed am hyn

Ar gefn y Handy Tech Active Star 40 mae dau borthladd USB ar gyfer dyfeisiau fel bysellfyrddau. Mae bysellfwrdd maint bach gyda mownt magnetig wedi'i gynnwys. Pan fydd y bysellfwrdd wedi'i gysylltu, a'r arddangosfa ei hun yn gweithio trwy Bluetooth, mae'r cyfrifiadur hefyd yn ei adnabod fel bysellfwrdd Bluetooth.

Felly, os ydych chi'n cysylltu “chwiban” Bluetooth â Raspberry Pi Zero sydd wedi'i osod yn adran y ffôn clyfar, bydd yn gallu cyfathrebu â'r arddangosfa braille trwy Bluetooth gan ddefnyddio BRLTTY, ac os ydych chi hefyd yn cysylltu bysellfwrdd â'r arddangosfa, bydd y “mafon” yn gweithio gydag ef hefyd.

Ond nid dyna'r cyfan. Gall y “mafon” ei hun, yn ei dro, gael mynediad i'r Rhyngrwyd trwy Bluetooth PAN o unrhyw ddyfais sy'n ei gefnogi. Mae'r awdur wedi ffurfweddu ei ffôn clyfar a'i gyfrifiaduron gartref ac yn y gwaith yn unol â hynny, ond yn y dyfodol mae'n bwriadu addasu “mafon” arall ar gyfer hyn - un glasurol, nid Sero, wedi'i gysylltu ag Ethernet a “chwiban” Bluetooth arall.

BlueZ 5 a PAN

Dull ffurfweddu PAN gan ddefnyddio GlasZ troi allan i fod yn anamlwg. Daeth yr awdur o hyd i'r sgript Python bt-pan (gweler isod), sy'n eich galluogi i ffurfweddu PAN heb GUI.

Gellir ei ddefnyddio i ffurfweddu'r gweinydd a'r cleient. Ar ôl derbyn y gorchymyn priodol trwy D-Bus wrth weithio yn y modd cleient, mae'n creu dyfais rhwydwaith newydd bnep0 yn syth ar ôl sefydlu cysylltiad â'r gweinydd. Yn nodweddiadol, defnyddir DHCP i aseinio cyfeiriad IP i'r rhyngwyneb hwn. Yn y modd gweinydd, mae BlueZ yn gofyn am enw dyfais bont y gall ychwanegu dyfais caethweision ati i gysylltu pob cleient. Fel arfer, y cyfan sydd ei angen yw ffurfweddu cyfeiriad ar gyfer dyfais y bont a rhedeg gweinydd DHCP ynghyd â masgio IP ar y bont.

Pwynt Mynediad PAN Bluetooth gyda Systemd

I ffurfweddu'r bont, defnyddiodd yr awdur systemd-networkd:

Ffeil /etc/systemd/network/pan.netdev

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

Ffeil /etc/systemd/network/pan.network

[Match]
Name=pan

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

Nawr mae angen i ni orfodi BlueZ i ffurfweddu'r proffil NAP. Daeth i'r amlwg na ellir gwneud hyn gyda'r cyfleustodau BlueZ 5.36 safonol. Os yw'r awdur yn anghywir, cywirwch ef: mlang (gall symud ei glustiau) dall (mynediad a chwantwm weithiau) guru

Ond canfu post blog и Sgript Python i wneud y galwadau angenrheidiol i D-Bus.

Er hwylustod, defnyddiodd yr awdur y gwasanaeth Systemd i redeg y sgript a gwirio a yw dibyniaethau'n cael eu datrys.

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

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

Ni fyddai angen yr ail ffeil pe bai gan Debian IPMasquerade= cefnogaeth (gweler isod). #787480).

Ar ôl gweithredu'r gorchmynion systemetl daemon-reload и ailgychwyn systemctl systemd-networkd gallwch chi ddechrau Bluetooth PAN gyda'r gorchymyn padell cychwyn systemctl

Cleient PAN Bluetooth gan ddefnyddio Systemd

Mae ochr y cleient hefyd yn hawdd ei ffurfweddu gan ddefnyddio Systemd.

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

[Match]
Name=bnep*

[Network]
DHCP=yes

Ffeil /etc/systemd/system/[e-bost wedi'i warchod]

[Unit]
Description=Bluetooth Personal Area Network client

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

Nawr, ar ôl ail-lwytho'r ffurfweddiad, gallwch gysylltu â'r pwynt mynediad Bluetooth penodedig fel hyn:

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

Paru gan ddefnyddio'r llinell orchymyn

Wrth gwrs, rhaid gwneud cyfluniad y gweinydd a'r cleientiaid ar ôl eu paru trwy Bluetooth. Ar y gweinydd mae angen i chi redeg bluetoothctl a rhoi'r gorchmynion iddo:

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

Ar ôl dechrau'r sgan, arhoswch ychydig eiliadau nes bod y ddyfais sydd ei hangen arnoch yn ymddangos yn y rhestr. Ysgrifennwch ei gyfeiriad a'i ddefnyddio trwy gyhoeddi'r gorchymyn pâr ac, os oes angen, y gorchymyn ymddiried.

Ar ochr y cleient, mae angen i chi wneud yr un peth, ond yn bendant nid oes angen y gorchymyn ymddiriedolaeth. Mae'r gweinydd ei angen i dderbyn cysylltiad gan ddefnyddio'r proffil NAP heb gadarnhad â llaw gan y defnyddiwr.

Nid yw'r awdur yn siŵr mai dyma'r dilyniant gorau posibl o orchmynion. Efallai mai'r cyfan sydd ei angen yw paru'r cleient â'r gweinydd a rhedeg y gorchymyn ymddiried ar y gweinydd, ond nid yw wedi rhoi cynnig ar hyn eto.

Galluogi Proffil Bluetooth HID

Mae'n ofynnol bod y Mafon yn adnabod bysellfwrdd sydd wedi'i gysylltu â'r sgrin Braille â gwifren, ac a drosglwyddir gan yr arddangosfa ei hun trwy Bluetooth. Gwneir hyn yn yr un modd, dim ond yn lle hynny asiant ar angen rhoi gorchymyn Asiant BysellfwrddYn Unig a bydd bluetoothctl yn dod o hyd i ddyfais gyda phroffil HID.

Ond mae sefydlu Bluetooth trwy'r llinell orchymyn ychydig yn gymhleth

Er bod yr awdur wedi llwyddo i ffurfweddu popeth, mae'n deall bod ffurfweddu BlueZ trwy'r llinell orchymyn yn anghyfleus. Ar y dechrau roedd yn meddwl mai dim ond codau PIN oedd eu hangen ar asiantau, ond daeth i'r amlwg, er enghraifft, bod angen i chi deipio “Asiant KeyboardOnly” i alluogi'r proffil HID. Mae'n syndod bod angen i chi ddringo trwy ystorfeydd i chwilio am y sgript ofynnol i lansio Bluetooth PAN. Mae'n cofio bod teclyn parod ar gyfer hyn yn y fersiwn flaenorol o BlueZ pand - ble mae e'n gwneud yn BlueZ 5? Yn sydyn ymddangosodd ateb newydd, anhysbys i'r awdur, ond yn gorwedd ar yr wyneb?

Cynhyrchiant

Roedd y cyflymder trosglwyddo data tua 120 kbit yr eiliad, sy'n ddigon. Mae'r prosesydd ARM 1GHz yn gyflym iawn ar gyfer rhyngwyneb llinell orchymyn. Mae'r awdur yn dal i gynllunio i ddefnyddio ssh ac emacs yn bennaf ar y ddyfais.

Ffontiau consol a datrysiad sgrin

Mae'r cydraniad sgrin rhagosodedig a ddefnyddir gan y framebuffer ar y Raspberry Pi Zero yn eithaf rhyfedd: mae fbset yn ei adrodd fel 656x416 picsel (dim monitor wedi'i gysylltu, wrth gwrs). Gyda ffont consol o 8 × 16, roedd 82 nod fesul llinell a 26 llinell.

Mae'n anghyfleus gweithio gydag arddangosfa Braille 40-cymeriad yn y modd hwn. Hoffai'r awdur hefyd weld cymeriadau Unicode yn cael eu harddangos mewn braille. Yn ffodus, mae Linux yn cefnogi nodau 512, ac mae gan y mwyafrif o ffontiau consol 256. Gan ddefnyddio consol-setup, gallwch ddefnyddio dau ffont 256-cymeriad gyda'i gilydd. Ychwanegodd yr awdur y llinellau canlynol at y ffeil /etc/default/console-setup:

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

Nodyn: i wneud y ffont brl-16×8.psf ar gael, mae angen i chi osod consol-braille.

Beth sydd nesaf?

Mae gan yr arddangosfa Braille jack 3,5 mm, ond nid yw'r awdur yn ymwybodol o addaswyr ar gyfer derbyn signal sain gan Mini-HDMI. Nid oedd yr awdur yn gallu defnyddio'r cerdyn sain a adeiladwyd i mewn i'r Mafon (yn rhyfedd iawn, roedd y cyfieithydd yn sicr nad oedd gan y Zero un, ond mae yna ffyrdd i allbynnu sain gan ddefnyddio PWM i'r GPIO). Mae'n bwriadu defnyddio canolbwynt USB-OTG a chysylltu cerdyn allanol ac allbwn sain i'r siaradwr sydd wedi'i ymgorffori yn yr arddangosfa braille. Am ryw reswm, ni weithiodd dau gerdyn allanol; nawr mae'n chwilio am ddyfais debyg ar chipset gwahanol.

Mae hefyd yn anghyfleus i ddiffodd y “mafon” â llaw, aros ychydig eiliadau a diffodd yr arddangosfa braille. Ac i gyd oherwydd pan gaiff ei ddiffodd, mae'n tynnu pŵer o'r cysylltydd yn y compartment. Mae'r awdur yn bwriadu gosod batri byffer bach yn y compartment a, thrwy GPIO, hysbysu'r Mafon am yr arddangosfa'n diffodd, fel y gall ddechrau cau ei waith. Mae hwn yn UPS yn fach.

Delwedd system

Os oes gennych yr un arddangosfa Braille ac yr hoffech wneud yr un peth ag ef, mae'r awdur yn barod i ddarparu delwedd barod o'r system (yn seiliedig ar Raspbian Stretch). Ysgrifennwch ato am hyn yn y cyfeiriad a nodir uchod. Os oes digon o bobl â diddordeb, mae hyd yn oed yn bosibl rhyddhau citiau sy'n cynnwys popeth sy'n angenrheidiol ar gyfer addasiad o'r fath.

Cydnabyddiaethau

Diolch i Dave Mielke am brawfddarllen.

Diolch i Simon Kainz am y lluniau.

Diolch i'm cydweithwyr ym Mhrifysgol Dechnegol Graz am gyflwyno'r awdur yn gyflym i fyd Raspberry Pi.

PS Trydariad cyntaf awdur ar y pwnc hwn (nid yw'n agor - cyfieithydd) wedi'i wneud dim ond pum diwrnod cyn cyhoeddi'r gwreiddiol o'r erthygl hon, a gellir ystyried, ac eithrio problemau gyda sain, bod y dasg wedi'i datrys yn ymarferol. Gyda llaw, golygodd yr awdur fersiwn derfynol y testun o “arddangosfa Braille hunangynhaliol” a wnaeth, gan ei gysylltu trwy SSH â'i gyfrifiadur gartref.

Ffynhonnell: hab.com

Ychwanegu sylw