hansj

Home/Hans Jørgen Grimstad

About Hans Jørgen Grimstad

This author has not yet filled in any details.
So far Hans Jørgen Grimstad has created 642 blog entries.

February 2018

The Wireless Clockmaker – part1

By |February 24th, 2018|Concrete Clock, Electronics|

Click edit button to change this text.

Nixieklokker er aldri feil. Spesielt ikke når de virker :)

De tidligere klokkene jeg har designet, har alle hatt ett problem. D.v.s. det har vært et lite helvete å stille klokka, eller synkronisere mot en ekstern klokkekilde. Jeg har vært innom alle varianter fra manuell innstilling ved boot, til bluetooth. Jeg vurderte også DCF77 en periode. Jeg har faktisk en mottaker liggende i skuffen, men – livet er for kort.

Jeg har tidligere brukt gratisversjonen av Eagle, da jeg ikke helt har klart å bli komfortabel med KiCad, eller vunnet i lotto, slik at jeg kunne kjøpt meg en Altiumlisens til 70000.  Dermed har også den maksimale størrelsen på klokkene vært begrenset av hva som er mulig i gratisversjonen i Eagle.

Heldigvis, så kjøpte Autodesk CadSoft, som laget Eagle. Autodesk endret da også lisensstrukturen, slik at man nå kan slippe langt rimeligere unna, hvis man ønsker å lage kretskort som er større enn 80×100, eller har flere enn to lag.

Dette designet er 4-lags og kortet er stort nok til å romme 6 nixie-rør. Ved å utforme dette som et shield, som kan plugges på GPIO-connectoren på en Raspberry Pi Zero W, så oppnådde jeg flere ting.

  1. Problemet med klokkesynkronisering forsvant, takket være at Pi’en alltid har korrekt tid, via NTP.
  2. Jeg kan nå SSHe til klokka og gjøre utvikling på klokka. Nixieklokka har både git, gcc og vi. Yay! :)

Kortet har en ekstern connector for VIn. Gnd og 170V. VIn er det samme signalet som 5V-railen på raspberryen. Jeg har ennå ikke testet dette, men det burde være mulig å drive raspberryen med 5V inn her istedet for via USB, hvis man har et velregulert Nixie power, som også gir 5V ut. Vær oppmerksom på at man da høyst sannsynligvis bypasser TVS-dioden som skal beskytte raspberryen mot for høye spenninger. Jeg har ikke nistudert raspberry-skjemaet. D.v.s. eksperimenter på eget ansvar.

Alternativet er å drive klokka via USB, og hekte på en 5-170V boost converter på denne headeren (Disse finnes, men jeg er ikke imponert over ytelsen). Anoderesistorene, som er spesifisert til 5,6K i designet må tilpasses drivspenninga til Nixiene. Du kan fint bruke et 180 eller 190V power, så lenge du passer på at strømmen gjennom hvert rør ligger på 2-3mA.

Skjema, PCB layout, BoM og driverkode ligger på github: https://github.com/hansj66/Nixie-Modules

Headless oppset av Rasperry Pi Zero er ganske enkelt. Last ned siste versjon av Raspberry Strecth Lite og flash dette til et SD-kort. Deretter oppretter du en tom fil på rota ved navn “ssh”. I tillegg, så må du opprette ei fil på rota, for å konfigurere wifi. Denne kaller du “wpa_supplicant.config”. Her spesifiserer du SSID og passort. Eksempel:

country=US
 ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
 update_config=1

network={
 ssid="your_real_wifi_ssid"
 scan_ssid=1
 psk="your_real_password"
 key_mgmt=WPA-PSK
 }

Deretter booter du raspberryen med SD kortet i. Du kan bruke NMAP for å finne raspberryen på nettet. Kjør følgende kommando fra en annen maskin på samme nett:

nmap -sS -p 22 192.168.10./24

Du vil da få en liste over maskiner på lokalnettet som kjører SSH.

SSH inn på raspberryen og installer følgende:

wiringPi må patches (se wiringPi_patch folderen på git), pga en liten brainfart på min side (Jeg brukte en ULN2003 som level shifter for å kunne koble 3.3V GPIO til 5V-logikken på shieldet. Glemte at dette trikset inverterte kontrollsignalene til shiftregisterene). Kopier inn sr595.c fra git repoet mitt over tilsvarende fil i wiringPi og rekompiler wiringPi. Naviger deretter til driver-folderen og kompiler klokkedriveren med følgende kommando:

