Alesis ION NRPN Converter
[Double post weirdness]
Surprise! I found the old patch in my gmail archive. This was initially designed to work with the Alesis Ion, so there are some idiosyncrasies whose purpose I have forgotten. The "nrpnout-ofs" object is meant to send nrpn messages to hardware (or wherever). The abs has four arguments. The first arg sets the msb (cc99) value of the nrpn parameter you want to modify. The second arg sets the lsb (cc98) value. The third sets the range of the param (use the total range here, i.e., if the param goes from 0 to 400, the range arg you'll use will be 401). The fourth arg sets the offset (again, if you have a param with values between -200 and 200, the range arg is still 401, but the offset arg is now -200). The msb/lsb values are gonna work predictably across devices. Depending on how each device handles nrpn coarse/fine, you might have to fiddle with the args.
I wasn't able to find the object that receives nrpn and converts it to cc messages. I may be able to work that out again if you need. If you have any other questions about making this thing work for you, send them my way. Happy randomizing.
D
Alesis ION NRPN Converter
hey nice patch!
Have you got that NRPN patch still? I've build a midi patch randomizer for external gear and I'd like to add on to it to make it work with NRPN driven machines too.

I'll post it here if you'd like it.
Yamaha nrpn
Hello people,
this is a simple mod to David McCallum's nrpnout (which is great for the emu10k and probably other midi hardware) to feed my Yamaha MU100.
The most important mod is that it uses nrpn address msb and lsb too.
It would be interesting to know if it works with recent Motif hardware...
Alesis ION NRPN Converter
Thanks for the feedback, Obi.
Each of the ION's parameters has a different resolution. Some receive values between -1000 and 1000, and some are just simple toggles. I built this patch to receive values from 0 to 1 and to scale them to the selected parameter.
All the routing took a good long time, and I had to keep refashioning my NRPN converter abstraction to account for the full ranges of the parameters, as well as any offset. Ultimately, I ended up making a really useful tool, and now I can control the ION from any source (Pd, IanniX, hardware, Wiimote), provided I scale that source's output from 0 to 1.
I'm pleased as punch, though I think I should post the NRPN scaler/transmitter as its own entity, cos that'll be much more useful to folks using NRPN. Anyhow, thanks for looking!
Darrell
So... how bout that YM2151?
It's the same architecture used in all Yamahas 4 op FM synths like DX21, 27, FB01. IIRC it has 16 algorithms (wrongly called) which are fixed configurations of 4 operators - such as 2 parallel oscillators modulating 2 in cascade. Some of these include feedback paths and self feedback for generating noisy sounds.
Check out the detailed specs on any 4 operator Yamaha synth chip and you will dealing with roughly the same thing.
The above statements sound a lot like marketing talk, some of them don't even mean that much technically. They are saying the oscillators are all independent, that's all.
The DX7 structure has been implemented by Frank Barknecht in Pd , look at the PDX7 to see how.
AM is rapid modulation of volume that causes audiable sidebands. When the sidebands are inaudiable for low modulation frequencies we usually call the effect "Tremelo" not AM. Vibrato is slow frequency modulation, usually less than 10Hz
High-definition control change using NRPN
I'm trying to work out how to send 14-bit continuous controller messages to Pd, similar to the way pitch bend works. It seems that pitch bend uses Registered parameter numbers #98 and #99 to send 14-bit messages, by resetting the LSB to zero each time the MSB is incremented by 1 (and vice versa). Therefore a resolution of 16000 is achieved. however, the pitch bend information doesn't seem to be recognised by the 'ctlin' object in Pd. How can I get Pd to recognise this data, and is it possible to create a similarly high-definition stream using Non-registered parameter numbers (NRPN) along with any controller I like?
Fuck i love pd
ha ha...thanks guys.
i have new hardware now...for midi triggering....cost me 40bux.
it's a yamaha ry20
Your hardware equipment ?
I have an Athlon XP 1700+ with 1GB RAM and an original Creative Labs Audigy soundcard with an emu10k chipset. I run Fedora Core 3 with a PlanetCCRMA kernel. I use a Fostex Mixtab MIDI controller.
I have a Novation BassStation Rack monophonic analogue synth module, but a friend is borrowing it at the moment. I used to have a Korg X5 keyboard (back when I use my Amiga to make music, long before I heard of Pd), but it died. After that and before I got my non-obsolete computer I made a couple of tracks with synths borrowed from friends (Yamaha DD50, Roland EM10 maybe).
The sound reaches my ears through Spirit Absolute 2 monitors powered by a Samson Servo-170 amplifier.
I want to get a 5.1 surround sound setup soon, and an AMD64 laptop with 5.1 output, it'll be awesome. And a small MIDI keyboard would be fun, but I can't find one with a 3-octave keyboard and no expensive extra fancy controllers that I don't need, having the Mixtab.
Your hardware equipment ?
my hardware is an HP zv5000x notebook--2.8GHz celeron, 512MB ram. at the moment i am just using the onboard soundcard (SoundMax or something like that). i either monitor stuff through a cheap but decent 2.1powered computer speaker system or through my gemini pdm 14 mixer and on to a kenwood reciever through sony floor speakers. i have a yamaha djx keyboard but i haven't used it much lately and am considering selling it to free up some space and have some spending money.
on the wishlist:
-m-audio firewire audiophile, m-audio firewire 410, or m-audio firewire solo (whatever i can afford. the m-audio ozone might be nice too)
i also like the motu 828mkII and traveller but they are too expensive.
-a decent midi controller keyboard and maybe a synth module to replace my djx.
-lcd projector
-a martin mac250+ moving light would be fun (i used to have one i could play with at school).
-enough speakers to do 8 channel surround. (i also used to have access to a few genelec 5.1 systems)
-a job so i could afford this gear
-another computer, plus more memory for this one
i guess a better stop before i get too carried away...
have a good one!
