lørdag 4. august 2018

Adlib Music Synthesizer Card

Det var en gang, langt mer spesifikt den tiden da altfor mye tid ble brukt foran dataen. Det beskriver vel egentlig altfor mye av livet mitt, men tenker mest på den tiden da foreldrene startet å kommentere på akkurat det og dataen det gjaldt var vår 386DX med 25 MHz og hele 4 MB RAM. Den gangen hadde vi ikke luksusen av innebygde lydkort i datamaskinene med et 256 bit lydbilde, jeg hadde den 1 bit innebygde høytaleren i datamaskinen og lenge så var det mer enn nok... Helt til man fikk høre hva et lydkort virkelig kunne gjøre for spillopplevelsen!

Kongen på haugen og det som var støttet av ALT var lydkortet fra Ad Lib, et kort som jeg i etterkant har fått høre egentlig het Adlib Music Synthesizer Card, og jeg drømte om å eie noe slikt en dag! Nå skal det da sies at når 386 tiden hadde rullet innover oss så var allerede teknologien steike gammelt, men spillene mine var alt annet enn det siste og Adlib-kortet var derfor første-valget på alle der man hadde et valg. Det hører selvsagt til historien at jeg til slutt endte opp med en rimeligere klone - en såkalt Soundblaster, men det er sikkert en historie for en annen dag.

Tilbake til kortet, så var disse produsert i teknologi-mekkaen som var Kanada på det tidspunktet så langt tilbake som i herrens år 1987! Selskapet dominerte lydkort-markedet på tiden da ingen hadde lydkort eller visste om at det var en mulighet, da ting virkelig tok av så tapte de på pris ovenfor klonene på markedet i tillegg til at teknologien deres lå et stykke bakom. Jaget etter å ferdigstille den neste versjonen av kortet, det som virkelig skulle sementere plassen deres på toppen julegave-listen ble utsatt og utsatt helt til det meste av tidsskrifter nesten ikke lenger viet plass til å kommentere på utsettelsene. Først i 1992 kom oppfølgeren, men så alt for sent og sjappa gikk under med et brak.

Kortene forsvant og alt vi har igjen av dem nå er de gamle titlene til maskinene, det lille antallet kort produsert har for lengst blitt resirkulert med et fåtall av dem sirkulerende på ebay med en prislapp langt forbi hva man har hjerte til å bruke på slikt. Ikke fordi jeg bruker LITE penger på sånt, mer en prioritering da det er så mye man har lyst på så da må man nesten spre det litt utover på flere ting.

Inn kommer et åpent prosjekt for å lage en replika av kortet, det neste som skjer er selvsagt at jeg formelig kaster pengene mine etter det. Strengt tatt så vil det si at jeg tok Gerber-filene, leverte dem inn til SeeedStudio over juleferien og siden har PCB-ene blitt liggende. Hvorfor? Fordi, flytting og ingen peiling på hvor alt man skulle komme til å trenge har havnet.


Selvsagt, rundt juletider så bestilte jeg opp det meste av det som kunne oppdrives på ebay og AliExpress for å finne rimelige komponenter - det meste av IC-er var enkelt og rimelig å få fatt i. I og med at dette tross alt er et lydkort så ville jeg ikke skorte på kvaliteten for mye, så her ble det skikkelige beige resistorer som skulle brukes - her skulle det ikke inn en eneste billig blå resistor, selv om de også er fra Kina. 8.2K, 12K og 1.5K er verdier utenom det vanlige og derfor ikke en del av resistor settene jeg hadde så disse måtte jeg bestille separat.

Volumkontrollen er oppgitt å være av typen Bourne og det gjenstår å se om disse er verdt 60 kroner stykket, eller om jeg kan komme meg unna med å bruke en femmer isteden? Vet aldri når det kommer til lyd, kvalitet og analog lyd er en ømfintlig sak der det dyreste ofte er det eneste akseptable alternativet.

Tantalum-kapasitatorer har jeg liggende et lite utvalg av, men de er svindyre så disse måtte bestilles opp separat for å få nok av dem til to kort - fra alle andre plasser enn Kina er de rundt 8 kroner stykket og man trenger 6 av dem for ett kort! Elektrolytten på 220uF er av typen axial, en type som ikke har vært produsert siden slutten av 90-tallet så tilgjengeligheten på disse har vært begrenset til de litt mer seriøse sjappene. Utover de vanlige bypass kapasitatorene på 100nF (104) så trengte man også en på 270pF, en snål verdi som heller ikke fulgte med i noen av settene jeg hadde.

Jepp, og så manglet jeg en vid socket for 24-pinner, jeg visste ikke en gang at de kom i den størrelsen så da må jeg bare smøre meg med tålmodighet og vente på at den ankommer fra den ene selgeren i Spania som jeg fant. Håper bare på at dette ikke er enda en av de kinesiske sjappene som later som at de er plassert sentralt i Europa for å få et ekstra salg, har opplevd det før og man blir nesten frådende utålmodig når man venter i 4-6 uker på noe som skulle vært rett rundt hjørnet.