gcc -Wall -o clock clock.c -lwiringPI

Start klokka ved å kjøre:

./clock

December 2017

Meta

By |December 19th, 2017|Uncategorized|

 

Jeg har fått litt indirekte pepper p.g.a. dalende bloggfrekvens på TimeExpander. Må bare beklage, da jeg har fått meg både dagjobb og kveldsjobb, som har ganske mye overlapp med hobbyinteresse-sfæren.

Les mer på:

Så får vi krysse fingrene og håpe på at nok et galemattiasprosjekt, som naturlig hører hjemme her, dukker opp om ikke så alt for lenge :)

Er forøvrig flere prosjekter, som er på gang, men som ikke er helt i mål ennå, og derfor ikke blogg-modne. Et av dem er LoRa-instrumentering av flipperspillene som Pop Bumper AS har i drift i kjelleren på Work-Work i Trondheim.

 

 

October 2017

En Supergun til begjær – del 4

By |October 6th, 2017|Retrogaming|

Jeg har tenkt å spille på denne, men siden den skal benyttes til debuggingsformål også, så har den fått et par digitale voltmeter, slik at jeg kan holde øye med +5V og +12V. Anser denne førsteversjonen som ferdig, og har dermed også spesifikasjonen klar for den endelige versjonen, som skal bygges “når jeg får tid” ™.

Endringene blir relativt moderate.

  1. Et par skrufester skal fjernes, da de a) er unødvendige og b) endte opp med å bli scary nær skruterminalen for nettspenning.
  2. Et digitalt voltmeter til skal inn, for å holde øye med -5V også.
  3. Det er ganske trangt inni konsollet, så jeg funderer på om den skal få seg en kjølevifte – sånn just in case. Har ikke merket tendenser til at det blir varmt inni den ennå, men liker å være på den sikre siden.

September 2017

En Supergun til begjær – del 3

By |September 27th, 2017|Retrogaming|

Da er JAMMA harness, inn- og utganger ferdig kablet, og vi har en funksjonell supergun. RGB er koblet via potmeter fra JAMMA til SCART, slik at jeg kan fargejustere bildet.

Kablingen er relativt rett fram. Audiosignalet går direkte til en 8-ohms høyttaler. Joysticks og knapper er kablet direkte til JAMMA. Signalet, som normalt kommer fra myntinnkastet er koblet opp til en egen knapp, og test-signalet er dratt ut til en separat knapp på bakpanelet. Funksjonssignalene på SCART-pluggen er koblet til powersupplyet, slik at TV’er som støtter dette, automatisk vil velge videosignalet fra JAMMA-pluggen som kilde.

Er jeg i det nostalgiske hjørnet, så kan jeg nå dra et kort frem fra hylla, plugge i og spille, uten at jeg trenger å bekymre meg for plass til arcadekabinett, eller ha en ledningsjungel liggende framme.

Click edit button to change this text.

En Supergun til begjær – del 2

By |September 17th, 2017|Retrogaming|

Har nå migrert det mekaniske designet fra CAD (se forrige post) til meat space. De laserkuttede delene er 4mm akryl og valnøttfiner, kuttet på Hackheim. Buen i front og i bakkant er 3D-printet PLA. Alt er så dekket med svart kunstlær, festet med kontaktlim. Sidekantene er avsluttet med T-molding, beregnet for arkademaskiner. Joystick, knapper, arcade power supply, potentiometer for RGB-justering er handlet fra AliExpress. En 8-ohms 3,3″ høyttaler fra Ljudia bør gi noe bedre lyd enn det man normalt finner i arcademaskiner.

Har lagt opp til at jeg kan lage litt smalere varianter av denne, som kan daisy chaines for å kunne støtte 2, 3 eller 4 spillere. Primærbehovet er 1-spillers test-/debuggingskonsoll, men det koster ingenting å gjøre den utvidbar. Skal også ha inn en IPAC-2 eller 4 med USB-utgang, slik at den også kan brukes som MAME-kontroller på PC.

Vurderte å feste en female JAMMA-connector i kabinettet, men går heller for en løsning med fritthengende JAMMA-connector på baksiden.

Venter fremdeles på female SCART-connectorer,  som skal festes i bakkant, samt digitale voltmeter for 5 og 12V.

