Nutarė, kad reikia elektromobilių krovimo stotelių. Pigiai už svetimas lėšas. Toliau foto:





Vienas tos senas elektrikas pravardžiuodavo mane chalturščiku. Dabar aš nebe toks. Laurus perėmė berniukai iš Fleksneta.
Nutarė, kad reikia elektromobilių krovimo stotelių. Pigiai už svetimas lėšas. Toliau foto:
Vienas tos senas elektrikas pravardžiuodavo mane chalturščiku. Dabar aš nebe toks. Laurus perėmė berniukai iš Fleksneta.
Per visus tuos arduinus ir kitokius pitoninius iškrypimus, net kelias dienas nepaleidau MPU-6050™ akselerometro ir giroskopo. Pasirodo, reikia atidžiau skaityti produkto datašytą. O kad pas visokius arduinus mikroschema pasileidžia su ne pilna inicializacija ir konfiguracija aš nežinau. Bet mano variantas veikia ant gryno gcc.
STM32F103 MPU-6050™ source code, tik .c ir .h failai. Su nedideliu demo.
Šis mano blogo postas kažkiektai susijęs ir su šiais laikais, bet pagrinde tai senovės istorija- kai tarybų sąjunga pradėjo kažkiek purkštauti po antrojo pasaulinio karo, atsirado sankcijos. Ir konkrečiai COCOM , kuris draudė parduoti rusams visokias gerybes. Aišku buvo visokių apėjimų kaip su ДВК1 – DEC ir IBM 3602 klonavimu. Tačiau progresas nesustojo, atsirado PC. Ir prireikė tokių kompų, kad su GW-BASIC ar kokiu nors Paskaliu programuoti tarpkontinentines balistines raketas. Todėl partija nusprendė- догнать и перегнать3 ar paprasčiau šnekant, nukopijuoti (pavogti) PC XT (1984) o gal ir PC (1981). Kodėl XT? Todėl, kad AT jau pernelyg sudėtingas. Ir kažkur į aštuoniasdėšimtųjų gale gimė уёбище4 vardu НЕЙРОН И99.66.01. Jau toks vardas su skaičiukais sako, kad tai gaminys ne “liaudies masėms”. O karinei pramonei, kokiems nors шарагом5 ar atominėm elektrinėms.
O dabar didelė foto galerija su didelėm nuotraukom. Kad pamatyti, kokį kompą padarė “atominė” valstybė “beveik” savo jėgomis. Prie šios kvailystės dirbo cielas institutas Kijeve. Prie nuotraukų parašiau trumpus komentarus. Agregatas pagagamintas po 1990 metų.
Aš tikrai nežinau, ar verta atgaivinti šitą nesąmonę. Aš nesu tarybinės technikos kolekcininkas. Vienintelis kompas kurį norėčiau gauti tai ДВК-2 (nes teko kiek padirbti su tokiu. Sentimentai). Taigi jei kas turit, tai galime mainytis, netgi su priemoka.
O dabar apie sankcijas. Sankcijos padeda- tiesa lėtokai, bet pilnai susmugdo šalies progresą. O kai nėra progreso, nėra ekonomikos. O kai nėra ekonomikos ir progreso, tai net atominės bombos gali ir nebeveikti.
Sausis- labai tamsus mėnuo. Plius- peršalau lakstydamas kieme. Todėl nieko ir nedariau. O reikėtu… O dar 18€ investicija į lavos lempą. Tiesiog galima sėdėti ir steiblitis į tą lempą. Dar pavyko nusipirkti pigiai vieną raritetą mano kolekcijai. O štai virtuvės remontas pastrigo, nes tingiu ir šalta ir tamsu.
Gal bus kada nors daugiau.
Papuolė į rankas tokia maža ISA PCB su keliais čipais. Su magišku užrašu “Y2000”. Ir iškarto trenkė nostalgija, apie tai, kaip visi panikavo, kad kompiuteriai 2000-taisiais metais išprotės, nes metai tik dviženklis skaičius. Aišku buvo bėdų su tais metais, bet daugelis panikuotojų nepagalvojo, kad technologija smarkiai tobulėja ir kompai pradėjo labai greitai morališkai senti.
O tiems, kurie strigo su sena technika, atsirado visokie BIOS pataisymai. O jei nėra BIOS pataisymo, va jums papildoma plokštė su ROM. (Kitos mikroschemos tik supaprastina ROM pajungimą prie ISA linijų)
Nutariau pažiūrėti, kas tos mikroschemos viduje. Viduje labai mažai kodo, tai buvo kaip tik, kad pasimokinti Hidros (GHIDRA) programos vartojimo.
ISA PCB yra 8 bitų. Vadinasi suderinama su pačiais primityviausiais x86 procesoriais. Vadinasi kiek rimtesni procesoriai turi veikti “REAL MODE” režime. x86 procesoriaus kodas vos vos panašus į Z80 ir tikrai panašus į 8086. Hidra išardė kodą. O internetai padėjo atpažinti- pirmi trys baitai tai 55 AA 10. “55AA” tai signatūra, o 10 tai programos ROM dydis (kart 512 baitų, h100). O nuo 4 baito prasideda pati programa.
Konkreti Y2K PCB darė šitą: išvalo ekraną (rodos), parašo užrašą, nuskaito dalį RAM ir kažką paskaičiuoją ir jei nepavyko, sako error ir išeina, nuskaito RTC per BIOS, nuskaito RTC tiesiogai, palygina, ir jei kažkas gaunasi arba rašo, kad kompas suderinamas su Y2K arba bando (?) pačinti BIOSą. Čia jau spėlioju, nes mano žinio gana trumpos čia.
Kilo mintis padaryti va taip:
Copy-paste kažkiek asemblerio mnemonikų… ir kaip sukompiliuoti? Internetai sako, kad standartinis GCC, su raktažodžiais tipo “-m16 -nostdlib -ffreestanding” turi gaminti x86, 16bitų, REAL kodą. Ir tikrai, kopijuotas kodas iš Hidros susikompiliavo. Toliau teko kankintis su LD.exe ir visokiais loaderiais, kad gautųsi ROM image, o ne exe failas. Tai irgi buvo pilnas nuotykių žaidimas kuris nepavyko iki galo.
Tačiau kodas neveikė realiuose kompiuteriuose.
Ir pasirodo, kad JOKS GCC nesugeba generuoti teisingą 16 bitų, REAL MODE kodą. Iš principo. Binarinių failų palyginimas parodė, kad CALL, RETF ir gal kitokios instrukcijos generuojamas 32 bitų. Tas 32 bitų kodas “kaip ir suderinamas”, bet kai paleidi iš BIOSo, tai tikrai nesuderinamas. Ir nesvarbu koks procesorius- 486DX irgi nesuprato.
Rašyti softą be CALL kaip ir sunkoka. Gerai, kad čia tik kelios eilutės- išvalyti ekraną, per BIOSą (TTY režime) išspjauti tekstą ir nuskaityti ANYKEY iš klaviatūros. Teko viską perrašyti tiesiogiai. Ir rankutėmis įkelti “RETF” teisingą kodą programos gale. Kodu nesidalinu, nes jis baisus, nesuprantamas ir ten per daug POP/PUSH (kopijavau iš tikrų paprogramių, kur išsaugoja registrus). Svarbu veikia.
ROMas turi primityviausią kontrolinę, 8 bitų, sumą. Todėl reikią paskutinį baitą ROMe kaitalioti tol, kol suma nepasidaro 00.
O dar radau keistą PCI plokštę iš Izraelio- kažkoks tipo “security”. Pati PCB tai kastruota tinklo plokštė su BOOT ROM. Jei bus azarto, bus galima pasinagrinėti šitą kodą.
Taigi, be normalaus asemblerio, koduoti ROMą labai sunku. O tiek turėjau planų- panaudoti C kalbą ROMe ir PC kompiuterį panaudoti kaip mikrokontrolerį. Kam? Ogi smalsu. Nebent PCI kompiuteriai jau tikrai valgo 32 bitus ROMe.
O grynai asembleris tai NASM. Jam puikiausiai kompiliuojasi. Tikriausiai komentaruose bus pilnas komplektas NASM kompiliatoriui.
P.S. Originalus Y2000 ROMas.
Žinot koks dabar retas kompiuteris? Aišku ne koks XT/AT/286, kuris retas dėl to, kad jų buvo mažai, o pirmieji 386. Todėl, kad jie jau seni ir dar dėl to, kad buvo neteisingos batareikos. Kol kas dar neradau nei vieno 386 (486SX) kur nepažeista motininė plokštė.
Sakysim randam tokį ekskliuzyvą:
Atrodo viskas normaliai- tikra laiko kapsulė. Vienintelė bėda- korpusas ne visas (o jis egzotiškas) ir biški kažkas išėmė kietą diską su … kampiniu šlifuokliu? Tačiau pagrindinė bėda- žalias daiGtas.
Atrodo viskas kaip normalu- sena batareika, tiksliau akumuliatorius. Dulkės. Tačiau tai NiMh (ir NiCd veikia panašiai) chemija. Su laiku išvarva elektrolitas. O jis labai keistas ir kiek šarminis. Keistas todėl, kad labai smagiai valgo varį, o šarminis- tai jis traukia iš oro drėgmę. Nulupam batarkę:
Čia dar gelytės. Čia buvo varis.
Matosi, kad PCB apsauginis lakas dingo. Ir varis paėstas. Labai pasisekė, kad varis nenuėstas kiaurai. Tačiau takeliai prie L1, C1, RA8 ir C47 irgi be lako. Čia nuėdė kažkiek. Dar neaišku kaip atrodo po kištuku. Tačiau blogis nepasibaigė- jis šliaužia. Netgi kiauriai per VIA.
Matosi, kad chemija perlindo per VIA (ir juos pagriaužė). Taip pat, matosi, kad pasikeitė spalvos (vadinasi šarmas palindo po laku) ar net kai kur grynas varis. Kai kur gal net nugriaužė takelius.
Jei turite pažeista PCB tokios chemijos, perplaukite PCB su actu. Silpna organinė rūgštis pašalins šarmą ir nesukels daugiau bėdų. Poto stipriai perplaukite su muilu, daug švaraus vandens, ir jei galima- distiliuotas vanduo ir spiritas. Poto drąsiai kaitinkite PCB ant ~80℃ radiatoriaus.
P.S. PCB netestuota. Daug vilčių kad veiks, nes pažeidimas toli nuo čipseto.
Atsiuntė vienas žmogus į linką youtubėjė, kur žmogus kaip stebūklą aiškino apie germanio tranzistorius, pnp ir npn ir, o dievai, apie žemė = pliusas. Beja, kalba buvo apie Uher magiuko stiprintuvą.
Todėl trumpas bambesys- koks skirtumas (jei neimti subtilybių), koks ten žemės potencialas, iš ko padaryti tranzistoriai- germanio, silicio, galio arsenido ir kokio nors karbido1. Yra pnp ir npn tipai ir jie, supaprastintai skiriasi tik srovės tekėjimo kryptimi. Ką ir rodo ta strėliukė.
Senoviškuose žurnaluose netgi kartais rašydavo- “schemą galima paleisti ir su kito tipo tranzistoriais, tik reikės pakeisti maitinimo poliariškumą“.
Ar germanis geresnis? Bendriniu požiūriu tikrai ne. Ir brangesnis, ir su temperatūra nėra gerai. Ir tikrai kažkaip nesigirdi apie germanio viršenybę. Gal kažkiek, specifinėse schemose, kur reikia mažesnės įtampos ant perėjimo. Gal kaip diodas- detektorius. Gal kokie specifiniai aukšto dažnio stiprintuvai…. Ir tikrai ne “šiltas lempinis garsas”. Šito kliedesio nepakenčiu. Mano giliu įsitikinimu- stiprintuvas turi tik stiprinti. Išeinantis signalas turi atitikti įeinantį, skirtis turi tik amplitudė. Ir galimybė paimti daugiau srovės. Jei reikia “šilto lempinio garso”- tembro ir efektų filtrai jums į rankas.
Išsibambėjau 🙂
Elektroninėse atliekose buvo atvežta gal paletė NOS1, nenaudotų, originaliose dėžutėse Cisco Access Pointų. Kelis paėmiau pabandyti ir mano nelaimei, pagal geras Cisco tradicijas, firmwarė viduje buvo “valdoma iš serverio”. T.y. tokia firmwarė, kuri skirta didelėm įmonėm, kur visokie prietaisai patogiai valdomi ir specialaus “kontrolerio” (serverio). Ir įjungimo metu, likusi firmwarė ir konfiguracija užsikrauna ir nieko nereikia individualiai konfiguruoti.
Pats AP gana elegantiškas, palaiko 2 ir 5G dažnius, POE ir panašiai. Patingėjau tada aš ieškoti kaip juos paleisti ir keliasdešimt jų išardė. Keli liko, ir iš neturėjimo ką veikti (ir su slaptais kėslais) aš nutariau perrašyti jų programinę įrangą į “user friendly” ir “Self containing”. Tam reikalui reikia Cisco serial kabelio (realiai kogero TTL lygio COM kabelis, netikras RS232). Netikėtai aš tokį kabelį turiu.
Nustatom kompiuterio IP adresą: 10.0.0.1 (255.255.255.0). Bet nežinau, ką padariau, kad mano laidinis ryšis turi du adresus:
Ethernet adapter Ethernet:
Connection-specific DNS Suffix . :
IPv4 Address. . . . . . . . . . . : 10.0.0.1
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 10.0.0.254
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 10.0.0.2
Terminalas 9600.8.n.1, ir konsolėje matome informaciją, kaip kuriasi AP savo keistam režime.
Pasileidžiam, tftpd64. Pasididinam “timeout” iki kokių 30 sekundžių. DHCP nustatymuose parašom, kad duotų IP adresus tame pat potinklyje. Ir log langelyje matome, kad AP pasiėmė adresą. Nenustebkite, kad adresas kaitaliosis, čia greičiausiai Tftpd bėdos. Base aplankas nurodo į ten, kur yra firmware failai.
Terminale kartais reikia paspausti ENTER, kad atsirastu command promptas “>“.
Pirma komanda: enable
slaptažodis: Cisco
Jei AP jau turi kokią nors konfiguraciją, reikia nuspausti “mode” mygtuką, išjungti prietaisą ir vėl įjungti laikant mygtuką. Ir tik po kokių 20s, LEDas pasidarys raudonas, o terminale parašys, kad mygtukas nuspaustas, tada jį atleisti. Tada AP persikraus į avarinį “image” ir gal slaptažodis nusimuš.
Suveikus slaptažodžiui, AP command promptas pasidaro su “#“. Vadinasi dirbame “root” teisėmis.
sh ip int brief ← pasitikrinti ip. Šį komanda parodo, ar AP pasigavo adresą iš DHCP. Teoriškai galima rankomis nustatyti tą adresą terminale. Bet ten daug komandų. Paprasčiau vieną kartą susikonfiguruoti tftpd/dhcp ir viskas veikia.
Dabar kogero reikia parašyti šią komandą (arba sekančią), kad veiktu komanda “archive”. Kokią komandą? Priklauso nuo originalios firmwarės versijos.
debug lwapp console cli arba debug capwap console cli (c l i , i trumpoji)
Ir pats firmware įkrovimas. Pačios firmwarės jau nėra seniems prietaisams pas Cisco. Jie dėjo skersą ant savo senų produktų. Gal kokia webarchive gal rastumėt… Man padėjo guglės paieška ir kažkoks geras žmogus, kuris į githubą padėjo “testavimui” tuos image. Pasiguglinam apie firmwarės versijas ir kaip failai vadinasi. Mums reikia pilnaverčio, “standalone”, “self managable” failo. Nusikrautą imagę reikia pervadinti į defaultinį pavadinimą jei darome avarinį užkrovimą. Tačiau darant “mano” metodu, tereikia parašyti failo pavadinimą į komandinę eilutę:
archive download-sw /force-reload /overwrite tftp://10.0.0.1/c1130-k9w7-tar.tar
Poto bus siaubingai daug teksto terminale, ir tikrai palaukite iki galo. Pilnas softo perrašymas užtrunka kelias minutes. Palyginimui, palieku putty log failą. Ir aišku palieku tftpd log failą (ten pasimato, kokius failus AP bando nusikrauti). Ten matosi normalios AP užklausos viso proceso metu ir per pirmą normalų užsikrovimą.
Toliau užtenka eiti į naršyklę, suvesti DHCP priskirtą IP adresą ir konfiguruoti AP. Pirmo prisijungimo vartotojo vardas: Cisco, slaptažodis: Cisco
Sukonfiguruoti AP per WWW yra dar vienas tikras questas, nes Cisco pasistengė viską padaryti kaip galima sudėtingiau. Gal yra tokiems AP koks user friendly firmware?