Prometheus node exporter

Prometheus (https://prometheus.io/) tai atviro kodo monitoringo sistema. Veikimo principas labai paprastas, kompiuteryje/serveryje veikia taip vadinamas node exporter’is kuris tam tikru portu (pagal nutylėjimą 9100), tekstiniu formatu atiduoda metrikas.

Metrikos gali būti serverio apkrovos parametrai, aparatinės įrangos informacija (temperatūros, aušintuvai, diskai ir t.t.), ar kažkokios programinės įrangos mariadb/mysql, apache ir t.t. metrikos. Exporterių tikrai yra prirašyta pakankamai daug, o jei reikia kažko išskirtinio, tikrai labai nesunkiai galima eksportuoti savo kažkokias susigalvotas metrikas.

Mano tikslas – ofiso serverių (labiau switch‘ų) kambaryje stebėti patalpos temperatūrą. Viskas turėtų patekti į prometheus ir būti atvaizduota grafanoje (https://grafana.com/).

Taigi, konstruojam hardwarinį temperatūrų node exporterį. Tam panaudojau Arduino nano ir enc28j60 LAN modulį.

Kodo pavyzdžių ir kaip viską sujungti tikrai galima rasti internete. Bet visos papaišytos schemos man neveikė. Problema buvo LAN modulio maitinimas. Kai kurios schemos nurodo LAN moduliui paimti įtampą nuo arduino 3V3 pin’o. Nuo jo pajungus, man moduliukas išviso neveikė. Nedegė jo LED ir nedegė indikaciniai LED pajungtus LAN kabelį.

Kai kurios schemos nurodo jungti nuo 5V. Tad jungiu nuo 5V pin’o. Viskas lyg veikia, bet LAN modulio čipas pradeda labai kaisti – per aukšta įtampa. Datasheet’as sako, kad reikia maitinti nuo 3V3, bet man nuo jo neveikia. Naršau internetą ieškodamas problemos ir randu: I was amazed to find that the ENC28J60 draws 200mA ! No wonder it wont work from the Nano’a 3.3v output (which is rated at 25 mA). (https://forum.arduino.cc/index.php?topic=452822.0)

Problema aiški! Lituoju 3V3 įtampos stabilizatorių ant 5V arduino pin’o, viskas veikia!… kokias dvi valandas. Viską pasijungiu ant stalo ir vėl bandau iš naujo. Po ~5min pradedu jausti, kad ardudino plokštelė pradeda palengva šilti. Panašu, kad perkaista.. bet kodėl?

Kaip matosi nuotraukoje, naudoju maža maitinimo šaltinį 220V -> 5V. Juo užmaitinu arduiną. Arduino nano turi 5V stabilizatorių, prie kurio aš jungiau LAN modulį, pasirodo, kad jis irgi yra per silpnas (nelabai čia protingai buvo jungti du stabilizatorius nuosekliai). Taigi dabar jungiu stabilizatorių jau ant Vin pin’o, ant kurio ateina 5V iš maitinimo modulio. Pagaliau schema stabiliai veikia.

Nuotraukoje matosi kaip viskas sumontuota viduje. Vidus nelabai gražus gavosi, mažoka dėžutė. Tvarkingai pritvirtinti gavosi tik maitinimo šaltinį. LAN modulis ir arduino turi tik super mažas skylutes montavimui, tad prie korpuso nesugalvojau kaip pritvirtinti, o klijuoti nenorėjau. Dėlto ir LAN jungties nesigavo gražiai išvesti per dėžutės šoną.

Rezultate curl’inant gauname:

$ curl http://192.168.10.250:9100/metrics
# Arduino DS1820 temperature exporter
temperature{thermometer="28ff6a0160170573"} 18.00
temperature{thermometer="28ff252160170585"} 16.00
temperature{thermometer="28ffed5530170399"} 16.69

Žemiau vaizdas iš Prometheus konsolės, Prometheus grafikas ir Grafanos grafikas:



Pastarasis kambarys nėra labai lankomas, todėl paskutinis žingsnis buvo sukurti prometheus alert’ą. Tad esant vėdinimo sistemos gedimui, ar dėl kažkokių priežasčių sustojus vėdinimo sistemai, praėjus 5min kai bus viršyta 22C temperatūra, Prometheus alert manager’yje pasirodys pranešimas apie pakilusia patalpos temperatūrą.

Darkroom timer (didintuvo laikmatis)


Spausdinant nuotraukas analoginiu būdu (apie tai rašiau čia) labai svarbus laikas. Bandžiau suktis iš situacijos naudodamas telefono programelę, bet telefono ekranas, kad ir rodo juodą spalvą, jis yra apšviestas ir skleidžia baltą šviesą.

Tokių prietaisų tikrai yra pirkti, tiek senų rusiškų, tiek šių laikų, modernių. Niekada neteko tokio naudoti. Nusprendžiau susikonstruoti savo. Tad maniškio valdymas yra toks kokį aš jį įsivaizdavau/sugalvojau.

Mano prietaiso mintis yra valdyti didintuvo lempą. Dešiniam šone yra rozetė į kurią jungiasi didintuvas. Didintuvo lempą priverstinai galima įjungti su viršuje esančiu jungikliu. Jungiklis didelis, tad tamsoje problemų jį apčiuopti ir junginėti nekilo.

Užprogramavimas.

Įjungus prietaisą ekrane šviečia nulis. Klaviatūros pagalba galima suvesti laiką sekundėmis. Suvedus laiką pasirenkam kuriam laikmačiui užstatyti suvestą laiką. Jų yra keturi. Tai raidės “A”, “B”, “C” ir “D” klaviatūros dešinėje.

Tarkime noriu, kad didintuvas popierių apšviestu 15sek, 2min pirmoje chemijoje (develop), 1min antroje (stop) ir 2min trečioje (fix).

Tad klaviatūroje suvedu “15” ir spaudžiu “A”, “120” ir spaudžiu “B”, “60” ir spaudžiu “C”, “120” ir spaudžiu “D”.

Paspaudus klaviatūroje “#” prasideda sekos vykdymas. 15’ikai sekundžiu suveikia rėlė ir užmaitina rozetę, ko pasekoje didintuvas apšviečia popierių. Po to pasigirsta pyptelėjimas ir ekranėlyje pasirodo skaičius 120. Laikas popierių dėti į pirmą vonelę. Kas sekunde ekranėlyje skaičius mažėja iki nulio (laikmatis B). Pasiekus nulį, vėl pasigirsta pyptelėjimas. Laikas popierių perkelti į antrą vonelę. Ekranėlyje pasirodo skaičius 60 (laikmatis C). Vėl mažėja iki nulio ir vėl pasigirsta pyptelėjimas. Laikas popierių perkelti į paskutinę vonelę. Ekrane pasirodo 120 (laikmatis D) ir mažėja iki nulio. Paskutinį kartą pasigirsta pypsėjimas. Dabar galima įjungti šviesą ir įvertinti rezultatą.

Viskas sukonstruota WeMos D1 R1 pagrindu. Programuota arduinu.

Žemiau nuotraukoje matosi visos panaudotos detalės.

Nuorodos iš kur pirkau:
WeMos D1 R1 https://www.aliexpress.com/item/32657998940.html
Klaviatūra https://www.aliexpress.com/item/32831963425.html
Ekranėlis (raudonas) https://www.aliexpress.com/item/32867950441.html
Rėlė https://www.aliexpress.com/item/32639452633.html
Spykeriukas https://www.aliexpress.com/item/32955065577.html
Maitinimo šaltinis https://www.aliexpress.com/item/32656713529.html
Jungiklis ir rozetė https://www.ermitazas.lt/
Dėžutė https://rcl.lt/

Klaviatūrai nuskaityti panaudojau Keypad https://playground.arduino.cc/Code/Keypad/
Plačiau kokiu principu veikia: http://www.circuitbasics.com/how-to-set-up-a-keypad-on-an-arduino/

Su klaviatūra buvo dvi bėdos. Pirmoji, kad veikė ne visi klavišai. Išardęs pamačiau, kad naudojami takelių “jumperiai”, kurie, panašu turėjo kažkokią varžą.

Matosi nuotraukoje, kad prilitavau savo “jumperius”. Klaviatūra pradėjo veikti.

Bet štai išlindo antra bėda, kontroleris tiesiog persikraudinėdavo. Pagooglinus randu https://github.com/esp8266/Arduino/issues/3241
Rezultate Keypad.cpp faile 213 eilutėje pridedu yield()
Dabar ji atrodo taip:

while( (waitKey = getKey()) == NO_KEY ) yield();;   // Block everything while waiting for a keypress.

Ekranėlį valdau su TM1637 (galima rasti Arduino Library Manager’yje). Ekranėlis šviečia raudonai (raudonos šviesos nebijo juodai baltas foto popierius). Pagal nutylėjimą jis šviečia gan ryškiai, tamsoje man to nereikia, tad šviesumą mažinu iki minimumo. Kodas:

display.setBrightness(0);

Spykeriukas spiegia gan garsiai, tad bandymo keliu atrenku varžą ir pajungiu nuosekliai. Kokia tai varža nebepamenu, orientavausi į norima garsumą.

Aparatas jau išbandytas, darbas daug smagesnis, veikė taip kaip noriu ir nei kart nepavedė.

Analoginė fotografija

Paskutinį kartą nuotraukas analoginiu būdų spausdinau prieš gerus penkis metus. Ramybės nedavė ir už nugaros lentynoje stovintis mamos prieš 30 metų naudotas didintuvas. Visai “netyčia” skelbimuose radau krokus didintuvo skelbimą. Tas tab’as naršyklėj buvo atidarytas ilgiau nei mėnuo.. galvoju, reik skambinti, nieko nebus 🙂 Ir štai, man už nugaros stovi jau du didintuvai 😉

Bet viskas iš eilės.

Skaitmeninei fotografijai naudoju Pentax K-5II, o analoginei Pentax P30. Pliusas šio rinkinio toks, kad tiek vienas tiek kitas naudoja tuos pačius objektyvus.

Į juostinį aparatą dedasi dvi SR44 arba LR44 baterijos. Jos reikalingos maitinti elektroniką kuri ieškiklyje rodo rekomenduojama užlaikymą. Jei objektyvas turi diafragmos A rėžimą, tai užlaikymą ir diafragmą susireguliuoja pats aparatas. Tiesa kieno prioritetą naudoja tai taip ir neaišku. Taip pat baterija yra reikalinga juostelės ISO nuskaitymui. Ant juostelės kasetės yra toks “kodas” vadinamas DX kodu (nuoroda į wikipedia). Pats juostelės prasukimas ir susukimas atgal į kasetę yra mechaninis. Savaime suprantama, autofokuso nėra.

Juosteles pirkdavau dažniausia pigiausias spalvotas. Paskui teko pabandyti juodai baltas C41 proceso, kad fotolabas už mane galėtu išryškinti, nes nesinori pačiam visko sugadinti. Pastebėjau, kad paskutines neštas juosteles fotolabas kažkaip sugeba subraižyti, todėl dabar pasirinkau Ilford HP5+ o ši jau yra rankinio ryškinimo. Tad pabaigus šią, bandysiu ryškinti pats.

Taigi, didintuvas krokus color sl 4

Priedo gavau voneles į kurias telpa A4 lapas (senosios vonelės yra mažesnės), pincetus, raudoną lempą ir dar keleta smulkmenų.

Popieriaus turiu bent keturias rūšis, seno rusiško. Nuotraukose žemiau 24cm x 30cm ir 18cm x 24cm. Taip pat turiu Ilford multigrade kuriam reikalingi filtrai (kurių taip ir nenusipirkau), tad nuotraukos gaunasi kiek pilkokos (filtrai reikalingi kontrastui reguliuoti).
Labiausiai patinka daryti ant didelių A4 dydžio lapų (24cm x 30cm).

Chemija pirkta kažkada foto pro parduotuvėje. Galiojimas pasibaigė turbūt prieš kokius penkis metus.
Sumaišyta chemiją laikau 1L buteliuose su kamštukais kurie turi apsaugą nuo vaikų.

Patalpa kurioje viską darau – vonios kambarys.

Tiek daug raudonos šviesos nenaudoju. Palieku tik dešiniausia žibintą, kurį atsuku į sieną, tad kambaryje būna minimaliai šviesios, kad tik matyčiau popierių vonelėje. Rezultatą pamatau tik uždegus šviesą.

Tai tiek trumpai, kaip gimsta nuotraukos, kurias pačiam viršuje laiko mano dukra. Beje ta nuotrauką yra daryta iš spalvotos juostelės.

Samsung Gear S3 Frontier

Čia turėjo būt labai graži nuotrauka, kaip laikrodis paniręs į akvariumo vandenį 🙂

Šio laikrodžio review ir nuotraukų yra pilnas internetas, tai kartotis nelabai reikia ir nelabai tikslinga. Bandysiu aprašyti tai, ko neradau skaitydamas ar žiūrėdamas youtube visokius video apie šį laikrodį.

Laikrodį naudoju apie penkis mėnesius, tad žemiau keletas mano pastebėjimų.

Pagal specifikacijas gamintojo puslapyje, rašoma, kad baterija laiko 3-4 dienas. Mano patirtis rodo, kad baterija su širdies ritmo nuskaitymu kas 10min. laiko ne daugiau kaip tris dienas. Jei laikrodį įdedu krauti kol būnu duše (o aš ten būnu ilgokai) tai baterija laiko 5-6 dienas.

Sportuojant (mano atveju važiuojant dviračiu, bėgiojant ar minant elipsinį treniruoklį) baterija sėda apie 8-9% per valanda. Tuo metu laikrodis naudoja GPS ir nuolat seka širdies pulsą. Tad teoriškai sporto rėžimu turi atlaikyti iki 11 valandų,

Šio laikrodžio pagalba galima atsiliepti į skambutį. Garsas nėra super garsus, bet tarkime vairuojant ir ranką laikant ant vairo susikalbėti galima. Bet tokiu atveju neveiks jūsų automobilio laisvų rankų įranga (jei tokia turit). Bent mano Sony Xperia XZ1 vienu metu susijungdavo arba su laikrodžiu arba su mašinos laisvu ranku įranga. Po kurio laiko išlindo dar viena bėda, kad po ~ dešimties skambučių, telefone garsas tiesiog dingdavo, toks jausmas, kad telefonas garsą siunčia laikrodžiui, o anas to nemato. Po bluetoth išjungimo/įjungimo bėda dingdavo vėl kokiai dešimčiai skambučių. Problemą išsprendžiau išjungdamas galimybe atsiliepti į skambučius su laikrodžiu (pats skambinimo faktas rodomas). Rezultate mašinoj telefonas sėkmingai susijungia su laisvom rankom, o ir garsas telefone nustojo dinginėti.

Vienintelė papildoma programa kurią įsirašiau į laikrodį yra Endomondo, su ją ir sportuoju. Jei yra šalia (ryšio zonoj) telefonas tai programėlė laikrodyje iškarto sinchronizuojasi su telefonu, jei ne tai visi surinkti duomenys bėgiojant (bėgiojant su savim neimu telefono) į telefoną ir tuo pačiu internetą patenka tada kai laikrodis “pamato” telefoną. Duomenims sinchronizuotis būtinai reikia, kad laikrodyje būtų paleista endomondo. Kažkokio foninio (background) proceso atsakingo už duomenų sinchronizavimą laikrodis neturi.

Sportui galima naudoti ir integruota programėlę, bet aš visada duomenis kaupiu endomondo (kuriuos vėliau dar exportuoju ir į stravą) tad, kad nereiktu dar papildomai vargti su eksportais importais iškarto viską įrašinėju su endomondo.

Pranešimai (notifications). Laikrodyje rodomi pranešimai kurie pasirodo telefone ant ekrano. Ir rodoma būtent tai kas pasirodo telefone t.y. jeigu telefone yra įjungtas privatumo rėžimas bus rodomas tik faktas apie gauta žinutę, bet pati žinutė ne. Bet jeigu pranešime matosi, siuntėjas ir pačios žinutės tekstas tai lygiai tas pats bus matoma ir laikrodyje. Pas mane privatumo rėžimas nėra įjungtas, tad laikrodyje matau visus pranešimus pvz kad gavau el. laišką, nuo ko ir kokia antraštė. FB messenger žinutės siuntėją ir visą žinutę į kurią netgi galima atsakyti paruoštukais (Taip, Gerai, Ne, Vairuoju ir t.t.) arba esant norui su miniatiūrine klaviatūra suspandyti savo atsakymą, ko aš nedarau, nes tai yra visiškai nepatogu. Tas pats ir su slack, viber, whatsapp, youtube ir t.t.

Veikimo atstumo metrais negalėčiau įvardint, bet 90kv.m. plotą padengia kuo puikiausiai.

Rezultate laikrodžiu esu patenkintas. Ypač vairuojant ar dirbant kieme nereikia ieškoti telefono, viskas matoma ant riešo. O sportuojant greitai galima pasižiūrėti kaip smarkiai dirba širdis ir reikalui esant truputi “apsiraminti” su tempu arba jį padidint 🙂

Pirmas ansible “prasukimas” ant Ubuntu mašinos

Ansible (https://www.ansible.com/) tai automatizacijos įrankis. Tarkime turime 2.. 5 .. 100 .. 200 ir daugiau linux’iniu mašinų (mačiau lyg yra ir windows, bet pastarosios nenaudoju, tad nežinau) kažkiek valdyt galima ir vmware, ir norime visuose mašinose atlikti tokius pačius veiksmus. Tarkime super paprastas pavyzdys instaliuoti visuose mašinose vim. Lendant giliau, galima naudoti sąlyginius sakinius, kintamuosius, galima kurti, trinti, redaguoti failus (konfigus), instaliuoti paketus ir praktiškai viską ką galima padaryti konsolėje. Tad jei yra daugiau nei vienas serveris kurio konfiguracija turi būt tokia pat, ar labai panaši – ansible jūsų draugas.

Taigi situacija. Penkios Ubuntu 16.04 LTS mašinos. Ansible playbook’ą paleidinėja (prasukinėja?) Jenkins (https://jenkins.io/). Pridedu šeštą Ubuntu 16.04 LTS į hosts failą, SSH raktą ir važiuojam! … ir nevažiuoja:

SSH Error: data could not be sent to remote host

Bandau jungtis iš Jenkins į naująjį Ubuntu, viskas puikiai veikia. Iš Ubuntu pusės matosi, kad susijungimas įvyksta. Apkaltinam Jenkins. Mintis sukasi apie Jenkinso SSH agenta, gal jis turi kažkokį seną raktą ar nepasiima naujo… Ta proga atnaujinamas Jenkinsas ir visa distribucija. Reboot. Neveikia. Visi kiti likusieji Ubuntu veikia kuo puikiausiai.

Bandau leisti ansible playbook’ą iš savo kompiuterio… Ta pati klaida. WTF? Ryšys tikrai yra, ssh’išintis galiu.. pingas eina. Niekas neblokuota (viskas default, nes ansiblas tai neprasuktas). Googlinu, nieko nerandu. Ir taip staiga mintis galvon, o pythonas yra?

apt install python

Viskas veikia 🙂

Išvada:
1. Ansible klaida apgaulinga (ar suprasta ne taip), o prie jos prisirišus sudeginta bereikalingai laiko.
2. Ubuntu 16.04 LTS server eina be python paketo… Kas galėjo pagalvoti?

SSD sparta


SSD kompiuteryje naudoju jau turbūt >7 metai. Pirmasis diskas (jis vis dar veikia ir nė kart nepavedė) yra OCZ-AGILITY3. Pastarojo talpa yra 64GB tad su laiku jau tiesiog netilpo visa root particiją su Android Studio, keleta Steam žaidimų. Todėl buvo pakeistas į Samsung SSD 860 EVO 250GB

Vieną dieną rašo draugas: “Nusipirkau Samsung SSD, padariau greičio testus bet greitis tik ~200MB/s” Tada priėjom išvados, kad jo kompiuterio SATA jungtis yra senoka t.y. 3Gb/s. Po disko keitimo man net į galvą nešovė pažiūrėti kaip greitai veikia naujasis. Žiūrim ir matom:

Timing cached reads: 23102 MB in 1.99 seconds = 11585.15 MB/sec
Timing buffered disk reads: 818 MB in 3.00 seconds = 272.59 MB/sec

Beje, disko greitį matuoju su:

sudo hdparm -Tt /dev/sda1

O gi pasirodo, kad maniškio kompiuterio motininė plokštė turi du SATAIII 6Gb/s ir keturis SATAII 3GB/s, taip gavosi, kad visus diskus jungiau eilės tvarka ir SSD diskui atiteko SATAII 3Gb/s spartos jungtis. Taisom šitą klaidą ir testuojam iš naujo:

Timing cached reads: 24158 MB in 1.99 seconds = 12116.03 MB/sec
Timing buffered disk reads: 1580 MB in 3.00 seconds = 526.18 MB/sec

Realaus greičio skirtumo nepajutau.

PS: Diskui pajungti panaudotas Supermicro SATA Flat Straight-Straight 81cm Cable (CBL-0481L)

ADS-B+Banana PI=flightradar24

Paruošus darbui Banana PI visai atsitiktinai toptelėjo mintis pasidalinti ADS-b duomenimis su Flightradar24 (www.flightradar24.com).

ADS-b tai atvirai lėktuvų transliuojamos metrikos (aukštis, greitis, koordinatės ir t.t.). Visa tai transliuojama 1090MHz dažniu ir gali būt priimama su vos 10€ kainuojančiu USB TV tiuneriuku. Aš juos turiu kelis, bet šiuo konkrečiu atveju naudojamas šis:

Aliexpress puslapyje į paiešką parašius “ads-b” tikrai rasite ne vieną tokį ar panašų tiuneriuką. Svarbiausia, kad jo mikreschemų rinkinys (chipset) būtų RTL2832U.

Jungiam tiuneriuką prie kompiuterio ir instaliuojam rtl-sdr
Ubuntu:

apt install rtl-sdr

Archlinux:

pacman -Sy rtl-sdr

Nesvarbu kuria OS naudojat (kad ir bet kuria kita linux distribuciją) reikia uždrausti (blacklistinti) dvb_usb_rtl2832u kernel modulį. Pastarasis modulis yra skirtas skaitmeninei TV žiūrėti, jis yra kernelio dalis, todėl užsikraus pirmasis ir “trukdys” mums naudotis tiuneriuku ne pagal jo tiesiogine paskirtį.

Patikrinimui ar viskas gerai veikia, naudojam:

rtl_test -t

Iš puslapio https://www.flightradar24.com/share-your-data kopijuojame pateikta komanda ir leidžiama kaip root. Mano atveju tai buvo:

bash -c "$(wget -O - https://repo-feed.flightradar24.com/install_fr24_rpi.sh)"

Šis skriptas suinstaliuos fr24feed servisą. Konfiguruojame su:

fr24feed --signup

Aš iš anksto jau buvau užsiregistravęs flightradar24 puslapyje, tad čia panaudojau tuos pačius prisijungimo duomenis.

Maniškė konfigūracija atrodo taip:

root@bpi-iot-ros-ai:~# cat /etc/fr24feed.ini 
receiver="dvbt"
fr24key="***************"
path="/usr/bin/dump1090-mutability"
bs="yes"
raw="yes"
logmode="1"
procargs="--net"
windowmode="0"
logpath="/var/log/fr24feed"
mpx="no"
mlat="no"
mlat-without-gps="no"

Enable’inam servisą:

systemctl enable fr24feed

Startuojame:

systemctl start fr24feed

Jei viskas veikia, adresu http://_jūsų_serverio_IP_adresas:8754 turėtumėt matyti kažką panašus:

O adresu http://_jūsų_serverio_IP_adresas:8080 (vaizdas su nauja antena, aprašymas žemiau)

Norint matyti šį vaizdą konfiguracijos ketvirta ir aštunta eilutės yra privalomos.
Šiam lange rodomi šiuo metu tiuneriuko matomi lėktuvai. Jei per minutę joks signalas negaunamas, lėktuvėlis iš šio žemėlapio yra šalinimas. Taigi, šiuo mementu maniškis banana pi priima signalą iš 11 lėktuvų ir dar du iš kurių pilnai duomenis nepaimami (per toli?).

Ir paskutinis bet svarbus įrenginys visame šitame yra antena.

Pirmas tris savaites tiuneriukas buvo pajungtas prie “bet kokios” (PMR dažniui skaičiuotos Yagi tipo) antenos. PMR dažnis yra 446MHz, lėktuvai transliuoja 1090MHz… tad tai net nėra panašų, bet su tokia komplektacija lėktuvai buvo matomi iki 120km spinduliu.

Kiek pasigoolinus nusprendžiau pasidaryti šiam dažniui skirta anteną “voriuką”. Antena tikrai nedidutė, gero sprindžio dydžio. Antenos “brėžinys” matosi vienoje iš nuotraukų. Visų strypelių ilgis 68mm, kampai 45 laipsnių.


Po antenos pakeitimo, matymo spindulys padidėjo nuo ~120km iki 210km t.y. beveik dvigubai.
Atstumo galima pasiekit ir didesnio, bet antena yra ant vieno aukšto namo, kuris aplinkos atžvilgiu yra šiokioje tokioje dauboje.

Taip pat daugiau kaip šimtu padaugėjo per diena nuskaitomų lėktuvų kiekis:

Už tai, kad teikiu duomenis flightradar24 puslapiui, mano Basic paskyra pavirto į Business, todėl puslapyje galiu prieiti prie visiškai visų duomenų ir be reklamos.

PS: Su šiuo tiuneriu galima nuveikti ir dar daugiau smagių dalykų, gal kada aprašysiu.
PSS: Nuotraukoje aukštoji yra CB antena, gal kada ir apie tai parašysiu.

Banna PI OS instaliavimas

Šis kompiuteriukas man į rankas pateko jau senokai. Palyginus su pirma aviete jis turi spartesni procesorių, daugiau RAM atminties ir gigabitinį LAN (tikroji išmatuota sparta 396 Mbits/sec) ir esminis skirtumas, turi SATA jungį.

Tada buvo suinstaliuotas Archlinux (internete rastas disko atvaizdas), bet pastebėjau, kad po sistemos atnaujinimo jis tiesiog nesikraudavo. Į pacman.conf įdėjau, kad ignoruotu kernelio ir systemd paketus. Kažkuriam laikui padėjo, bet po eilinio update ir nesikrovimo kompiuteriukas buvo užmirštas gan ilgam.

Po ilgo laiko vėl googlinant ir ieškant Archlinux’o atvaizdo teko nusivilti, kažko naujo nėra. Kompiuteriukas jau paseno ir nelabai kas jam atnaujina tuos atvaizdus. Pirminis bandymas buvo vadovaujantis https://wiki.archlinux.org/index.php/Banana_Pi pasigaminti atvaizdą pačiam. Bet po keturių (o gal ir daugiau) nesėkmių nuleidau rankas. Sistema nesikrovė.

Tada užkliuvo (http://wiki.banana-pi.org/Banana_Pi_BPI-M1#Ubuntu_Server), kad yra Ubuntu 16.04. Pagalvojau, kad man to pakaks. Siunčiu atvaizdą, rašau į kortelę. Kraunasi. Valio.

O dabar smagiausia dalis. Kaip priversti užmountinti root particiją iš disko prijungto per SATA jungti. Ir ko aš nebandžiau, SD kortelėje redaguoti armbianEnv.txt, fstab, boot.src ir dar bala žino kas. O jis nieko, užsispyręs, mountina antra SD kortelės particiją kaip root nors tu ką.

Ir vis dėlto atsakimą radau. Kaip dariau aš:
Antra SD kortelės particiją (root) nusikopijavau į SATA 2.5″ diską (mano atveju tai senasis mano SSD diskas OCZ AGILITY3).
Po kopijavimo SATA diske, paredaguojam /etc/fstab

/dev/sda1  /               ext4   defaults,noatime  0       1

Prijungiam SATA diską. Įjungiam kompiuteriuką. Prisimountinam pirmą SD kortelės particiją:

mount /dev/mmcblk0p1 /mnt

Redaguojam failą:

vim /mnt/bananapi/bpi-m1/linux/boot.cmd

Ir svarbiausias momentas:

mkimage -C none -A arm -T script -d /mnt/bananapi/bpi-m1/linux/boot.cmd /mnt/bananapi/bpi-m1/linux/boot.scr

Štai jau sistema kraunasi iš SD kortelės ir root particiją naudoja iš disko prijungto per SATA jungtį. Viskas labai puikui, BET pas mane SD kortelė 16GB iš kūrių 8GB užima boot particija ir senoji root. Boot particija tik 256MB. Nesinori dėl tiek naudoti tokios didelės kortelės, tuo labiau, kad ant stalo guli sena 2GB kortelė.

Vėl prasidėjo smagioji užsiėmimo dalis. Kaip iš atvaizdo kuriam yra trys (!) particijos, palikti tik dvi ir jas suklonuoti į SD kortelę. Klonuoti po vieną particija man nepavyko. Pirmoji atvaizdo particija lyg ir tuščia (jos dydis 105MB) bet be jos sistema nesikrauna, panašu, kad ji kažkam naudojama.

Vėl gelbėja google. https://softwarebakery.com/shrinking-images-on-linux. Panaudoju paskutinį aprašyta būdą:

truncate --size=$[(729087+1)*512] 2018-07-26-ubuntu-16.04-server-preview-bpi-m1-m1p-r1-sd-emmc.img

Rezultate gaunu 356MB disko atvaizdą, kuris puikiai klonuojasi į 2GB (mažesnės jau neturiu) kortelę.
Po klonavimo reikėjo persikopijuoti aukščiau generuota bananapi/bpi-m1/linux katalogą, nes šiuo atvėju aš redagavau originalų iš interneto atsiųsta atvaizdą kuris vėl mountino root iš SD antros particijos.

Dabar jau viskas veikia kaip ir turi veikti. Boot particija SD kortelėje, visas root SSD diske.

Mikrotik cAP lite

Pastaruosius, turbūt, šešis metus naudojau Mikrotik RB951G-2HnD. Dar gyvenant bute, neturėjau jokių problemų su wifi signalo stiprumu. Persikrausčius į namą, tolimiausiam kambaryje signalas buvo labai jau silpnas. Nešiojamas kompiuteris signalą dar išlaikydavo, telefonas kartais ir pamesdavo. Problema turbūt tame, kad mikrotikas pastatytas ant komunikacinės spintos, kuri yra ant namo kraštinės sienos. Tolimiausias kambarys yra dukros (dabar jai 3m.) todėl wifi silpnas veikimas nekėlė bėdos.

Pagaliau, po ilgo laiko namuose atsirado dar vienas baldas – spinta. Kurios viduje atsirado dujinis katilas, džiovyklė, drabužinė ir … komunikacinė spinta. Ant spintos durų yra veidrodis. Mano supratimu, veidrodis (veidrodis tai stiklas padengtas plonu aliuminio (?) sluoksniu) tiesiog pradėjo veikti kaip ekranas. Rezultate dukros kambaryje, miegamajam ir darbo kambaryje galimybė naudotis wifi praktiškai dingo.

Įrenginys wifi signalą mato stiprų (atvaizduojamos visos padalos), bet mano supratimu įrenginio (tarkime telefono) signalas nepasiekia pačio Mikrotiko. Su nešiojamu kompiuteriu kažkiek geriau, bet greitis akivaizdžiai krito.

Po šiokių tokių pasiskaitinėjimų/pagooglinimų nusprendžiau nusipirkti Mikrotik cAP lite. Kaip variantai buvo galingesni Mikrotik modeliai arba Ubiquiti, bet iškarto buvau nusprendes, kad noriu “kabinamo” ant lubų, tikrai nenorėjau statyti kažkur ant baldo dėžės su antenom.

Per tris dienas po užsakymo atkeliavo maniškė prekė. Aparatas tikrai mažuliukas. Komplekte Poe maitinimas, du dangteliai.

Traukiam kopėčias ir montuojam 🙂 Sunkiausia dalis buvo per kolidoriaus šviestuvui skirta skylute lubose pratraukti kabelį iki spintos. Naudojau kieta vielą ir daug kantrybės. Po bala žino kelinto bandymo pavyko rasti antra galą. Lengviau buvo keliauti iki namo “geografinio” centro. Tam labai padėjo halogeniniai (dabar jau LED’iniai) šviestuvėliai, kuriuos išėmus buvo galima patogiai prakišti vielą, kurios pagalba paskui buvo traukiamas UTP kabelis.

Nors įrenginys yra gan silpnas, rezultatu esu patenkintas.
Nešiojamas kompiuteris prie senojo wifi:

[  4] local 192.168.0.115 port 52923 connected with 192.168.0.101 port 5001
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-12.9 sec  1.38 MBytes   894 Kbits/sec

Prisijungus prie naujojo wifi:

[  4] local 192.168.0.115 port 53041 connected with 192.168.0.101 port 5001
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  32.0 MBytes  26.8 Mbits/sec

PS: nešiojamas kompiuteris yra darbinis, tad su juo didelių failų nesiuntinėju. Namuose naudoju stalinį kompiuterį pajungta gigabitu. Žmona kartais naudoja turima nešiojama kompiuterį interneto puslapiams. Tad esamo 20-60Mb/s (priklausomai nuo vietos) man pakanka per akis.

Reguliuojamas maitinimo šaltinis

Lygiai metų projektas, nes visos detalės gulėjo beveik metus. V/A ekranėlis pirmu siuntimu manęs nepasiekė, pardavėjas gražino pinigus. Po beveik metų, prisiruošiau užsisakyti trūkstama dalį ir pagaliau, atsiradus laikui, viską surinkau.

Specifikacijos:

Reguliuojama įtampa 1.25V – 23.6V
Srovė 0A – (?) dar neišbandžiau, bet pagal kitus konstravusius ir matavusius ties 23.6V turėtu būt 5A

Detalės:

Maitinom blokas – 4A To 6A 24V Stable High Power Switching Power Supply Board AC DC
Įtampos/srovės reguliatorius – Buck Converter Step-down Power Module 7-32V to 0.8-28V 12A 300W
Voltmetras/ampermetras – DC 100 V 10A Voltmeter Ammeter Blue + Red LED
Potenciometrai – rcl.lt
Potenciometrų rankenėlės – 10 Pcs 6mm Shaft Hole Dia Plastic Threaded Knurled Potentiometer Knobs Caps
Gnybtai – Good Quality 4Pcs/Lot Speaker Amplifier Terminal Binding Post Banana Plug Socket Female Connector Electrical Tool
Kabeliukai su krokodilais – High Quality 0.8m Dual Banana plug – alligator clip
Dėžutė – rcl.lt

Visas kitas smulkmenas (laidai, jungtys, termo vamzdeliai) jau turėjau namuose.

Visų pirmą bandžiau kuo patogiau sudėti elementus, kad viskas tvarkingai tilptu. Nors pradžiai pasirodė, kad viskas puikiausiai tilps, bet vietos tikrai nebuvo per daug.

Taigi, žymių tvirtinimo vietas, gręžiu skyles, tvirtinu.

Reiktu atkreipti dėmesį, kad geltoni “varinukai” (kaip kažkada juos vadindavom kompiuterių gamyboj) yra skirtingo diametro, kaip ir varžtukų kepurėlės. Su platesnėm kepurėlėm reguliatoriaus jau prisukti nesigavo.

Toliau nuo įtampos/srovės reguliatoriaus išlituoju mažiukus, mėlynus (pirmuose nuotraukose matosi, kvadratiniai mėlyni su varžtuku paderinimui) potenciometrus ir vietoje jų lituoju “normalaus” dydžio, analogiškus 10kOhm

Matuoju atstumus ir montuoju į korpusą ekranėlį, potenciometrus, kontaktus, lizdą.

Galutinis vaizdas.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close