Start a new topic

Orba hacking knowledge base

This thread is intended to gather the feedback of Orba tinkerers.


27 people like this idea

If Artiphon are unwilling to add the features people want themselves, why not open it up so people here can build what they won't?

2 people like this
@ Gabriel Velasco. I you don't trust your ears then use an app. https://play.google.com/store/apps/details?id=com.vuche.asap

The new Soul Chords preset in 0.15.27 should give us some good additional data points for reverse engineering the XML encoding of their chords. This preset has 7th, 9th, and 11th chords. We can compare this to the default, open, and 7ths presets. 


The default Orba chord presets should be triads - 1, 3, 5. The default #7 chord G/B has the third on the bass - 3, 1, 5.


The Open preset supposedly emphasizes the octaves more. If by "open" they mean 5ths or "power chords", then they should be lacking the thirds somewhere. Maybe 1, 5, 1?


The 7ths preset adds the 7ths and might drop the 5ths. So either 1, 3, 5, 7, or 1, 5, 7 if they can only encode three notes.


The new Soul Chords preset supposedly has 7ths, 9ths, and an 11th. Technically, those should be 1, 3, 5, 7 and 1, b3, 5, 7 and 1, 3, 5, 7, 9 and 1, b3, 5, 7, 9 etc. If they are limited in how many notes they can have in their chords, then they will start by dropping the 5th. 


I haven't had a chance to analyze the chords, and it might be a bit tricky because synth presets with lots of harmonics or built-in harmonic intervals like octaves and fifths can throw off your ear. But if we can figure out which notes are contained in each chord, then compare the chord presets that deviate from triads, we might be able to figure things out. I already looked at the XML for all of the chords presets, and all of them except the Open and the 7ths are exactly the same. Comparing the 7ths to everything else that doesn't have 7ths and to the new Soul Chords preset that does have 7ths should tell us how they add 7ths. 


-=Gabriel=-


1 person likes this

After trying out the latest presets which contain some new chords, I revisited the idea of hacking the XML and discovered something I thought was worth mentioning. 


Above, I was just looking at a string of 40 characters inthe XML which seemed to control the cycle of eight chords in some way when treated as eight sets of five. However, the next 40 characters also has an effect. This probably explains why I couldn't make any sense of the changes I was making when I was only looking at the first half. I think maybe it goes round twice somehow.


So for instance, if you take the 16 five-character strings from the "1981" patch, you get this:


BwwQA AcMDw AHDA8 ABAcQ AAQHD AADBw wAAwz 8AAQM

+wADB wAAAw gAAAQ HAAAD BwAAA wcAAA QHAAA EBwAA

...followed by "Awc".

 

The corresponding string from the "Passage chords" looks like this:

 

CxMYA AcPGA AKDxM ABxAT AAoOE QAHCg 70/AM KAAQH
DAAHC g70/A MKAAc JDvT7 BAz0/ gMH9P sEB/T +AgX0

...followed by "Ago".

 

If you leave the first half of "1981" intact, but swap out the first four 5-char sets of "Passage chords" in the second half, you get a new hybrid result...


BwwQA AcMDw AHDA8 ABAcQ AAQHD AADBw wAAwz 8AAQM 

DAAHC g70/A MKAAc JDvT7 BwAAA wcAAA QHAAA EBwAA 


...followed by "Awc"


...which sounds like this:

 

https://soundcloud.com/qchord/orbachords/s-MkHErytsQ1Y?si=d1e2e0a24a8149f5814f2f10a867791c

To be clear: a few presets every now and then are not to be considered a serious update ...


2 people like this

Please make up your mind, Artiphon. Update your software or hand it over.

