Start a new topic

Orba hacking knowledge base

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

27 people like this idea

...grr, I hate mini Allen keys. They're so fiddly and flaky. What's wrong with screws...? :-(

I have a box set but none worked; of the closest two, one was just too large, and the other just too small to turn the screws, though not to strip them.

I visited the local hardware store at lunchtime and tried every one they had (and they had a lot). One of them turned a couple of screws and I managed to extract them, but the others were too damaged. I thought the second Orba might be OK, but I've realised it's fractionally too small and won't turn them reliably, so I've given up in case I damage those beyond repair too. Hopefully it isn't too late.

The key I picked up was in a tray labelled 1.275. I'm not sure how to identify and obtain the exact key I need to open the Orba.

1 person likes this
Wow stick t6...

1 person likes this

Adding these to check for correlations.. @BJG145 Are Radiate & Bump really both Index 9?

From the Orba Manual:



1 person likes this
And there I stoppen. I don't have a spare Orba

1 person likes this


This suggests that range is settable in the Preset? I did find a bend range attribute in the App once

1 person likes this

I've attempted to carry out all the file flashing from the log, but none of it toggled quantise. 

Here are some notes on the procedure for reference. (I've attached a copy of the application's flash log, and my manual version.)

* * * * *

The Orba begins in DFU mode. The transfers start by using dfu-util to do something with the small system file option_bytes.bin that seems to involve grabbing it and then sending it back with different parameters. Then dfu-util sends the larger 0x00002000.bin and 0x00008000.bin files. 

Next a custom program called orba_capsense_bootloader resets the touch sensor via 21_X0_CY8C_Touch_A0_2988ebe.cyacd

The Orba restarts so it's no longer in DFU mode, and is set to programming mode. Another 

custom program called artiphon_esp32_programmer transfers the three files from the firmware zip; delorian.bin, bootloader.bin and partitions_singleapp.bin

The commands for dfu-util can be copied and pasted from the application's log. The parameters for are a bit more obscure, and you have to have to switch in and out of various modes at different points to carry out the steps and check the state of quantise, using console "B" to put it in programming mode before guessing at the parameters. 

You need to turn the Orba on and off at various points to work on it via the different programs; eg if you run the App you need to quit it and switch off and on before using Putty. You need to quit Putty before you can use











1 person likes this

I just tried running the artiphon_esp32_programmer command that handles the transfers, and that didnt toggle quantise either, so I'm coming to the conclusion that it might be something that's done by the Orba App itself outside the events in the log.

I noticed something else a bit strange about quantise and the App. It goes like this:

1) Play a song with quantise enabled, all fine.

2) Run the App and load a song containing eventData with quantisationMode set to 1 (so that the icon appears), but playback is non-quantised.

3) Quit the App, turn the Orba off and on again, and play the song. It's the one you loaded from the App, playing quantised. it seems that quantisation is enabled throughout, but playback in the App when you initially load the new song is without it.

I also wondered if quantisation enabled/disabled is separate from quantisationMode=0/1/2, and console "q" changes both.

1 person likes this

Hi folks, I'm afraid I don't have much to contribute to the hacking  part of this thread, but I am reading in idol curiosity.

I am hoping that what you have been able to discover will help me in using my orba2 when I get it.

I happen to be blind. My interaction with computers and phones is with screen readers. But Artiphon has not yet, and makes no promises, to implement any accessibility in to their apps though they do use JUCE which has embraced accessibility in it's more recent versions.

Anyway, as we know, the Orba is cool, but the software opens up the possibilities to change keys and sounds and other stuff.

So, I'm wondering how you hackers may be able to help make Orba more accessible. Any chance that accessibility may be considered in the software you are putting together?

Generally things are accessible if the conventional navigation and control  features of the OS are observed. Things get less accessible when custom UI features are used.

So, any thoughts for this blind musician hoping to exploit the Orba in my music making journey? :)


1 person likes this
AKM4386ET (adjacent to the STM32 chip on the main board) is an audio DAC. It expects an I2S input and produces a voltage to drive a speaker (usually via an amplifier.)

1 person likes this
Winbond 25x40CL (not far from the AKM DAC) is a 4Mb (ie 512KB) serial flash memory.

1 person likes this
0Hi @BJG145 and thanks! Yes, I played with the Orba a bit last week at NAMM. It is immediately engaging and I had a hard time putting it down and walking away from the booth.

I do use a DAW (Reaper) and if it weren't for the possibility of using it as a midi controller, I probably wouldn't consider buying an Orba because it really bothers me that the software provided by Artiphon is not accessible and so I wouldn't be able to change keys or presets.

In following this thread, it seems that @Subskybox has been developing some sort of app, but I haven't fully fleshed out what it is or what it does. But I'm hoping that work may be more useful to me than the current Orba app is. I want to be able to change keys and presets so I can have fun with the orba apart from my DAW.

In any case, I don't have an Orba yet. The new ones are set to ship in July.

1 person likes this
CY8C4025AZI-S413 (on the rear of the sensor board) is another ARM processor. This one is a Core-M0 design from Cypress Semiconductor. I think of its function here as the keyboard processor.

1 person likes this

(...just to clarify...this list 80, 82, 83, 85, 87, 89, 90, 92 defines a series of steps, 2, 1, 2, 2, 2, 1, 2, from a fixed root note corresponding to "80", making a Dorian sequence; root, tone, semitone, tone, tone, tone, semitone, tone. The "intervals" sequence, P1, M2, A4, etc, does nothing here; you could mix them up and you'd still get the same notes...)

1 person likes this

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. 


1 person likes this

Never tried. There is no documentation about this, as far as I know.

I don't have root permits either ATM, so I haven't tried.

1 person likes this
Login or Signup to post a comment