Start a new topic

Orba hacking knowledge base

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


28 people like this idea

Just some more musings while I'm waiting to open it up. I still don't quite understand the ESP32 / STM32 thing, or exactly what this is based on, so I'll be interested to look at the chips.


Anyway, in:


C:\Program Files\Artiphon\Orba\usb_driver


...there's a file called "libusb_device.inf" which starts with the following info:


DeviceName = "STM32 BOOTLOADER"

VendorName = "STMicroelectronics"

SourceName = "STM32 BOOTLOADER Install Disk"

DeviceID = "VID_0483&PID_DF11"

DeviceGUID = "{B32A0570-39E3-4CE5-8DBE-08DA462C8B2E}"


I came across an interesting website here...


https://devanlai.github.io/webdfu/dfu-util/


...which allows you to connect to DFU devices and upload/download firmware files etc from them.


Still don't know a lot about DFU mode; seems to be a general firmware update mode that you can enter on the Orba by holding down Vol+ while powering on. It will seem to become unresponsive, but it's still awake, To turn it off from this mode, you can hold down Vol- with the power key, and after that you can boot up normally. This is explained in Artiophon's notes about recovering an unresponsive Orba.


https://artiphon.freshdesk.com/support/solutions/articles/44002017914-what-do-i-do-if-my-orba-is-unresponsive-#:~:text=Hold%20the%20Volume%20Up%20(%2B),your%20Orba%20back%20to%20life.


DFU mode is described as "Update mode".


I found that I could connect the Orba, put it into DFU mode, then go to that website and enter "0483" as the Vendor ID. That comes from the entry above; "VID_0483&PID_DF11". VID = Vendor ID which is 0483 (I think). Haven't looked up what PID is.


So, if you enter that and click "Connect", I get a message saying: "devanlai wants to connect - STM32 Bootloader". I can select it and click OK, at which point I see this:


image


It's the list of devices I posted above, from dfu-util. I could get upload/download to work from that utility, but it works with this website. I'm wondering if any of these areas might contain something like song data that could theoretically be uploaded//changed/downloaded. ("uploaded" in this context means "read from device"). If this was possible it would take some experimentation; grabbing the file, recording something, grabbing the file again, messing with the changed data, restoring it to the device etc.


Just a thought. As always I take no responsibility for anything bad that might happen to yor Orba if you try this. :-)

   


1 person likes this

@BJG145 said:

  • "So I guess maybe delorean.bin is loaded into memory from Flash on startup...? Maybe note data and other settings are stored there, then written on shutdown."
I had a funny experience recently where I was recording a song. I was pushing it harder than I usually do and the Orba App crashed. It rebooted itself and when it returned a song that I was working earlier was now in memory?! I totally lost my song but at least this seems to support your theory.


1 person likes this
On LiveCode, for what it's worth: it does seem to be possible to retrieve installers, binaries, etc from the old open source edition (meaning hopefully that you don't have to build the Livecode development system from source) from archive.org: https://archive.org/search.php?query=creator%3A%22LiveCode%2C+Inc.%22&sort=-date This information from the readme of openxtalk, which is intended as a placeholder for a possible open source continuation of the development. https://github.com/openxtalk/openxtalk

1 person likes this

@GJ van Mulbregt

"I copyd the raw content of the files to my PC, with the original filenames. That made it possible to open them with Powershell and Chrome."


That is a great solution! In this way your PC would believe that "you" wrote the Powershell script and it would be trusted. I do think there is a setting somewhere to Trust scripts from the internet but I'm not sure how.


BTW, the new Editor doesn't require the use of any Daemon anymore :)


1 person likes this

...grr, this process of trying to figure out what board is inside it and talking to it is annoying me now. I did start to attack it with a hacksaw but it was tuned on and started playing some notes in protest so I relented.


It appears as "USB Serial Device" in Device Manager but I can't get beyond that; can't talk to it with Putty or the Arduino IDE. Tried various drivers for ESP32 and FTDI. Don't really know what I'm doing. I tried putting it in DFU mode (hold down Volume+ when while power on) and connecting it to a Windows PC that had never seen an Orba before, and got an entry in Device Manager for "STM 32 Bootloader"; haven't found a suitabloe driver yet. Is that a different board...? I've messed around a little with Arduino and Teensy is all, don't know about this other stuff. 


 https://www.google.com/search?q=STM32+v+ESP32&rlz=1C1ONGR_en-GBGB932GB932&oq=STM32+v+ESP32&aqs=chrome..69i57j0i13l4j0i22i30j0i8i13i30l2.3241j0j7&sourceid=chrome&ie=UTF-8



1 person likes this

@Subskybox & @BJG145

I copyd the raw content of the files to my PC, with the original filenames.  That made it possible to open them with Powershell and Chrome. 

After that a drag & drop from my Orba-preset folder, changing some values in the editor and saving the changed preset. It ended up in my downloadfolder. So that seems to work. Don't know what I did when changing the values :-) But that is because of my superficial expertise. Anyway, this looks very promising!


1 person likes this

I check out Roger's synth patch editor to see if could be adapted as a drum patch editor.


https://github.com/Batninja/Orba-Preset-Editor


It was created via a visual programming system called "Live Code" which used to be open-source, but is now subscription-based.


https://livecode.org/


It sounds like you can still access old unsupported versions on GitHub, but it looks like it has quite a learning curve, and given the new monthly subscription it would probably be best to start from scratch using a web interface like the Chord Fiddler.

 


1 person likes this

Great Work! 


On another note I'm looking at various ways to manipulate song data. I've found this great online sequencer that can interface with Orba and then export midi files. I think I could write a script that converts these midi files to song files :) The one problem is that it appears that Orba will only output sound from the voice mode that it is currently in. For example, if I plug in a midi keyboard and send notes to Orba, it plays those notes through the current voice mode (e.g. Drums) regardless of the channel I'm sending those notes on. I swear at one point that I could change the channel on my external keyboard and target the four voices by using midi channels [1,9,10,16]?!


1 person likes this

@ Mick: I would if I could.

It would be nice if Artiphon gave some clues to editing presets.

You can use the editor Roger Mepham made.  Or take an existing preset and edit in a text-editor.

I'm afraid it's more or less a matter of randomly adjusting values, saving the preset, loading it into the Orba and trying it out...


1 person likes this

Cool!


1 person likes this

@Subskybox: Thank you for sharing :-)


1 person likes this

And that's not going to happen, I think (requires too much memory). It's already a lot that you can manipulate instruments now.

It would be nice if the export as wav or midi finally came back (that function was, albeit a bit clumsy, in the original app). That has been at the top of the todo list since 1860.


1 person likes this

@ Mick: 

I think it is possible to emulate 'real' instruments on the Orba. But of course it remains a small synthesizer with technical limitations.

It would be nice if Artiphon would be a bit more transparent about the possibilities. Now we are very dependent on the Artiphon design team. And that team has not been known for speed so far.

Stating the obvious: Re-installing the app will bring back the standard presets you lost.

 


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

I suspect there is something systemic going on as I've seen recent posts about delays on Reddit. I'm exchanging mine for another (which I don't expect to receive anytime soon). I have been trying some of your DFU techniques to see if I can get it to take the latest firmware. I do have some new URLs:


https://storage.googleapis.com/orba2_firmware_updates/appcast_fw2.xml

https://storage.googleapis.com/orba2_firmware_updates/


I am really enjoying the new sounds but the limitations are too much to start any hacking yet.




1 person likes this
Login or Signup to post a comment