Next up: Sjekke postkasse og dra noen meter med kabler…

IMG_2905

 

En Supergun til begjær.

By |September 11th, 2017|Electronics, Retrogaming|

Jeg er hønngammal – d.v.s. Jeg vokste opp på 70- og 80-tallet. En tid med en radiostasjon, en TV-kanal (i svart/hvitt), ingen datamaskiner, ingen mobiltelefoner, nettbrett og definitivt ikke noe internett. Noen heldige hadde walkie talkie. Donald og Fantomet ble utgitt på tirsdager, og bibliotekaren rynket på nesa hvis man ville låne Hardy Guttene på biblioteket, da dette ikke var høyverdig litteratur.

Å vokse opp i Norge på 70-tallet var en såpass lite stimulerende affære at en tilfeldig eksponering for spillet PONG på en kafe i Skottland, var nok til at jeg ble hektet på arkadespill livet ut. Det er sannsynligvis også en direkte årsak til at jeg i dag jobber med IT.

Etterhvert, så dukket spillene også opp her hjemme. Du fant dem på kafeer, supermarkeder og bensinstasjoner. De var såpass lukrative at du fant dem utplassert på de mest usannsynlige steder. Hvis noen hadde en ledig kvadratmeter under ei trapp, så kan du banne på at det sto et arkadespill der. Det ble etablert egne spillehaller der du kunne finne alle spillene, som i dag er klassikere. D.v.s. spill som Donkey Kong, Breakout, Space Invaders, Pac-Man, Dig-Dug, Galaga, Scramble, Zaxxon, Robotron, Tempest,  Xevious, Defender etc. Spillene ble populære. Omsetningen var betydelig, men neppe helt enkelt å kontrollere for den jevne ligningsfunksjonær.

Disse spillene var ikke bare nye. De var anderledes enn alt annet som fantes. Det eksisterte ikke privat underholdningsteknologi, som var i nærheten av den interaktive spillopplevelsen, som et arkadespill kunne tilby. Man hadde radio, TV og bøker. That’s it. For kidsa, så hadde fremtiden kommet på besøk. Den var her , og de var sultne på mer. Mye mer. For å sette dette i perspektiv, så kan jeg nevne at det over årene ble produsert og solgt ca 400.000 Pac-Man arkadespill. Dette ene spillet sto for en omsetning  (inflasjonsjustert ) på 7,6 milliarder dollar. Det ble i løpet av ganske få tiår designet, produsert og solgt ca 5-6000 forskjellige typer arkadespill, hvor Pac-Man kun er ett av dem.

Det er kanskje unødvendig å nevne, men voksengenerasjonen rynket også den gang på nesa av spillene, som de ikke forsto. Datidens moral definerte at det var ok å røyke Blue Master eller Teddy uten filter mens man ammet, men man var et slett individ hvis man bruker penger på spill. Unntaket var her for tanter, som fra tid til annen kunne handle et lodd i pengelotteriet – for å gi bort som gave, eller for onkler som kunne levere sin tippekupong (Fotball er tross alt idrett. Og idrett er bra.).

Som ung, så blir man i utgangspunktet lett fascinert av nye ting. Dette var ikke bare nytt. Det var ren teknologisk spillmagi, som man kunne ta del i, og det kostet kun tre kroner per hit.

Anyways,…

Som godt voksen, så blir man gjerne litt nostalgisk. Det må jo være lov. Man har litt bedre råd, litt bedre teknisk innsikt og litt mer plass. Ingen hinder ligger lenger i veien og barndomsdrømmen kan endelig realiseres. Arcadespill i heimen. Hvorfor ikke ?

Man oppdager så at dette kun er å få tak i på auksjon, eller via andre samlere – i noe redusert tilstand og utelukkende til blodpris. Nostalgien forsterkes ytterligere ved at ting er omtrent umulig å få tak i og man uvikler hoardingsymptomer ved at man faktisk kjøper alt man kommer over – uansett pris – uansett tilstand.

Det finnes saktens konsoll-ports, PC-, Mac- og Linux-ports, i tillegg til ymse varianter, som er forskjellig nok til at man ikke blir saksøkt av rettighetshaver, av mange av klassikerne på andre plattformen. Felles for alle disse implementasjonene er at de suger klamme, hårete eselballer. Det er noen hederlige unntak, bl.a. for Cave sine bullet hell shootere, som du ble lansert på XBox 360, PS, PS2, PS3, Sega Saturn, DS iPhone, iPad og Windows.