Hva annet som mangler? Jo, det var selve monteringsplaten - en keystone 9202 bracket som er den man skrur inn i for å feste kortet i maskinen. Ser ut til at disse er frustrerende vanskelig å få fatt på, den eneste jeg kunne finne som kunne levere noe slikt var Mouser i USA - de dikterer da sin egen pris, men det er nok DHL med sine 145 KR ekstra for å få pakken levert til deg som koster skjorta. Forsøker man da å holde seg under import-grensen på 350 KR så har man knappe 200 å handle for. Måtte derfor velge bort en del komponenter bare for å få de tingene jeg visste man ikke kunne få noen andre plasser, så derfor bestilte jeg like fullt fem av den Keystone-saken for å ha nok til å ikke trenge å bestille noe mer derfra på en stund. Alt annet tror jeg man fint skal kunne få fra ELFA DISTRELEC her i Norge - fortsatt 60 KR som går bort i porto, men ingen grense og man får alt annet hva man ønsker til en premium pris!

Det var vel omtrent så langt som jeg kom i denne omgang, må bare vente og se på hvor lang tid det eventuelt kommer til å ta før alt er i hus. Mouser med DHL i bakhånd tar sikkert bare noen dager, resten må jeg sikkert vente et par uker på...

lørdag 28. juli 2018

Pi1541 Programvare og konfigurasjon

Har brukt de siste månedene, i alle fall litt av den ledige tiden de siste månedene, på å fikle med min Pi1541. Den er en utvidelse som plugges på Raspberry Pi 3B eller 3B+ for å gi den muligheten til å late som om den er en 1541-diskettstasjon sett fra en Commodore 64. Selve maskinvaren har jeg skrevet en del om allerede, selve programvaren har Steve White stått for og til å være så tidlig i utviklingsløpet så har den allerede støtte for det aller meste man kunne komme til å trenge.

For å komme i gang trenger man et SD-kort som skal plugges inn i Raspberry Pi-en, dette må være formatert med filsystemet FAT32 - noe som vil si at så lenge man ikke eksplisitt har gjort noen forsøk på å endre på kortet ut av pakken så skal det fungere helt fint. Størrelsen er opp til en selv, men dette er ikke spesielt kravstore systemer og vil tro det billigste du får fatt i (mest trolig 16 GB) likevel vil kunne holde på så og si alt noensinne produsert for datamaskinen. Deretter følges følgende steg:

  • Last ned siste versjon av firmware til Raspberry Pi fra produsenten, kopier filene bootcode.bin, fixup.dat og start.elf fra boot-katalogen til roten av SD-kortet.
  • Last ned Pi1541.zip fra hjemmesiden, pakk ut alle filene til roten av SD-kortet.
  • Neste steg er selve firmwaren til en 1541-diskettstasjon, den enkleste måten å få tak i en kopi av denne er å gå til nedlastingssiden for Commodore 64-emulatoren VICE, last ned en installerbar kopi eventuelt bare kildekoden øverst på siden (.tar.gz-filer kan enkelt åpnes ved bruk av 7zip). Uansett, kopier filen dos1541 fra katalogen data\DRIVES til roten av SD-kortet.
Alt skal nå være ferdig oppsatt for bruk, stapp det du eventuelt trenger av programvare-filer (d64-format) i katalogen 1541 for å ha disse tilgjengelig under bruk. Likevel så er det mye man kan konfigurere slik at man får oppsettet akkurat slik man ønsker å ha det, disse endrer du ved å redigere på filen options.txt som nå ligger på SD-kortet. Uansett så har du nå oversikten over hvordan man oppgraderer de ulike delene, men husk at det kan være en god ide å lese gjennom konfigurasjonen som følger med de nye versjonene ettersom ting kan ha endret betydning eller format.

Oppsett av display slik de modulene jeg har solgt til en håndfull heldige personer er litt mer komplisert og krever en del teknisk informasjon om selve modulenes adresser - disse står ofte også på selve kortene og i tillegg må man ha oversikt over hvilken kontroller som står på LCD-modulen. Legger ut oppdaterte versjoner av filene jeg bruker på min dropbox, så skal det være enklere å håndtere disse uten å studere alle finurlige detaljer.


Som man kan se av bildene over så har jeg prøvd ut to ulike skjermer, begge er basert kontrolleren SSD1306 og er svært lik utover orienteringen - det som skiller seg er antallet linjer med kun 2 for det minste. I praksis så er det fint med den ekstra oversikten man får ved å bla i lange lister med 4 linjer tilgjengelig, men det minste er langt raskere i bruk siden det er mindre som må tegnes opp. Den første konfigureres som ssd1306_128x64 mens det minste er ssd1306_128x32.

Den detaljen som sikkert kommer til å påvirke en mest under bruk er nok deviceID, som standard benyttes 8 - det er den samme 8 man kjenner igjen fra kommandoen load "$",8. Bruk av noen andre innstillinger var og er kun relevant med de som har mer enn en diskettstasjon, generelt sett fordi så mye av programvare/spill er hardkodet til å se etter filene sine på enhet 8 - med andre ord så vil man sjeldent kunne laste inn noe fra andre enheter!

Det var vel det, ikke så veldig mye om praktisk bruk denne gang - kanskje neste gang jeg får ånden over meg til å feste noe til papiret (skjerm?)...

onsdag 25. juli 2018

