Doorgaan naar hoofdcontent

Programming the Infrared Emitter

In afwachting van mijn usb-infraroodzender, ben ik alvast begonnen met het schrijven van een programma om de zender aan te sturen. In bepaalde opzichten simpeler dan ik dacht, aan de andere kant onverwachte complicaties. 

Om de ir zender iets te laten doen moet je commando intikken zoals bijvoorbeeld "irsend SEND_ONCE rm-d29m KEY_POWER". Dat is wel heel veel werk. Vooral omdat ik deze contraptie heb bedacht om er makkelijk titels mee te kunnen intikken op mijn minidiscs. 

de usb-infraroodzender

De oplossing is simpel: maak een programmatje die al die vervelende commandos voor je intikt. UNIX is ontworpen voor dit soort rare wensen. En zoals zo vaak met UNIX zijn er vele oplossingen mogelijk. Ik koos voor een simpel programmatje in bash. Maar zelfs dat simpele programmatje stelde me toch nog voor problemen. Aanvankelijk wilde ik gebruik maken van de functietoetsen en zelfs return en spatie omleiden. Niet onmogelijk, maar wel in mijn opzet. 

Ik maak gebruik van een loop die steeds in gang wordt gezet na het intikken van een toets. Normaal gesproken genereert een toets ook een enkel karakter, maar dat geldt niet voor toetsen als enter, pijltje, home, end, F1, enzovoorts. Dus ik had behoefte aan een list.


title of the album to play
on the minidisc deck


Dus ik bedacht dat de hoofdletters gereserveerd zijn voor commando's aan het deck, terwijl alle andere toetsen beschikbaar zijn voor de edit functie. Dit kost mij wel de hoofdletters. Maar omdat ik hou van hoofdletters heb ik dat omgedraaid. Bovendien, er staan hoofdletters op het toetsenbord, meestal. 

Het draait allemaal om eén commando aan het deck. Ben ik een title aan het editen of niet. Het lijkt een beetje op VI of emacs. En soms zijn commandos in beide modes beschikbaar, maar betekenen ze iets anders. 

Voorbeeld:

In normal mode is nextTrack wat het is, in Edit Mode is het nextCharacter. 

code snippet

Wordt vervolgd

Reacties

Populaire posts van deze blog

Migratie server met rsync

De hardware waarop mijn server draaide was nog goed, maar wat traag. Ik had een kandidaat om de nieuwe server op te installeren. Maar met de software was eigenlijk niets mis, dus in plaats van een nieuwe install, besloot ik de software te klonen naar de nieuwe server. Hierbij maakte ik gebruik van ploplinux via pxe boot . Verder was het plan om met rsync de software (inclusief user data) over te zetten. Dit heeft als voordeel dat de operatie niet in één keer hoeft te worden afgerond. Na een eerste rsync waarbij de bulk wordt overgezet, kunnen de laatste wijzigingen nog altijd op het laatste moment gesynchroniseerd worden. Het klonen van een computer heeft ook een paar (operationele) nadelen. Om te beginnen mogen de servers (oud en nieuw) niet tegelijkertijd op het netwerk actief zijn. Ten tweede hoeven de omstandigheden op de kloon niet persé exact hetzelfde te zijn. Hieronder in het verslag mijn workaround: Ik begon dus met een pxeboot met ploplinux op de nieuwe server. Op de h...

Maillist using procmail

OS: UNIX in general PACKAGE: procmail Why Some time ago I received a list of email addresses wich I needed to sent a bulk message to. Because I didn't had an easy solution like copy-paste and typing some easy comments, I started to look for a recipe with procmail. I found one here . This recipe is just like so many UNIX recipes: nice, but it has to be tweaked before it's ready to serve. dedicated user First of all: assign this procmail rules to a dedicated UNIX user. It will prevent mixing up with procmail rules in your own account. Of course it is more professional this way :-) Make sure that your MTA can deliver email to this user, also make sure this user can send email assigning a different user like the sendmail -f option. In sendmail, use the virtuserstable. controling the mail list I created three brands of procmail rules: open, semi-open and closed. Closed is a list to wich only the owner can send email to, and of course he is also the only one who can put...

Onderzoeksdata redden van kapotte computers

Eerder op facebook gepubliceerd op 02-10-2016 Dagboek van een systeembeheerder Op een dag werd ik bij een computer geroepen waar data opstonden van een onderzoek dat een tijd geleden was gedaan en al bijna vergeten. Eerder die dag herinnerde een wetenschapper zich deze data, die plotseling toch belangrijk waren en liever gisteren dan vandaag van die computer afmoesten om in veiligheid te worden gesteld. Of wij dat niet even konden oplossen? Het probleem met de computer was dat het niet verbonden was met het netwerk en de floppydrive niet meer werkte. Ter plaatse aangekomen constateerde ik dat het ding geen standaardspul was. Maar hij zag er wel indrukwekkend uit. Het was een enorme toren die niet onder mijn buro zou passen. Waarschijnlijk clandestien ingekocht voor een speciaal onderzoek. Maar geen netwerkkaart. Waar ik toch niks aan zou hebben gehad, want onze netwerksoftware stond er niet op. Maar uiteraard had het ding wel een parallelle poort. Dus ik haalde van boven een st...