Gerberiai, kas tai yr?

November 19th, 2020

Norint pagaminti “Spausdintą schemą su integriniais grandynais" (bliaaaa), o kalbant tarmiškai- PCB su mikroschemom, reikia paruošti techninę dokumentaciją (gerber failus nu). Tai iš esmės failai su primityviais tekstiniais įrašais, skirtais senoviškom staklėm ir ploteriams. Dabar tos staklės gudresnės, bet failų standartai išliko tie patys. Visus failus galima atsidaryti su teksto redaktorium ir pažiūrėti ir net paredaguoti. Tačiau ten labai daug skaičiukų ir galima lengvai suklysti. Todėl yra sukurta daug brangaus softo, tačiau dažniausiai to softo ir nereikia, reikia tik pažiūrėti ar tavo PCB gražiai atrodo ir ar nėra pridaryta nesamonių.

Aš PCB užsakinėju pas Seeed, ir ten visada gerai veikdavo jų Gerber Viewer. Tačiau pastaruoju metu jis pradėjo blogai veikti arba visai neveikti. Taip pat dažnai neatsidaro jų Eagle scriptų failų nuorodos.
Seeedstudio skriptas (CAM job) kuris dar generuoja papildomą drill failą tinkama ir kitiems gamintojams.
Skriptas tinkamas visom senom, ne autokadinėm Eagle versijom. Ant autokadinės nebandžiau, rodos ten yra build in seeed pluginas. Bet aš nesu toks turtingas, kad mokėčiau autokadui mėnesinius pinigus už kastruotą versiją. Aš kaip tikras oldas naudojų paskutinę Cadsoft versiją, portable (jei suprantat kas tai yr).

Todėl aš kiek papačinau esamus jų skriptus, pridėjau, kad generuotu du drill failus. Seeed studijos su išplėtimu .TXT, o “normalus"- .pTXT.

Gautus tekstinius failus (10 vienetų, jei 2 sluoksnių PCB) galima sumaitinti mano rastam web gerber vieweriui. Nelabai supratau kas per licenzija, bet tai grynas javaskriptas, todėl galima redaguoti kodą. Palikau nuorodą į autorių, kad jis labai nepyktu. Kiek papačinau tą žiūreklį ir jis dabar gali rodyti ir seeed iškreiptus failus.

Tam net sukuriau atskira puslapį, kurio nuoroda bus meniu dešinėje arba tiesiog čia.

Vaizdelis turi gauti toks, tik visaip sukinėtis, kad apžiūrėti iš visų pusių:

sintetine PCB

CPU upgreidas ir prisipažinimas

October 26th, 2020

Mano senam kompui reikia upgreido, bet primiausia aš tingių, o antriausia pas mane daug keisto softo kuris velniai žino kaip dar veikia ir kur reikėtu gauti installus. O suknisti (legalūs!) windowsai nenori peršokti per kelias kartas ir nepasileidžia. Arba mėlynas ekranas ar pastovus persikrovimas. O dar, mano reikalavimai- kiek daugiau SATA lizdelių ir PCIe slotų.
Ir pripažinu savo klaidą, kad pirkau tokią blogą motininę plokštę. Ar galima įkvėpti naujas galias į šį, 8 metų antikvarą? Aišku SSD, swap ir tmp tai net SSD RAIDas (stripe) iš triju vienetų. Netgi dvasinės ramybės (nugi kompo žaidimų) diskas irgi SSD. Tik backup ir neoperatyvių duomenų diskai mechaniniai.

i series CPU
[i7-4770][i3-3220][i7-2600][i5-3350P]