Pi1541 Emulering av diskettstasjon

Man har nostalgi for det meste fra barndommen vår, men når man omsider blir gammel så har man ikke lenger hverken tålmodigheten eller tid nok til å laste inn ting fra kassett. Derfor så har utallige frivillige folk med langt mer innsikt i elektronikk enn det jeg kunne håpe på å en gang akkumulere, satt hodene sine sammen for å lage løsninger som laster inn alt fra SD-kort (eller tilsvarende) på noen få øyeblikk.

Commodore 64/128 fikk dermed sin SD2IEC etter noen år, denne er ment å emulere en 1541-diskettstasjon og kombinert med enten JiffyDOS eller noe slikt som Final Cartridge 3 så er innlastingstiden håndterbar. Bakdelen er at den ikke fungerer, i alle fall på alt for mye det jeg prøvde å laste inn via den - hvorfor? Årsaken ligger i at den originale diskettstasjonen er en tilnærmet komplett Commodore 64 i seg selv, mange spill og programmer laster opp egen programvare som skal kjøre på den og en SD2IEC er ikke stand til å gjøre noe med den koden - den gjør bare de grunnleggende tingene, resten forstår den seg enten ikke på eller så gjetter den bare på hva datamaskinen vil at den skal gjøre!

Løsningen på dette er en enhet som er i stand til å emulere diskettstasjonen i seg selv, den første av disse er den FPGA-baserte 1541 Ultimate II som med en med en ventetid på rundt 6 måneder og en prislapp på rundt 2500 kr etter import ble uaktuelt for min del. Kanskje hvis jeg kun fokuserte på Commodore-maskiner, men som du kan se av oversikten så har jeg ikke helt klart å begrense med til en produsent. Den andre løsningen er programvare som kjører på en Raspberry Pi 3B eller 3B+, Pi1541 av Steven White og det eneste man trenger i tillegg er en måte å få koblet til kablene.

Option B, fra https://cbm-pi1541.firebaseapp.com/

I utgangspunktet så lister nedsiden opp to alternative modeller, A og B, som rimelig enkelt kan snekres sammen på kjøkkenbenken med et lite utvalg komponenter av typen. A er det første utkastet som ble lagt ut, men denne har en del elektriske forenklinger som gjør at denne ikke er i stand til å fungere sammen med en annen fysisk diskettstasjon. Hvorfor det da? Fordi dette er 5v TTL-basert logikk og under bruk så er det mye strøm som passerer mellom dem, den vil fungere en stund og så kommer noen av komponentene på Pi-siden av ting til å begynne å smelte. B-modellen, den jeg dermed vurderte som det eneste fornuftige alternativet løser dette ved å bruke en 7406 chip - denne har som hensikt å tåle denne belastningen, selve designet skal være hentet rett ut av skjemategningen til den originale diskettstasjonen.

Personlig så liker jeg ikke å lodde sammen ting på perf-board, kretskort for prototyping, når jeg ser for meg bruk av det man skal lage i etterkant så ender de opp med å bli litt for skjøre i bruk så da foretrekker jeg heller å bare tegne dem opp i KiCad eller annen egnet programvare og så ta tingene derfra. Se til høyre for den elektriske skjemategningen jeg endte opp med, for det meste identisk med B-modellen bare at jeg la til en ekstra DIN-kontakt for å kunne koble på flere enheter på IEC-bussen uten bruk av splitter-kabel. Vel, det og så tenkte jeg at før eller siden så måtte noen finne på å legge til et LCD-display så da designet jeg inn denne tilkoblet I2C-bussen på Pi-en.

Uansett, med litt ukonsentrert tegning, form og farge så fikk jeg til slutt det som skulle kunne bli til et kretskort. Tok noen snarveier underveis ved å ta utgangspunkt i en mal for Raspberry Pi-moduler, såkalte Pi-hats, så da slapp jeg å selv fundere ut plasseringen av skruhullene og matche pluggene opp mot selve Raspberry Pi 3B-kortet. Kretskort først som sist med andre ord! Ja, man må til Kina for å få disse tingene gjort innenfor private budsjetter og så må man bare smøre seg med tålmodighet!



I skrivende øyeblikk så er det nå et par måneder siden bestilling, mesteparten av tiden brukt på å skru sammen kortene og leke seg med dem. Kun avbrutt av et par uker ferie i syden, sånn som må til for å overleve vinter/sommer her nord! Tilbake til dagens tema, kortene endte opp med å se ganske bra ut og i mellomtiden har den programvaren også fått lagt til støtte for I2C display basert på SSD1306-kontrolleren - den typen jeg allerede har liggende en liten haug av, awesome!

Strengt tatt så la jeg inn plass på kretskortet for varianten av størrelsen 128x32 mens den som til nå støttes er 128x64, så ikke full klaff på første forsøk - likevel så er sikkert støtten rett rundt hjørnet, i mellomtiden så fant jeg ut at den litt større varianten også fungerer fint selv om orienteringen ikke stemmer helt overens med knappene - måtte bare droppe DIP-socketen for 7406 chippen og legge inn ekstra avstand på pinnene til displayet for å gå klar av brikken.