"Depending on the vendor, end-of-life may differ from end of service life, which has the added distinction that a vendor of systems or software will no longer provide maintenance, troubleshooting or other support. Such software which is abandoned service-wise by the original developers is also called abandonware. Sometimes, software vendors hand over software on end-of-life, end-of-sale or end-of-service to the user community, to allow them to provide service and further upgrades themselves." (https://en.wikipedia.org/wiki/End-of-life_product)


3 people like this

This seems a nice gadget too: the Odd Ball. There are differences. But it seems to work better out of the box, with a better app ... I wonder what Artiphon thinks of this.


1 person likes this

This.


@Artiphon, @Evan, if you're listening, p l e a s e give us documentation to modify sounds/chzords/tunings! The Orba would immediately be seen as a much more capable device, people would make more videos about it, there's nothing that could go wrong for you. As it stands, this device is barely using half of its potential


Probably could have been a thousand patches/sounds already. Or at least start a storefront.

Love my Orba. Peace.


2 people like this

@BJG145 these are extremely interesting findings! Especially on the part of how sending an 'incomplete' xml file will still allow the Orba to implement just those changes to whatever sound is currently loaded, basically only overwriting certain aspects in the synth engine, instead of the whole sound every single time. This could massively clean up my Presets, as I don't have to havw two of every e.g. Lead sound (penta- and diatonic), but just the base sounds in pentatonic, with one preset to switch any of them to diatonic.

On behalf of deciphering the structure of the chords, have you tried to interpret the string values using a Hex Editor? It might be that the String representation is misleading and the inherent info lies in the way that string is stored. Just food for thought.

@Artiphon, @Evan, if you're listening, p l e a s e give us documentation to modify sounds/chzords/tunings! The Orba would immediately be seen as a much more capable device, people would make more videos about it, there's nothing that could go wrong for you. As it stands, this device is barely using half of its potential


7 people like this

Oh, I dunno, I think this is too difficult. 


The above is the data for the 7th chords. The data for the standard chords is:


Pad 1: BwwQA

Pad 2: AcMDw

Pad 3: AHDA8

Pad 4: ABAcQ

Pad 5: AAQHD

Pad 6: AADBw

Pad 7: wAAwz

Pad 8: 8AAQM


(You'll find this concatenated as a string in the aforementioned field in all the standard chord presets.) 


...and you can discover new chords by accident by changing characters. But there are no clear patterns. Eg incrementing the first character of the string once or twice on one pad might give you a 4th, or a 6th, but incrementing the first character of a different pad gives you something else. You can find breadcrumbs, but we'll have to wait for Artiphon to give us the recipie.


It should be possible to map an alternative set of chords by choosing the right tuning values as described above, though it'll be a fiddly process, where you'd have to take account of the natural shifts from major to minor (to other?) as you go through the pads, then find the right tuning value to put the chord you want onto one of those slots.


1 person likes this

There might be some mileage in trying to disentangle this. The corresponding part of the data in the standard (non-7th) chord presets begins: "BwwQA". I've discovered that if you swap this out with "CxATA", the first chord (and only the first) becomes the 7th version. If you swap it out with "BwwVA" it becomes the 6th. So, increment the fourth character of the sequence for a chord to change a standard chord into a 6th? Maybe. It'll take a bit of tinkering to find out what the system is. Disclaimer: I take no responsibility if you brick your Orba trying. ;-)


But in any case, the "minimal XML" idea is a useful one. You can turn any preset into a 7th preset this way. This is what the pared-down version looks like; not to copy the data, just to indicate the general structure.


image


1 person likes this

I've been comparing the 7th chord preset to the regular ones to see where the difference is, and it seems to be the "modifierData" value for the first "ModifierEntry". You can create a minimal XML file with just this first entry 


<PresetEntry>

  <ModifierList>

    <ModifierEntry>

 </ModifierList>

</PresetEntry>


...and that's enough to change chords to 7ths when you load it. The rest of it makes no difference.


Specifically, it seems to be the different section of characters in the middle, starting with "CxA" and ending "Bwo". If you mess with this string, strange things happen to chords.


From tinkering around with it, I suspect that string contains note data for the chords in order, so the first thing would be to try finding where it divides. It seems that the pads are controlled by a sequence of five characters starting with the CxA.


Pad 1: CxATA

Pad 2: AoPEw

Pad 3: AKDxM

Pad 4: ABAsT

Pad 5: APsEC

Pad 6: gADCh

Pad 7: MABgg

Pad 8: PAAQJ


1 person likes this

Here's a daft example of what this dorian tweak sounds like, to explain the workflow. It's a loop recorded from the headphone output.


https://soundcloud.com/qchord/dorian/s-EHRvCu2vB7A


If you try and transpose one of these altered tunings once it's loaded, it reverts to one of the standard scale/pentatonic types. So what I did was:


1) Load a song or presets to get the sounds

2) Select a key for the chords

3) Load the dorian tuning preset into lead and bass

4) Noodle aimlessly


You can load these altered tunings from the Chord bank too, to mess around with those, though I think the harmony sequence is fixed to the standard musical progression maj min min maj maj etc.


2 people like this

In the "Orba presets sharing point" thread, Stuart Crouch demonstrates how to create presets for alternative lead scale tunings, which is a brilliant discovery, but these overwrite the currently loaded drum sounds.


Here's a process for creating a "Tuning-only" preset, using Dorian as an example.


1) Make a copy of the “Orba.orbapreset” file from the “Drums” folder somewhere


2) Rename the file to “Dorian.orbapreset”


3) I used Notepad++ for this. Edit the file to remove everything except the header line, the "TuningEntry", and its outer "PresetEntry" as shown here:


image


Change the "name" entry to "Dorian" and change the numbers in the "tuning" list to a Dorian scale. (The "intervals" don't seem to matter.)


4) Copy it back into the “Lead” subfolder of "Presets"


5) Run the Orba app and load a song, eg the “Orba” song


6) Go to presets and load the “Dorian” preset


Your lead will now be tuned to the Dorian notes you entered without affecting anything else. 


The key seems to be the "percussion" type specified in these presets; it doesn't work with the "tonal" type usually found in lead presets.


You can change bass tuning with the same file; simply copy it into the Bass subfolder instead. 


2 people like this

I haven't had the Orba long enough, nor have I followed this thread long enough, nor have I had a chance to experiment with any of the hacks, so I can't give you a very satisfactory answer straight away, but I can tell you how I would approach this problem with just an out-of-the-box Orba and no hacking tools.


There are two parts to your problem. First, you want dominant sevenths and currently there is only one CHORD preset that gives you 7ths. Even worse, the 7ths that you get are the diatonic sevenths - Cmaj7, Dm7, Em7, Fmaj7, G7, Am7, G7/B, and C6. That C6 is interesting, but that's another story. I actually like this preset a lot, but it doesn't help you.


The second part to your problem is that you want a D7 (dominant) which has a major third, not a minor third. 


So, let's talk about the first part of the problem first. I know this is unsatisfactory, and hopefully Artiphon will address this soon, but you can always substitute a major chord for a dominant 7th chord and it sounds OK if you're playing with others. So having a C and a C7 is redundant if you're willing to live with a chord substitute. That means that you could cover your C7 with a C, your G7 with a G, and your D7 with a D. That means that the only problematic chord given the default out-of-the-box CHORD preset would be the D which is a Dm instead of a D which is what you need.


It looks like you're basically wanting to cover G blues. If you are willing to deal with "major for 7th" chord substitutes until Artiphon get's their stuff together, you could instead switch to the key of G. That would give you G, Am, Bm, C, D, Em, D/F#, G'. Substituting your C for a C7, your G for a G7, and your D for a D7, that gives you all of the substitutes that you need. 


1 person likes this
Login or Signup to post a comment