Pirmiausia reikia dirbti firmoje kuri utilizuoja kompus ir monitorinti gaunamus procesorius. Ir pagaliau gavau lygtai tinkamą, reikiamos kartos (prieš tai rašiau, kad turiu gerų procikų, bet netinka) procesorių- i7-3770. Inkišam ir … nieko. Juodas ekranas ir POST 69.
Gal netinka trečia karta? Surandam ekskliuzyvą- i7-2600. Irgi neveikia. dedam i5-3350P. Irgi neveikia. Kas per nesamonė, nes lygtai šitas procikas buvo originalioje komplektacijoje. Negi vėl reikės sudėti i3-3220? Jis vakar dar veikė… Staiga prisiminiau, čia gi ta suknista motininė… Ji neveikia dėl to, kad jai kažkas nepatinka su video plokšte- BIOSas kažkaip nesugeba pakurti “smurtinės" plokštes.
Ir tai kažkaip susije su procesorium- gal koks nors PCIe perpaskirstymas pradiniam BIOS inicializavime kuris feilinasi. O sprendimas paprastas- reikia tik pakeitus procesorių įkišti senovinę video plokštę. Pas mane tam reikalui negti mėtosi sena video… Nu ir… i7 ir sena video peršoko per POST 69 ir pereina į POST 00 (kontrolė perduota OS krovikui). Po šios manipuliacijos Windows užsikūrė ir jis vėl rado krūvą “naujų" įrenginių. Poto dedam atgal “smurtinę" video plokštę ir viskas veikia. Tik reika dar pakeliui priploti DP kištuko kūrėjus arba surasti DP kabelį su fiksavimu.
Tai dar ne visi šios motinos fintai- turiu kažkokį USB daikčiuką (nepamenu- ar tai viena iš pelių ar USB “flešiukų") kuris neleidžia irgi prašokti POSTus- stringa!

CPU upgreidas
Gal mano žaidimukai geriau veiks? :)

ARM:0020 smurtinis hardcorinis žaidimas Rogue

October 22nd, 2020

Jau rašiau, kad internetuose radau Rogue žaidimo source code kuris netikėtai susikompiliavo ant mano kompiuterio. Deja ant kitų kompiuterių jis neveikė. Bandžiau tokį iškrypimą, kaip perkelti source code į Microsoft Visual Studio Express, bet ten tikriausiai iš principo negali veikti jokie senoviški C kalbos failai- microsofto programa pranešinėjo keistas klaidas. Numojau į tai ranka ir pagalvojau- jei kompiliuojasi su gcc, tai kodėl jis nesikompiliuoti ir su ARM gcc (AVR tai gal per silpnas). Pasirodo, puikiausiai kompiliuojasi. Teko tik išpjauti dali paprogramiu susijusiu su failais ir prikabinti savo. Taip gavosi toks monstras:

Rogue running on STM32F103 MCU USB

Tai USB-COM-Rogue su STM32F103. Tereikia tik USB terminalo. Po tiekos programinimo, manau UART versija dar greičiau gautusi. Dar beliko viską sukultūrinti, nes dar liko visokių bugų- pvz. po žaidėjo mirties, jis kaip zombis toliau gali vaikščioti po labirintą. Nesvarbu, kad jau parodė mirties ekraną- turėjo pasileisti žaidimas iš naujo, bet kažkaip neišsivalė buferiai ir viskas liko iš seno žaidimo. Visiškai nesupratau dėl TERMCAP failo- vieną įdėjau ir veikia, įdėjau antrą- neveikia. Vėl įdėjau pirmą- neveikia. Veikia tik iš vakar dienos backupo. Originalus source kodas gana užsuktas. Užtat ir ant ARM gcc kompiliuojasi be jokių “warningų".

Žaidimo source code ir kompiliuotas HEX. Dėmesio! Binaras gaunasi didelis (92kB ir neaišku kiek RAM jam reikia) ir tikrai neveiks ant BluePill. Jis veikia ant mano “white pill“, su pilnaverčiu STM32F106RET6.

SSR skrodimas

October 20th, 2020

Veikė viena tokia relė, veilė, o poto neveikė. Rėlė ypač sena, gal kokių 80-tųjų praeito šimtmečio laikų, tai dar neužpilta kompaundu. Kaip tik patogu išskrosti ir parodyti, kad viduje minimaliai detalių ir rėlių kaina dirbtinai užkelta.

SSR rele kodak
Labai jau silpna relė, tačiau prabangus gamintojas. Gal net “made in USA" iš tikro. Tačiau ji numiro. Numiro tyliai, be ugnies ir dumų. Paprasčiausiai apkrova pradėjo nebeveikti.

Skrodimas paprastas:
SSR rele kodak
Korpusas, valdymo ir filtravimo grandinė, dar korpusas, simistorius, metalinis pagrindas su berilio keramikos (ar panašias) izoliacija. Buvo dar balto tepaliuko, bet nuvaliau.

Visi trys rezistoriai, DALE, 47omų. Sveikas tik centrinis. Kiti rodo begalinę varžą. Kondensatorius gal geras, simistorius (PH 655-203) lygtai nesprogo, o mikroschema (4kV izoliacinė SSR valdtmo, DP61K-655202 liko nepatikrinta).
Žemojoje pusėjė lygtai veikia, nes skambinasi kaip diodas. Ten tos mikroschemos dalis, rezistorius ir kažkas TO-92 korpuse su skaičių virtine, bet ne pavadinimu (655201).