Siden jeg endte opp med langt flere moduler enn jeg selv skal kunne makte å bruke på et og samme tidspunkt og allerede har en bøtte med reservedeler, så tenkte jeg at resten fint kunne selges via finn.no slik at andre også kunne få ta del i det siste og råeste innenfor Commodore-teknologi! Ikke alle som trenger display eller to IEC-utganger så endte opp med å lage en begrenset utgave og en komplett utgave av kortet slik at det ble en litt billigere variant å velge mellom. Ser ut til at alle jeg har solgt er av den komplette varianten, men sikkert fint å ha noe å velge mellom.


En ting jeg ikke hadde kalkulert med når jeg vurderte å legge noen av disse ut for salg var kvaliteten på delene som man får tak i, det er ingen problemer når man skal lage en av noe ettersom man alltid får langt mer enn man trenger - prøver man derimot å lage 10 av dem siden det var den mengden kort jeg har, så vil man finne feil.

I2C level converteren jeg brukte var den samme som på hjemmesiden, men fant ut at et par av dem hadde svakheter og måtte byttes ut med mye banning til grunn - kunne greit nok testes først ved å sette multimeteret på 200k Ohm og så sjekke at man fikk rundt 136K mellom hver av de fire kanalene. 7406-modulen var litt verre siden komponent-testeren jeg har ikke har hørt om denne brikken, bakdelen med å holde på med 40 år gammel teknologi - denne måtte testes på et av kortene og de som ikke fungerte enten førte til at Commodore-maskinen låste seg ved lesing eller så rapporterte den Device not present. Kastet rundt 8 av 10 brikker av varianten SN7406N, men av de dyrere jeg fikk fatt på stemplet 7406PC så fungerte alle av dem uten problemer - enten så var det første settet av dem grillet under transport (ingen anti-statisk pose, noe som er vanlig fra ebay dessverre) eller så var de bare langt skjørere og rett og slett ikke håndterer den rå kraften som er å finne i C64-maskinen!

Nok om maskinvare-siden av ting, det er programvaren som er den spennende delen av alt dette...

onsdag 18. april 2018

sudo make better stuff

3D printere og alt det der om mulige fremtidige bruksområder, fra gutterommet til verdensrommet. Jeg vet ikke hva jeg skal bruke den til, men nå har jeg altså kjøpt inn en Geeetech i3 Pro B. Da har jeg den altså, og som en klokke som bare viser korrekt tid to ganger i døgnet så har jeg hoppet på hobbytrenden - sånn bare i tilfelle de skulle vise seg å være fremtiden.

Jeg har fått herligheten skrudd sammen, men som alt annet der man estimerer tid så trodde jeg at mekanikken var det enkle og elektronikken den vanskelige - sånn var det ikke, men som med alt annet så bryter alt sammen når man fikler for mye i den ene eller den andre retningen. Når det kommer til selve utskriften så fikk jeg mye rart, den ovenfor til høyre er ikke akkurat et godt utgangspunkt og det var heller ikke den første. Her er de jeg har skrevet ut, fra eldst til siste tapre forsøk, på malerteip og uten, med termostaten på full "grillings" og behagelig sydentemperatur. Hastighet er selvsagt også en faktor - til sammenligning klarer de fleste av oss å male en låvedør, men å gjøre det hengende ut av bilen med gassen i bånn begynner å nærme seg David Copperfield-nivå av magi!


Den første av disse som fullførte kjentes ut som om den i et tidligere liv hadde vært en rosa makron, mykt som nystekt og sprø etter avkjøling. Sikkert en god ting når det kommer til makroner, altfor søtt for min så jeg er ingen stor kjenner, men tilbake til produksjonen så var denne et stykke utenfor kategorien brukbar. På nummer to ble det en del fikling frem og tilbake der det så ut til at materialene fløt noe bedre selv om det så ut til at man hadde en del separering mellom lagene. På den siste fiklet jeg med flow-instillingen og reduserte hastigheten i håp om bedre tider, tilsynelatende var solen på vei opp... inntil skrivehodet kolliderte med det den hadde skrevet ut før og så hoppet plutselig den ene motorreimen over et hakk!

Første steg er justering av utskriftsflaten, deretter justering enda en gang og til sist den aller siste gangen før man skriver ut. Fått det med deg? OK, javel da. Fremgangsmåten er å skru på maskinen, trykke autohome og så deaktivering av motorene via menyen slik at man kan justere denne slik at utskriftshodet nærmer seg glassplaten. Juster på skruen til høyre for å få den nogenlunde korrekt, legg et vanlig utskriftsark mellom hodet og glassplaten for å sjekke at man får litt motstand ved å bevege på arket - det skal ikke gå fritt, men heller ikke være så trangt at hodet graver seg inn i papiret. Dette gjøres på alle 4 hjørner, etterpå gjentar du prosedyren for å sjekke at ingen av de andre hjørnene har forskjøvet seg.


