Skip to main content

Posts

MOTU Midi Timepiece AV

I hooked up a MOTU Midi Timepiece AV to my Linux box. The context I've read there is no driver to use the MTP AV with Linux. Well, actually, there was one (mtpav.c) included with the package alsa-driver up to version 1.0.25. But, this package is now obsolete , embedded into the source of kernel. Since there is a driver for Windows, still available with ClockWork at MOTU site, I wanted to investigate the protocol (which is actually USB 1.1). Linux, Windows and Cubase SX Tools A computer running Linux and enough memory. Mine is HP XW6600, 8 cores, 16GB, running Ubuntu 20.04. A MOTU Midi Timepiece AV (MTP AV) USB compatible. Warning: there are 2 EPROM, one for Mac, one for Windows. Mine was the Mac version, but I installed the EPROM for Windows. ordered directly from MOTU website several years ago. The Windows driver for MTP AV USB MIDI Installer for Windows , available from MOTU site . Oracle Virtual Box, latest version (currently 6.1.18) and the Extensi...

Ansible: how to read a data file

Let's say I have a data file, each line contains several columns. I want to read the file line per line, select the columns. My data file abc 123 def 32 alice ghi 12345 alice bob The idea is to loop on the file line per line with the splitlines function: loop: "{{ lookup('file', '/path/to/file').splitlines() }}" Then, for each line, we split the columns based on a separator, and we put the result in a variable: myvar: "{{ item.split( sep , maxcol ). index }}" Where: sep is the separator maxcol is the maximum number of columns you want to use. If a line contains more columns that maxcol , the last column contains the rest of the line. index is the index of the current column. So the overall playbook will looks like: - name: ... vars: A: "{{ item.split(' ',3).0 }}" B: "{{ item.split(' ',3).1 }}" C: "{{ item.split(' ',3).2 }}" function: ... loop: "...

MIDI for Linux

I want to drive MIDI with my Ubuntu. The context I play MIDI with Atari since 1986; at first a STF (1MB RAM), now a STe maxed to 4MB. Four megabytes of RAM may seems ridiculous by today's standards, but MIDI is extremely compact and use very few memory. Moreover, on the Atari, the operating system is in ROM, which limits the footprint on RAM to variables; hence, 4MB is actually plenty of room. The Atari has a built-in MIDI interface (1 In, 1 Out) driving 16 channels. However, in my case, 16 channels is not enough, so I purchased a MIDI interface (Soundpool MO4) which adds 4 outs, allowing to drive 80 channels. Unfortunately, 2-3 years ago, the MO4 has stopped working: still recognized by the Atari, but no output. Ok, well, this is another topic... In the past, I also got an old Toshiba Elite laptop running Windows XP. I tried to play MIDI with it. I first purchased a E-MU 2x2 interface (1 in, 1 out). Then I had the opportunity to buy a Midiman Midisport 4x4 (4 ins, 4 outs)...

Ansible: ERROR! failed to combine variables, expected dicts but got a 'dict' and a 'AnsibleSequence'

I was slowly refactoring my standard playbooks to roles when I encountered this error. It took me a while to figure out what was wrong. Start: the All-In-One playbook myplaybook.yml - hosts : rhel vars : ... tasks : - name : ... ... This kind of playbook is hard to maintain. Also, some tasks where common to several playbooks, so I've decided to split it into several: myplaybook.yml - hosts : rhel vars : ... tasks : - name : ... include_tasks : path/to/task-1.yml include_tasks : path/to/task-2.yml ... This was nice, but I encountered issues with variables that were not seen by sub-tasks. Must be mentioned that sub-tasks should not include the tasks keyword; only a list of tasks. task-1.yml - name : ... ... Here comes the roles Roles has been precisely designed to split complex tasks into reusable modules. playbooks roles my_custom_role defaults main.yml files my-cert-ad.pem handlers ...

First step with Turbo C 2.0 on Atari ST

Yes I know, you may think I'm crazy: what the heck programming on the Atari ST? Why Turbo C? Context Atari STe and Soundpool SO4 I use my Atari STe since the 90s, almost exclusively to make music with Cubase. The Atari STe has 2 MIDI sockets (IN and OUT), which allows to drive 16 MIDI channels. But some of synths use all 16 channels (Roland SC55, Kurzweil 1000PX). To drive more synths, I purchased a MIDI extension, the Soundpool MO4 , providing 4 extra MIDI outs, for a total of 80 channels. The MO4 is connected on the parallel port (printer port), and comes with a driver for Cubase. This configuration worked for years. The problem Quite recently, my wife and I have decided to move closer to downtown Montreal. I packed all my studio, including the Atari, moved, and reinstalled my studio; this took, of course, almost a year before I unpacked and reinstalled my Atari. When I tried to use the Soundpool MO4, I had nothing on any MIDI out. However, the MO4 is still recognized by C...

Art de vivre

Enfant, j'adorais les centre commerciaux ! Féérie de bruits et de lumières, montagnes de jouets à l'approche de Noël. À cette époque, nous habitions Ecquevilly. Mes parents, nouvellement propriétaires, devaient s'équiper et nous allions de temps à autre à Parly 2 au Chesnay, Vélizy 2 ou aux Quatres-Temps la Défense. À quelques km de chez nous, à Orgeval, se trouvait le Centre Commercial Art-De-Vivre. Certe, bien plus petit, il n'en restait pas moins un endroit que j'adorais: une magnifique librairie, un immense magasins de jouets et maquettes, et plus tard, le magasin Music Gallery où j'achetais mon premier synthé, le Yamaha CS01. C'est là également que j'ai découvert le Korg MS-20; je tombais immédiatement sous le charme de l'austère panneau de commande et de la sérigraphie "savante" où apparaissait des chemins compliqués entre des tensions électriques. Je m'imaginais tourner les boutons, patcher les modules, puis l'entend...

Another Brute in the Cave

Arturia Matrixbrute I dreamed of it, now it's a reality: I purchased a Matrixbrute from Arturia. Used of course, as nearly all my instruments, but in a glorious state, still in its original box. First of all, the case is solid, with luxurious material: plain wood and aluminium. I love the aluminium wheels! The front panel raises à la Minimoog or Waldorf Wave. Four positions, the most vertical one is angled like a MS20. Yep! I compared side to side! The back panel is impressive: stereo output, input, 3 MIDI, USB, 3 pedals, tons of CV in & out, gate in & out, sync in & out, nothing is missing. The headphone socket is on the front panel, which is the place all the headphone sockets should reside. For a so powerful machine, it is really easy to use - as far as you know a minimum in analog synthesis, of course. The overall layout is neat and familiar: one button per function. The knobs are the same as on the other members of the brute family: grey with a white line ...