Manau brangiausias šiame rinkinyje tai Kodak vardas ir korpusas. Visą kitą- centų vertės. Ir matyt didelis tiražas, nes viskas turi savo kodą: 6552xx. Gerai, kad dar rezistorius ir kondiką “neužkodavo".

Atari 2600 - RAM minimalizmas

October 13th, 2020

Va, noriu pabambėti, kaip tikras senolis. Buvo ir yra toks aparatas- Atari 2600. Tai vienas iš kompiuterinių žaidimų pradininkų. Tačiau ne apie tai, o apie programuotojus. Va toks vaizdelis:
Atari 2600 river raid
Tai kogero vienintelis žaidimas kurį dar galiu pažaisti ant Atari 2600 nesudaužydamas televizoriaus ir nesunaikindamas savo psichikos. Tikrai žaidžiamas žaidimas, kažkas vyksta, kažkoks garsas, net medeliai su namukais nupaišyti- tai tik dekoracija. Viskas sukišta į 4 kilobaitus. Bet esmė tame, kad šis žaidimas veikia ant “kompiuterio" kuris turi 128 baitus (BAITUS! Karlai!) atminties. Šis kompiuteriukas neturi jokio video buferio. Iš esmės tai 6507 mikrokontroleris kuris “gyvai" generuoja video vaizdo signalą. Kažkas, kai programavo, turėjo skaičiuoti CPU taktus ir ekrano mikrosekundes, kad gautusi žaidimas. Va ką reikia pagerbti. Dar labiau, seni bambekliai ir pasikėlę “arduino" programuotojai turi nusilenkti tetulei Carol Shaw už šį stebuklą.
Read the rest of this entry »

ARM:0019 Printeris iš kalkuliatoriaus 2

September 27th, 2020

Buvo straipsniukas, kaip aš sugadinau Citizen CX-123II kalkuliatorių. O dabar šio straipsniuko pratesimas. Toks ilgas tarpas gavosi todėl, kad aš tik mokinuosi. O ir kažkaip įtariu, kad į Bluepill plokšteles kinai sudėjo kažką mažesnio. Nes kartais labai magiškai projektas pradėdavo daryti nesąmones. Todėl labai ilgam sustojau, nes reikėjo savo PCB pasidaryti ir sunaudoti turimas mikroschemas. Dabar mano testavimui teko didesnė mikroschema STM32F103RET6, kuri rodos turi 512K ROMo ir 64K RAM. Tačiau spėju, kad galutinė programa turi tilpti ir į bluepill, jei tik Kinas labai nepataupė.

ARM STM32F103 printer device - calculator impact printer

Šis “printeris" susideda iš kelių modulių: USB modulio, tarpininko tarp USB printerio ir mano citizeno programos. Šio eksperimento pamoka- USB pertraukimas turi būti mažesnio prioriteto nei machaninio printerio. Taip, mechaninis printeris veikia grynai per pertraukimus ir visi “taimingai" svarbūs.
Deja, šis projektas mano nusibodo- aš pilnai nesupratau, kaip veikia spalvos perjungimas ir pirmo (paskutinio) simbolio spausdinimas. Dabar printeris daro tai, kad jam nurodyta- spausdina skaičiukus iš bet kokio teksto paleisto į printerį. Jis kiek stengiasi filtruoti, tačiau vistiek dažnai spausdina nesąmones. Ir kartais užsispiria ir prispausdina ne to, ką norėjau.