Prosessen virker omstendelig den første gangen, men når man får treningen på plass så går det kjapt å få dette gjort skikkelig - bedre å bruke 5 minutter for å slippe å kaste resultatet av se en timeslang utskrift. Noen sier man må gjøre dette hver gang og selv om dette høres ekstremt ut så tilsier min erfaring fra bygging av radiostyrte biler at dette fort kan bli et problem, metall mot metall kombinert med vibrasjon fører for til at ting begynner å skli ut. Dette kan man enkelt løse med locktite når den dag kommer at man blitt noe mer fortrolig med oppsettet av maskinen, inntil da så ender man opp med at justeringsskruene for reimer og utskriftsflate vil bevege seg over noen timer med aktivitet.

Med balansen på plass så skal man slippe kollisjoner som den jeg fikk, så da må man bare håndtere problemet med at utskriften ser ut til å ha separasjon mellom materialene - litt som om man har brukt altfor lite materiale. Prøvde først å endre på temperaturene, sånt som man potensielt gjør om man ikke har peiling på hva man driver med - funket uansett ikke selv om strømmen av materiale var noe mer stabil på 200 fremfor 180 grader for den PLA-en som fulgte med i esken (sikkert rosa fordi det er den de ikke har fått solgt så mye av). Jeg fant en god artikkel som detaljerte hvordan man kan justere mengden materiale benyttet, det man gjør er å bruke en linjal for markere henholdsvis 100mm og 120mm materiale. Man kan så sjekke hva maskinens produserer ved å be den om å spytte ut 100mm ved bruk av menyvalget Prepare Move axisExtruder.


Nå skulle du sikkert ha fått en pen trådvase under skrivehodet, for å sjekke om man har en tilstrekkelig stor haug så sammenligner du igjen med linjalen for å se om den eventuelt har benyttet for mye eller for lite materiale og på den måten får man noe å justere ut fra. Forholdstallet mellom materiale brukt og ønsket ganges opp med verdien Esteps/mm, denne finner du og eventuelt endrer du under menyen Control Motion Esteps/mm. Jeg hadde fra tidligere en verdi på denne satt til 93.0 mens det som kom ut av maskinen var 78 mm, så da var regnestykket som følger:

(ønsket mm)/(produsert mm) * (esteps/mm) = (ny esteps/mm)
100 / 78 * 93,0 = 119,2

Jeg gjentok en gang til for å være sikker på at ting ble helt korrekt, forskjellen var i alle fall ganske kraftig. Materiale produsert i andre omgang var 101 så 100/101*119,2 resulterte i en ny verdi på 118,0. Tross alt så var vi nå mye nærmere de reelle verdiene så da var tiden for å prøve seg på en ny utskrift igjen, denne gangen tok jeg en ofte brukt kalibreringsmodell som skrives ut for å evaluere hvordan tilstanden blir. Jeg startet veldig tregt på rundt 40% hastighet, men mistet tålmodigheten underveis og endte opp på 80% med det resultat at det hele tok litt i overkant av en time.


Nå begynner man altså å snakke om resultater, sikkert et resultat som mange ville fnyst over der de sitter med utstyret til 10-gangen av mitt mens jeg bare fryder meg over at den ligner på en kube! Maskinen fungerer som den skal og med kalibreringen ute av veien så er det bare å be den printe ut enda flere dippedutter, for å bruke fagspråket, og jeg var i gang med å gå i gang da jeg innser at det jeg har igjen er rundt 20 cm av det rosa filamentet som fulgte med maskinen. Crap!

Vedder stort på at den nye fine rullen med hvitt filament, også denne fra Geeetech, skal fungere omtrent likt på maskinen så er er det bare å printe i vei. Slik gikk det ikke, for denne gangen fikk jeg 45mm av 100 og justerte opp nesten så langt som den går for å få 88mm, justerer på nytt og endte opp på 120mm så alt jeg målte varierte både opp og ned uten å treffe. Følelsen var at den greia jeg hadde lest kvelden før når det kom til tips om å sjekke extruderen tar skikkelig er å legge ekstra press på den og se om det går bedre, senere virket det som om flyten av materiale var ujevnt selv når man manuelt ba den om å fortløpende produsere en gitt mengde.

Dette var et nytt symptom, men etter å tidligere ha demontert extruderen og studert mekanismen, så hadde jeg en dårlig i magen om at tannhjulet ikke lenger fikk grep på filamentet. Glemte selvsagt igjen å ta et bilde så dette var igjen fra min rosa periode, men ser ut til at fiklingen min over tid har ført til en avrundet form i tannhjulet slik at den ikke lenger griper skikkelig. Har bestilt en erstatning for denne delen, likevel så er det såpass mye rom for justering slik at man bare kunne flytte litt på den for å få kontaktflaten et annet sted, fjernet samtidig eventuell smuss ved bruk av alkohol så da så den ut til å gripe igjen - nesten som ny.

Hyggelig å vite at man har muligheten til å gjøre denne feilen sånn omtrent en gang til før reservedelene ankommer med hestekjerre fra Kina, men så lenge alt fungerer igjen så skal man være fornøyd. Ser til at man i forsøket kan ha funnet enda et nytt svart hull i økonomien min, litt til høyre for det tilhørende de gamle datamaskinene mine så får man se om disse en dag i kombinasjon kan bli som... Uhm, biffsnadder? Godt hver for seg, helt snadder sammen!