Men,…

Orginalspillene er laget for å spilles med korrekt input device, som i 95% av tilfellene er en joystick – med mikrobryter. Man skal ha det korrekte antall knapper – med mikrobryter. Touchskjerm, keyboard eller gudforby gamepad med analoge stikker duger ikke.

Orginalspillene har en oppløsning på 240×320 pixler, fordelt på to interlacede frames på en CRT-monitor med en synkfrekvens på 15 kHz. Ingen annen monitor er i stand til å gjenskape CRT-glødens varme fuzziness uansett hvor fett grafikkort du har og hvor mange shadere du kaster på det.

Orginalspillene har dedikert hardware for å sikre korrekt framerate og niks latency på input.

Punktum.

Jau, jeg kjenner til MAME, og de 1.5 gigabytene med kildekode er en glitrende inngangsport til å forstå retro spillhardware. Jeg har benyttet MAME-sourcen som debuggingshjelp for fysisk hardware ved flere anledninger. Det kan også (under harde retrospill-abstinenser) være en quick fix, MEN DET BLIR IKKE HELT DET SAMME. 5% dropp i framerate, eller noen millisekunder latency på respons på knapper eller joystick ødelegger opplevelsen totalt. Mame-utviklerne fokuserer på korrekt emulering av hardware og ikke ytelse. Hvis favorittspillet ditt er i kategorien, som er avhengig av at Moores lov holder i flere år til, så sliter man. Interpreterende emulering av maskinkode fungerer for de eldste spillene, men ikke de nye.

(PS. Til MameDevs verden over, så vil jeg si følgende: Hitachi SH-3-emuleringen, som er tvingende nødvendig for å kunne spille noe av det ypperste som ble produsert helt på tampen av arkade-æraen, d.v.s. Cave sine bullet hell shootere, er – og jeg sliter med å finne ord – … begrædelig ? Og, jepp, jeg eier spill på den plattformen, så jeg har lov. Just sayin’)

I.o.m. at det kan bli litt mye å samle på arkadekabinetter (Det er jo tross alt 6000 å samle på), så er det i praksis, kun en vei til arcade nirvana, og det er via en …

SUPERGUN

Dette er kort fortalt, et arkadekabinett, krympet ned til noe du kan ha på desktoppen din. Du trenger følgende:

  1. Knapper, joysticks og mikroswitcher (AliExpress).
  2. 5/12V strømforsyning. Noen få spill trenger også -5V. (AliExpress). Gammel ATX duger også.
  3. En 15 kHz monitor. (Eldre multisync, arcademonitor, Liten CRT “hytte-TV” med SCART tilkobling (Noen spill er vertikale, og en 28″ er litt scary på høykant – selv om det nok kan være fristende)
  4. En 8-ohms høyttaler (AliExpress). Ikke bli fristet til å fore audio fra JAMMA-kortet til en eller annen line-in inngang. Audioforsterkerne er av type push/pull, og Audio “-” på JAMMA-pluggen er ikke det samme som line GND.
  5. En JAMMA-connector (AliExpress).
  6. Et arkadespill. Dette er en liten datamaskin på et kretskort. Søk etter “JAMMA PCB” på eBay, eller på Japansk Yahoo og dra fram kredittkort, så er du der (Prisene er fra noen hundrelapper til flere titalls tusen). PS. Styr unna ting av typen “Pandora’s Box og <x> in 1-type ting. Dette er kinesisk crappy hardware, som kjører mame med vekslende hell.)
  7. Noen meter med kabler.

Gidder du ikke bygge en supergun, så kan du alltids kjøpe en. Til tross for enkel innmat, så er de litt eksotiske, og derfor også gjerne litt pricey. Du finner en liste over modeller her: https://wiki.arcadeotaku.com/w/Supergun

Men – velger man å bygge selv, så kan man også bygge inn features. Eksempelvis, så er en supergun rent gull hvis man skal feilsøke og reparere spillkort. Gidder du ikke handle orginale spillkort, så kan du selvfølgelig også bruke den som en MAME frontend