Printeriui užtenka energijos iš USB lizdo. Kad paleisti reikia tik dviejų n-kanalo laukinių tranzų (su 3V tolerantišku valdymu, iš kompiuterio motininės plokštės, gal dviejų diodų. Ant PWM motoro valdymo reikia nedidelio elektrolitinio kondensatoriaus.

Ir aišku visas source kodas ir kompiliuotas binaras. Dėmesio! STM Cube projektas neatitinka pačio kodo, pergeneravus, gali nebesusikompliuoti. Dabar binaras yra skirtas STM32F103RET6 mikroschemai.

STM32F103RET6 USB printer device source code and binary - printing on Citizen CX-123II calculator printer.

Buvo smagu.

Zeimeris ir Kreizas PCB pjaustymui

September 19th, 2020

Padariau sau keletą PCB su kiek didesniu STM čipu (tikrai originaliu, kurių šimtais išmetė viena įmonė). Ir viską sutalpinau į 5×5cm plokštelę. Tačiau mažiausia PCB yra 10×10cm. Taigi, copy-paste ir turim jau 4 vienodus dizainus. Reikėtu, kad kinai supjaustytu, bet tada išauga PCB gamybos kaina. O kai išauga kaina, tada atsiranda ne tik mokesčiai, bet ir suknisti muitinės tarpininkai. Todėl nutariau pats susipjaustyti.
Norėjau pjaustyti su deimantiniu diskeliu, bet fazendoje tokio neturiu. Užtat turiu “popieriaus dulkių" baldinės plokštės atraižų ir kelis stalčių “bėgelius". Vienas momentas apie bėgelius- tai kokybiški, Japoniški bėgeliai iš dauginimo aparatų ar kokios nors kitos technikos. Kokybė ir tvirtumas nesulyginama su pigiena kur dedama į baldus mūsų krašte. Puikiaisiai atsimenu, kad atidariau vieno dauginimo aparato stalčių ir užlipau ant jo su savo nepilnu 100kg. Ir stalčius atlaikė. Tačiau šiam projektui gal tiks ir buitinis šlamštas. Susikonstruojam Zeimerį arba Kreizą.

PCB kreizas pjaustymas
Read the rest of this entry »

IBM Selectric - mechaninė beprotybė

September 13th, 2020

Tai dar vienas biudžeto naikinimo objektų. Tai, jau galima sakyti, senovinė rašymo mašinėlė IBM Selectric II. Ši mašinėlė kaip ir elektrinė, tačiau elektra suka tik motorą. Viskas toliau veikia grynai mechaniškai. Kaip sakė vienas žmogus iš interneto- tai mechaninė beprotybė (mechanical maddness).

IBM Selectric typewrite rasymo masinele
Read the rest of this entry »

Rogue: hardcorinis smurtinis žaidimas

September 10th, 2020

Yra toks tekstinis (!) žaidimas pavadinimu Rogue. Pasinorėjau pažaisti, pajusti tikrą 2D grafiką (smegenyse), todėl paieškojau guglėje. Radau, bet nepatiko valdymo mygtukai. Todėl nutariau persidaryti į savo variantą, tuo labiau, kad source kodas yra. Kompiliuojant pasipylė srautas “warningų", o aš mėgstu, kai kompiliuojasi visiškai be nieko… Teko pavargti kelias dienas- senovės programišiai labai mėgo “nutylėjimus" ir ignoravo viską iš eilės. Dabar rezultatas sumažėjo iki vieno įspėjimo:


> “make.exe" all
cc -g -c -DUNIX -DUNIX_SYS5 -Iinc -MMD -MP -MF"build/levo.d" src/levo.c -o build/levo.o
cc -g build/monster.o build/ring.o build/rogue.o build/levo.o build/random.o build/machdep.o build/object.o build/zap.o build/play.o build/main.o build/inventory.o build/save.o build/pack.o build/room.o build/level.o build/instruct.o build/init.o build/hit.o build/move.o build/score.o build/trap.o build/throw.o build/use.o build/message.o build/spec_hit.o build/lcurses.o -lcurses -Wl,-Map=build/../rogue.exe.map,–cref -Wl,–gc-sections -o build/../rogue.exe
/usr/lib/gcc/i686-pc-msys/6.4.0/../../../../i686-pc-msys/bin/ld: symbol `stdscr' missing from main hash table
size build/../rogue.exe
text data bss dec hex filename
114789 22240 5405 142434 22c62 build/../rogue.exe

> Process Exit Code: 0
> Time Taken: 00:01

Mano indelis- kogero visi “h" failai ir “makefile". Sekantis etapas- šis smurtinis žaidimas turi suktis ant mikrokontrolerio.

Rogue source code C ir sukompiliuotas EXE failas. Veikia ant Windows 10.

Kaip susikompiliavo? Tikrai nežinau. Mano kompe pilna visokių C kompiliatorių ir kažkuris pasirodo kompiliuoja ir windowsinius exe failus.

Biški nesąmonių pirkau

August 31st, 2020

O, tai tik dalelė nesąmonių kur taškomas biudžetas:

mini tesla coil
Mini tesla coil. Tikriausiai veikia radio dažniu. Degina pirštus. Kaina- 1.91€ viso.
Read the rest of this entry »

Unhappy Tikbalang