Med nye justeringer etter nyere fikling inntil det renner hvitt fint og stabilt, det må kunne kalles en underdrivelse å si at korrekt kalibrering av utskriftsplate, materialflyt og kvalitet på råvarene utgjør en signifikant forskjell. Får la bildene si det som sies kan (justert utskriftshastighet til 60%), først er en ting som skal la Z-aksen bevege seg fritt og ikke låse seg som tidligere mens den siste er en holder for en vifte som skal kjøle ned delen underveis, dette skal visstnok hindre at plasten trekker seg sammen så mye som man kanskje ser på "basen" nede til høyre. Langt bedre enn jeg hadde forventet å kunne lage på denne skriveren, så da er det bare å vente og se hva morgendagen vil bringe av forbedringer og tweaks!


søndag 15. april 2018

sudo make stuff

Fortsatt den samme 3D-printeren som omtalt tidligere, Geeetech i3 Pro B og nå som det meste mekanikk og elektronikk er kommet på plass, så mangler kun de små detaljene som å få extruder-en, den greia til venstre, til å gjøre sin del av jobben sin. 

Fikler med ting, prøver å presse den medfølgende rosa filamentet nedi, men får ikke noe napp fra mekanismene på innsiden. Sjekker motoren, fungerer som den skal og etter litt browsing så viser det seg at Geeetech ikke bare laget en manual om alt som skal til for å skru ting sammen, ser ut til at det også var en User Guide jeg har oversett; et øyeblikk så var jeg bekymret for at de hadde etterlatt meg til å finne ut av de praktiske tingene helt på egen hånd. Kunne sikkert spart meg for en haug problemer ved å lese den, men som du vet så leser ekte menn ikke manualer [annet enn i smug] så lat gjerne som om jeg ikke sa noe om akkurat den saken.

Ifølge manualen så er det visst ikke nok å stappe filamentet oppi røret, da skjer nøyaktig det man burde forvente hvis man ikke visste noe som helst om 3D-printere - absolutt ingenting! Man må trykke ned på den fjærbelastede mekanismen og så fikle litt rundt med den for at den skal komme på plass. Enkleste ser ut til å være å fikle til man ser at det begynner å lekke smeltet plass fra undersiden av extruderen, den nederste delen av greia som håndterer alt som har med filament å gjøre. Da var den saken grei, men tenkte dessverre deretter at det kunne være en idé å fjerne filamentet istedenfor å la det lekke overalt. Vel,det står helt bom fast og det var kun noen timer senere på youtube jeg fant ut at fremgangsmåten for å få ut filamentet innebar er å dytte til filament lekker ut i bunnen ut for så å nappe det ut. Ting som sikkert står i manualen, men så har jeg ikke akkurat lest den.

Uansett, med filament lekkende ut så virket det i alle fall litt som om at jeg hadde prestert å bygge noe som gjør litt 3D-aktige printergreier, men etter all fiklingen jeg gjorde tidligere så sto plutselig alt av filament bom fast uavhengig av temperatur. Til slutt krøp jeg til korset for å se etter hjelp, men noe uspesifikt å søke etter hjelp til å fikse omtrent alt på ting jeg ikke en gang er sikker på hva heter. Jeg er ingen mekaniker, så med mindre bilen mangler noe så åpenbart som et dekk så har jeg lite håp om å reparere ting.

Med 3D-printere kan man i det minste gjemme den under sengen, om enn bare for å slippe å bli påminnet om hva man hadde betalt for den. Nei, bort med negative tanker - falskt overmot er holdningen verden forventer så da er det bare å brette opp ermene igjen! I morgen.

Morgenen etter så var man for trøtt til å bekymre seg om gårdagens problemer, så da tenker man at alt som ikke fungerer umulig kunne bli verre av å skru ting i småbiter. Extruderen ble skrudd av festet med to skruer på undersiden, noe som både var unødvendig og definitivt upraktisk ettersom jeg kom borti den varme biten med fingeren og endte opp med et lite søtt brannsår. Noen saftige gloser senere fjernet jeg isteden skruene som holdt fast viften og tydeligvis kjøleribben, men man må nesten spørre seg hva hensikten med denne er? Man ønsker selvsagt ikke at filamentet smelter mellom tannhjulene og alt det, men hvor mye varme fjerner denne når alt den er i kontakt med er av hardplast? Kan sikkert ikke skadde, dessuten så ser den veldig high-tech ut!

Feilen åpenbarte seg heldigvis når viften og den litt bortkastede kjøleribben ble fjernet, ser ut til at jeg i forsøket på å fjerne filamentet hadde kuttet det - det som skjedde nå var at den resterende enden ble stående nedi den varme biten. Det jeg hadde lagt til av nytt filament gikk ikke rett nedover i mekanismen, den bestemte seg heller for å følge det runde hjulet hele veien rundt. Glemte selvsagt å ta et bilde for å vise nøyaktig hvor teit jeg hadde vært kvelden i forveien, men så kan man i det minste nå være i stand til å forstå mekanismene siden man nå også har sett extruderen i småbiter (den kom ferdig montert).

Lærdommen man kunne håpe å få ut av alt dette er at filamentet må gå omtrent rett ned gjennom extruderen for å fungere som alt er ment å gjøre... Krever tydeligvis noe mer kontroll enn å bare stappe den nedi, noe som kan være en innøvd ferdighet alle med en fungerende 3D-printer alle har; kunsten å få filament lagret og oppbevart på rull til å ligne på noe rett.

