Start a new topic

Orba hacking knowledge base

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


27 people like this idea

>"...somehow this isn't working for me..."


...likewise, just tried:


1) Flash from file

2) Clear Songs/Presets and let the App rebuild

3) Mobile MIDI off, channel-per-part on


...but I haven't got this to work via USB MIDI. I haven't tried it with Bluetooth; don't know if you were using a Bluetooth connection when it worked...? 

...aha, you need to address the Orba on a different port, not just a different channel.


image



1 person likes this

>"With the dfu-util writes, we see all the parameters for the command, but with the esptool.py writes, we don't."


I'm mainly interested in reading the Winbond chip now, and I haven't figured that out yet. However, I think I've extracted the esp.pytool parameters FWIW. 


I tried running running the artiphon_esp32_programmer command from the log while the Orba was already in programming mode. Usually it tries to do that itself, so I think it was surprised and reported some additional info.


I've attached the log, but the bit I was interestyed in was:


Programming attempt failed: CalledProcessError(2, ['D:\\orba\\fresh\\esptool.exe', '--chip', 'esp32', '--port', '\\\\.\\COM12', '--baud', '115200', '--before', 'no_reset', '--after', 'no_reset', 'write_flash', '-z', '--flash_mode', 'dio', '--flash_freq', '40m', '--flash_size', 'detect', '0x1000', 'C:\\Users\\admin\\AppData\\Local\\Temp\\tmp7snsjpvc\\bootloader.bin', '0x10000', 'C:\\Users\\admin\\AppData\\Local\\Temp\\tmp7snsjpvc\\delorean.bin', '0x8000', 'C:\\Users\\admin\\AppData\\Local\\Temp\\tmp7snsjpvc\\partitions_singleapp.bin'])


Usually it just says...

Programming files {'app': 'C:\\Users\\admin\\AppData\\Local\\Temp\\tmpg15gztml\\delorean.bin', 'bootloader': 'C:\\Users\\admin\\AppData\\Local\\Temp\\tmpg15gztml\\bootloader.bin', 'partitions': 'C:\\Users\\admin\\AppData\\Local\\Temp\\tmpg15gztml\\partitions_singleapp.bin'}


...but this different version shows the addresses and other parameters for the esptool.py command. 


I've noticed a Windows version of this utility, esptool.exe, in one of the update folders, and I expect this is what flash-from-file uses.


I've realised that I was wrong about the consecutive writes to the same address for bootloader and delorean; I'd misread a zero. bootloader goes to 0x00001000, and delorean goes to 0x00010000.


There's some info on P29 of the ESP32 Technical Reference Manual about memory mapping for external flash (Winbond?), but I haven't managed to do anything with it. If I try pointing esptool.py at one of the addresses there like 0x3F400000, it gives an error about how it can't handle over 16MB, so I'm not getting that right. 

txt

@BJG145 Aha! I did read something about the ports. What program is that displaying the ports above? Is that Live? Also are you able to see the ports in the Settings on this site?

...that's a free Windows DAW called Cakewalk by Bandlab.


https://www.bandlab.com/products/cakewalk?lang=en


Basically, if you disable mobile mode and enable multi-channel mode, you can address the Orba on four different MIDI ports which are all set to "Omni" (receive data on all channels).


Will check the website. 


1 person likes this

>" Also are you able to see the ports in the Settings on this site?"


Yep. (Haven't tested.)


image


Thanks for that. I can get that to work on my PC but not my Mac.. I need to investigate more. The good news is that Signal is Open Source located at https://github.com/ryohey/signal


I created a Feature request and maybe it will get picked up. This would allow each channel to target a port. Building this sequencer is a massive amount of work and from my tests this is quite powerful! I could build a MIDI => SONG converter in the future.


image



1 person likes this

CakeWalk! I used that 30 years ago!! Its still around :)

...yep, it's free now, and pretty good...:-)

...I wasn't aware of its history. I used it for years as Sonar by Cakewalk; they finally packed it in and it was released for free as "Cakewalk by Bandlab". But, yes, apparently "Sonar" started as "Cakewalk" by a company called "Twelve Tone" back in 1987, with the company eventually adopting that name. And, yeah, it's good; probably the best free DAW for Windows.

@ Subskybox

"I could build a MIDI => SONG converter in the future."


That would be something ... When Orba came out it could save songs to midi and even avi (be it not perfect so it was removed from the app).

I think I'll have to abandon the search for QuantStartSnap for now; the Orba's storage and memory structure seems quite complicated and I don't really understand it.


Everything I've read about the Orba's ESP32 indicates that it has 4MB of internal Flash, but in trying to find the exact upper limits of it, I've been doing some ridiculous Flash reads, up to nearly 16MB. I don't know what or where this block of storage is; it might be internal Flash, external Flash, or even RAM for all I know. I'd have thought that it would be the logical place to store performance data and maybe other settings, but I haven't been able to capture any changes apart from the "Bluetooth area" I mentioned before.


For instance, a couple of consecutive grabs following some changes inserted a few more of these "LE_LOCAL_KEY" commands into a block of them.


image



 There's also an adjacent block of data I'm suspicious of. At other times though, you think, "Surely something must have changed between these two Flash grabs"...and it hasn't. For instance, I just grabbed 16MB of this Flash area; the most I've been able to get hold of; then added a note, powered off and on to save any changes, grabbed it again...and the two files are identical. 

 

********************************************************************************************************

 

 Anyway, I've given in to temptation and ordered an Orba 2. It's not something I'd have purchased without the discoveries that have been made in this thread, but dissecting Orba 1 has made me more fond of it, and developments like Chord Fiddler have considerably enhanced it. Naturally I'll be interested to see what the changes are, and perhaps they'll shed more light on the Orba 1. I probably won't pullit apart though. ;-)

You've given it a good go! The elusive QuantStartSnap and other settings are really hiding somewhere. I've seen things in the code like quantSlider or similar.. I'm going to hold out and assume that Artiphon will bring these to the App in the next few months.


I've decided to take a small hiatus and contemplate where to go from here. I'm revisiting my the list I posted a while back:


SUCCESSES (from this forum):

1. Modify Thumbnail Images

2. Create Custom Chords

3. Create Custom Scales

4. Create some clever Presets

5. Continued understanding of hardware/software

6. ... ??? I could make a script to quantize song files or wait a few months

7. ... ??? I would like to make a MIDI to SONG utility but I'm not sure it would be a huge benefit. I think the goal is to make Orba a great stand-alone synth.. To do this they need to add: quantization, key change on the device.. I'm thinking A + OCT + Vol +/- would be a great way to do this.


FUTURE HOPES:

1. Find Drum settings that can be tweaked realtime (I may add knobs or sliders for CC values to the Editor in the future.)

2. Find an interesting use for Spin gesture (Possibly could be used for key change)

3. Understand how gestures are bound to synth params and cc values

4. Have Orba record pitch effects

5. Examine Bezier and Song Base64 data (started on this but didn't get far)


1 person likes this

@subskybox that sounds quite a lot - any chance gathering it all in one place? Either a pinned post or a website? This thread is now almost 30 pages...


1 person likes this

This Forum contains some information on where to get these utilities:

Orba Utilities


The Git repository explains how to download and use them.

Login or Signup to post a comment