PS. Er du i den kategorien, der nostalgien har utviklet seg til en tung fiksering på vektorspill, så er du enda dypere ned i kaninhullet enn du ellers ville ha vært. Vektorskjermene er en subkategori av de tradisjonelle CRT-skjermene. Ordinære spill benytter rastergrafikk der spillet skriver grafikken inn i et videominne, mens vektormonitorene var laget for at elektronstrålen kunne styres direkte av spillet. Jeg er fremdeles av den oppfatning at det helt ypperste som noengang er laget av spill, d.v.s. selve essensen av arkadespill kan finnes i Ataris Tempest – selvfølgeligvis et vektorspill. Jeg hadde ett, som jeg kjøpte av en tidligere operatør for 3000. Spillet døde og ble (- jeg hater meg selv fremdeles for dette…) – kastet, sammen med de to reservevektorskjermene jeg hadde. (Burn in arcade hell, I will). Er du villig til å grave dypt, i alle direkte og overførte betydninger av ordet, så finnes det likevel håp. Man slår først kloa i en vanlig arcademonitor (som grenser til unobtainium i seg selv) og så handler man en reprodusert HV-del og X/Y deflektorkort fra Australia (Some assembly required og gjør du noe feil, så har du laget deg et røntgenrør…). Yoken på billedrøre må vikles på nytt, men hvis man allerede er nede i kaninhullet, så anser man sannsynligvis det som en mindre utfordring.

Kommer tilbake med oppdateringer så snart postmannen ankommer med de siste delene :)

August 2017

“Influensmaskinen” – del 6

By |August 19th, 2017|Electrostatic Generators|

Var litt ivrig etter å sjekke om maskina virket i går kveld, så jeg glemte innerfoil på leydenflaskene i farten. Det forklarer den høye frekvensen på utladningen, samt litt svak gnist.

Etter å ha fått på plass foilen, så er frekvensen på utladningene mye lavere (som forventet), samt at det smeller ganske friskt ved hver utladning. Jeg har ikke målt maksimal gnistlengde ennå, men bildet over viser en gnist på 2,5-3cm, hvilket tilsvarer ca 80000V (overslagsspenninga i luft er 3kV/mm).

 

“Influensmaskinen” – del 5 (O3 & plasma – check)

By |August 18th, 2017|Electrostatic Generators|

(Skru opp lyden før du spiller av videoen)

Wimshurstmaskina virker. Yay ! Ingenting er festet skikkelig ennå, så den er wobbly som fy. Gnistlengden er relativt moderat (2-3 cm). Børstene er laget av loddelisse og postmannen har så langt ikke kommet med beltene mine (yngstejenta ofret heldigvis et par svarte strømpebukser til den gode sak :))

Optimal eller ei. Jeg har nå ei fungerende maskin på kontorpulten min, og ingenting gir bedre designinput for neste iterasjon enn et fungerende fysisk objekt. Alt på maskina er enten laserkuttet, 3D-printet eller kappet med en Dremel – og hele designet er i Fusion 360.

Forbedringer som må gjøres i neste versjon:

  • Terminalene må bli større. De jeg har nå er 1,5cm i diameter og de lekker. Håper inderlig at IKEA fremdeles selger salatbolleserien sin i stål.
  • Leydenflaskene skal bli større
  • Konstruksjonen må gjøres mer solid. 4mm akryl er litt for tynt, som baseplate og avstivere.
  • Modernisere designet litt, slik at enda flere deler kan 3D-printes.
  • Må gå over alle skarpe kanter med “corona dope” for å unngå lekkasjer.

“Influensmaskinen” – del 4

By |August 11th, 2017|Electrostatic Generators|

Yay ! Alle laserkuttede og 3D-printede deler er nå fabrikert. Det gjenstår nå kun enkelt metallarbeid i forbindelse med nøytraliserings-stavene/børstene, samt leydenflaskene. Venter fremdeles på drivreimer, kobbervev og aksling. Vi får krysse fingrene for at alt ankommer i tid til Maker Faire.

 

 

“Influensmaskinen” – del 3

By |August 7th, 2017|Electrostatic Generators|

Kun en kjapp statusoppdatering denne gangen. Begynner å bli fornøyd med CAD-modellen, og jeg har nå laserkuttet alle akryldeler. Neste trinn blir 3D-printing av de resterende delene i PLA, samt prøvemontering. Etter dette, så blir det noe messingarbeid i forbindelse med Leyden-flasker, koblinger og terminaler.

akryl