lørdag 14. april 2018

Virre Virre Virssssshcrap!

Første regel når det kommer til bygging av en 3d-printer er at du allerede må ha bygd en 3d-printer, sånn er det bare! Hjelpsomt? Ikke fullt så mye, det er bare sånn det er når det kommer til mekaniske greier. Enten vet du hva du holder på med eller så famler du i blinde inntil man får en følelse av hvordan ting er ment å skulle henge sammen.

Har så langt brukt et par ettermiddager/kvelder på byggingen av maskinen og selv om den nå begynner å ta form, så blir det mange punkter underveis der man bare sånn halvveis fester ting i påvente av at mye må justeres for at ting skal bli i vater i forhold til hverandre.

Den første av dem er understellet som består av fire metall-stenger, to med gjenger og to blanke - disse settes sammen tidlig i prosessen, manualen nevner noe om å holde dem omtrent like lange i forhold til plasseringen av mutterene og låseskivene som holder dem på plass. Når man kommer til det punktet der denne kobles til rammen forøvrig så må man passe på at denne holdes rektangulær, det vil si 90 grader i sidene så den ikke drar deler av rammen i andre retningen. Kan selvsagt overstramme og bøye ting til, men her er det uansett snakk om marginer som kommer til å ødelegge stort i neste omgang. Står fortsatt på todo-listen min å fikse det, så ta det fra en som rotet seg bort på veien!

Motorene for Z-aksen, det vil si opp og ned på maskinen monteres tidlig på rammen med et lignende system som Y-aksen (to blanke og to gjengede stenger). Man har to av dem og man skulle tro at opp og ned skulle være relativt enkelt i og med at manualen passerte over dette punktet uten så veldig mye om og men, senere så skulle det vise seg at dette var det punktet der alt virkelig falt fra hverandre. Denne delen fungerer ved at motoren essensielt sett skrur messingdelen av aksen oppover eller nedover i tandem ved at begge motorer kontrolleres via samme kanal på kontrollerkortet, vel vitende om at disse stengene er sjeldent 100% rette så har man en motor kobling nede som fungerer som en fjær i overgangen. Alt vel og bra så langt, men ved festing av denne så passer gjengene oppi med litt for mye slakk så når man skrur denne til så presses alt ut til den ene siden og alt sammen ser ut som det ble skrudd sammen i fylla! 


Likevel, alt så vidt innenfor innlagte marginer inntil man legger til X-aksen, her må man file til man blir lei og så enda litt til. Hvis ikke de blanke stengene til denne aksen har noe å gå på, så ender man opp med at denne sørger for at Z-aksene ikke kan ha noe som helst av unøyaktighet mellom seg - resultatet er at Z-aksen låser seg fullstendig, noen ganger ved at kun den ene beveger seg inntil også den mister tålmodigheten eller så brummer begge motorene irritert på deg! Så, da var det demontering og bruk av filen til krampen tar deg for å gi X-aksen et hint av bevegelse - sikkert ikke en god idé, men la oss sikte på funker litt.

Endte opp med å bomme mens jeg filte vekk deler, så nå har man et fint lite sår som man må vaske metall-støv ut av - betennelse om 3 - 2 - 1... Crap!

Tilbake på plass med på rett plass så står alt fortsatt fast, motorene brummer i vei og kommer ikke stort av flekken. Burde sikkert startet med å spraye WD40 over alle bevegelige deler, men alt jeg hadde var CRC 5-56 så da ble det den isteden - utover merkenavnet så tror jeg innholdet uansett skal være i kategorien same-shit-different-wrapping. Suksess, muligens. Ting begynner nå bevege seg opp og ned, gjengene hyler som bare juling rundt midtpunktet av høyden så det selv om man er i nærheten så er det fortsatt litt forskjell mellom de to Z-aksene.

Tilbake til hvor man var når man sporet av for justering av Z-aksen, måtte selvsagt rote med og sikkert til elektronikken. Manualen sier ikke så mye når det kommer til selve plassering av kablingen så fremgangsmåten man satt igjen med var å bare strekke alt av kabling til korrekt plass, deretter så samlet man de som skulle til den samme plassen, snurret kabelsamlings-greiene rundt hver av dem og så stripset alt fast i rammen. Den viktigste tingen man må tenke på er at alt kommer til å bevege seg i samtlige av de tre aksene (X, Y, Z), man må dermed legge opp tilstrekkelig med kabling slik at man har nok slakk til å nå alle ytterpunktene.

Jeg strakk så mye jeg kunne under printer-flaten, for alt annet tok jeg dem inn på rundt halvveien. Alt vel og bra med det, inntil første gangen jeg prøvde meg på på å be printeren om å finne null-punktet. Alt virret rundt og tilsynelatende i feil retning, slet en masse med å få disse tingene til å fungere selv om mye her var at jeg hadde koblet enkelte av mikrosvitsjene på helt feil plass på GT2560-kontrolleren, Etter å ha konferert med med den tilhørende Wiki-en, så fikk jeg alt hamret inn på rett plass og maskinen så deretter ut til å få en noenlunde korrekt forståelse av hvordan verden ser ut (flat og rektangulær, i alle fall sett fra printerens standpunkt).

Den mest pinlige feilen jeg klarte å gjøre var ved montering av knappen på kontroller-kortet, hadde ingen anelse om at det fantes potentiometere man kunne trykke inn så det jeg hadde endt opp med å gjøre var å skru den fast uten plass til å trykke den inn. Tok meg en del søk på youtube for å finne en video der man ser hvordan man får opp menyene på den, så noen minutter senere løsnet man knappen tilstrekkelig til at man fikk brukt den til noe fornuftig!


Alt på rett plass og ser ut til å henge sammen? Da var det vel på høy tid å plugge inn noe som printeren kan leke seg med, så jeg lastet ned noen tilfeldige STL-filer fra thingiverse, lastet dem over på et minnekort og trykte "Print from sd card". Alt varmes opp og printeren kommer til liv, ting suser frem og tilbake, Y-aksen napper med seg den ene kabelen og vipps står alt og brummer igjen. Korte ned, stripse og gjøre et nytt forsøk.

Ting skjer slik det skal, kan ikke akkurat se at noe materiale kommer ut så er fortsatt håpefull om at denne biten skal komme om en stund. Ingenting skjer, bare printeren som tilsynelatende skriver ingenting stadig høyere opp fra print-platen. Hva nå da?

På tide å legge seg, for da er timene blitt lange og tålmodigheten kort...

onsdag 11. april 2018

Geeetech I3 Pro B

Jepp, tittelen er ikke en feilstavelse - hele den biten med å kaste inn en ekstra 'e' i navnet er bare en av de kinesiske greiene man observerer for tiden (seeedstudio, geeetech osv). Nok om firmaet som produserte maskineriet, det er det man får som er interessant her; potensialet for å få en fullt fungerende 3D printer til under 1500 kroner!

Jepp, betalte ikke stort mer da jeg bestilte min fra AliExpress. Vel å merke så er ikke dette den originale i3-modellen fra Prusa som man ser omtalt overalt, dette er en av de tilnærmet utallige kinesiske kopier av den. Dette er heller ikke den billigste av dem heller, dette er Pro B-utgaven - hva det vil si er jeg ikke helt sikker på, men tror det kan ha noe med at den kommer med oppvarmet underlag samt en glass-plate som man printe på. Skulle gjerne ha sjekket opp dette mer nøye før jeg kjøpte det som skulle vise seg å være en ekstra glassplate, men da har man to i tilfelle man skraper den opp i forsøket på å kalibrere herligheten.

Som man ser av det første bildet så ligner det ikke stort på en 3d-printer, eventuelt noe i det hele tatt. Grunnen er veldig enkel; jeg har begrensede midler og settene for å bygge dem selv er langt billigere - så hvis jeg absolutt skal ha en 3d-printer, så må jeg nesten bygge den selv. Det fulgte med en rimelig tynn bruksanvisning, men det jeg straks fant ut var at den egentlig ikke var en bruksanvisning i det hele tatt - det var bare bilder av alle delene som fulgte med settet, selve bruksanvisningen måtte jeg lastes ned fra hjemmesiden da den var på i overkant av 100 sider.

Inkludert i settet fant man også sjekklisten benyttet da maskinen ble pakket og sendt, tok bilder av begge sidene av denne slik at man kan verdsette nøyaktig hvor mange forskjellige deler som faktisk inngår ved bygging av maskinen.


Jeg vet at man får mye rart fra Kina til så og si ingenting i pris, men med mindre man har ekstremt gode kontakter og relativt ekstreme egenskaper når det kommer til mekanisk design så skal det godt gjøres å komme i nærheten. Har du alle disse tingene på plass i delekassen allerede? Ikke jeg i alle fall, kunne ikke drømme om at det var mulig å få levert så mye rart for  rundt 1500 kroner - går du inn på rett butikk her til lands så får du knapt et enkelt skrujern og en halv boks terrasse-skruer.

Fungerer herligheten? Ingen anelse, det tar mange timer å bygge noe slikt og det er først når man nærmer seg slutten at problemene med alt i kategorien "kalibrering" starter. Vet jeg hva alt det betyr? Nja, kanskje fra et teoretisk standpunkt så vet man at ligner overhodet ikke på det man ba den om å lage ikke er et godt utgangspunkt, men så har knapt kommet så langt som å skru sammen deler av rammen så det er et problem for fremtidige jeg.


Hadde jeg noen planer for innkjøp av en 3D-printer? Overhodet ikke, kan knapt argumentere for et behov for den saks skyld - dette er greier man skrur sammen fordi man har lyst til å skru sammen en kul robot som kan lage ting. Har håp om å kunne bruke den til å lage reservedeler for noen av de klassiske datamaskinene mine, deretter sikkert en haug med mindre pene og forholdsvis ubrukelige pyntegjenstander. Skulle man spekulere på ens egen bruk så blir det vel som alle de andre man ser på Youtube, maskinen ender opp med å produsere en endeløs rekke av redesignede komponenter for forbedring av 3D-printeren. Så, med andre ord så trenger man en 3D-printer for å ha behov for en 3D-printer.