KATANA- Condor's Katana AMP GUI Control (MIDI over USB) with Android

Started by condor, February 24, 2017, 12:23:06 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

mercury1

I would really like to get in on this Condor , unfortunately my phone does not support OTG . My Chromebook supports OTG, and with a program called Arc Weilder it can install some Android apk files. I am in developer mode and also able to run Ubuntu 16.04 in a shell with crouton. After test with Arc Weilder it says Katanaeditor has stopped . Do you think it is possible to run your app on chromebook or have I missed a step somewhere?           Thanks
Gr-55, Gr-33, Gr-1, Vg-88, Jamman looper, Brian More 88.13  ,/ 8.13 , Fender hm strat( gk-3 ), Hammer( int gk-2) , Behringer V-ampire Lx1200 / fcb1010

condor

The latest editor version fixes the reverb bug and adds the compressor device.
I also started to implement the patch store and load functionality.
Its only accessible vie the menu settings because of its early stage.
The patch store command just writes the panel settings (without button state) and patch load restore it.
The patch files will use JSON format so you will be able to edit them in the file itself too.

vtgearhead

That's great.  I found that delays were required between commands for some operations, otherwise the amp seems to "miss" things.  When you do bulk update from your app you may run into this issue.  Let me know what you find.

gumtown

Quote from: condor on March 17, 2017, 12:23:04 PM
The patch files will use JSON format so you will be able to edit them in the file itself too.
The Tone Studio (*.tsl) patch files are in JSON format too, I have some opensource code (in C++) which has been used to convert *.tsl tone studio patch files into Katana sysx patch format.
https://sourceforge.net/projects/grfloorboard/files/Katana%20Patch%20Loader/
if you look within the sysxWriter.cpp file, I also have the reciprocal code for converting sysx patch data into *.tsl tone studio readable patch files if you want it.
Free "GR-55 FloorBoard" editor software from https://sourceforge.net/projects/grfloorboard/

condor

Quote from: gumtown on March 19, 2017, 01:03:49 PM
if you look within the sysxWriter.cpp file, I also have the reciprocal code for converting sysx patch data into *.tsl tone studio readable patch files if you want it.

I will take a look at the .*tsl converter. Thank you for the link. Great work.

fificap

Hi,

Thanks a lot for this tool, it's great to be able to control the amp with my phone !
I tested it successfully on my Samsunfg S5 on android 6.

The test i made was not in deep, but quickly the control on amp (led) react good on phone commands. Only a "mute" test as it is too late in France for a test with sound ! (not so late in fact but my family need to wake up very very early tomorow !).

Thanks again and continue your effort !
Philippe

vtgearhead

Hey, Condor!  I realized today that I managed to miss the extra "pages" of deep settings for parametric EQ, pitch-shift and harmonist when writing up the API.  Just corrected that and pushed the updated version to GitHub. 

condor

thank you all for the support and kindly words.
I attached the latest version.
You can now store and load your own patches in download/katana folder. Delete button is not yet working.
The folder will be automatically created at first run.
I also added chain selection and fixed some bugs. Now fx selection works fine with the already implemented devices.
The UI now shows your device names for better overview. There are also a lot of other minor improvements.

You will find 2 example files created with the editor in attachment. Copy them into download/katana folder and have fun.

There is still a bug (the official BTS also have) related to changes which are made by user to the amp controls (gain etc) in the app.
You have to alter some of the real amp controls knobs a little to hear your changes.You also have to do it after a patch is loaded.
Or alternativ just toggle gate on/off which has also the same effect like turning a amp knob. Maybe somebody can help me to explain and solve this? For the patch trasmission I don`t use sysex dump but single sysex messages.


condor

I found out that sending panel select command solves the problem I described above.
It seems that this moves the patch data from temporary patch section to panel memory or something like that. I will update the app so you dont have to do this manually via Settings - Show test screen - panel

condor

In this revision I unified the UI handling for all buttons. Now you can directly change from e.g. Delay/Fx to Boost/Mod.
Added the sync cmd after patch has been loaded too. Would be happy if somebody could also test with K100 and tell me his/her findings.

Elantric

Quote from: Graham G, post: 23796251, member: 169217Condor,can you point me to an idiots guide on how to get this working,for idiots like me(old ones)
Must use an Android device ( Phone/ Tablet) that supports USB OTG ( USB Host) adapters and has Android OS version 6 or higher

Search google for the specific working "micro USB  OTG" adapter for YOUR Android device ( many generic ones don't work )

Locate the forum for your device here to get the link for the working USB OTG adapter
https://forum.xda-developers.com


Then use a USB 2.0 Printer cable between Katana USB jack and the OTG adapter connected to your Android device

QuoteGraham G said: ↑
I think i,ve run into my first issue,my phone is a
Samsung Galaxy Note 3
Android Version 5.0
I think i read in the thread it has to be Version 6.0 or higher?

The issue is older versions of Android that old will NOT connect to the Roland/ Boss gear and support "MIDI over USB"

Trivia - This is because the Katana is NOT USB Class Compliant ( while the Fender Mustang amp is ) , and only some versions of Android OS 5.1 or higher include Alsa / Jack Audio (incorporated into latest versions of android ) which the Linux community included support for Roland / Boss MIDI over USB a few years ago, and that code eventually got rolled into Android 6

My Galaxy NOTE 2 - does not work

NVidia Shield K1 (Android 7)- works

LG V20 (Android 7) - works

fificap

Quote from: condor on March 24, 2017, 02:12:20 AM
In this revision I unified the UI handling for all buttons. Now you can directly change from e.g. Delay/Fx to Boost/Mod.
Added the sync cmd after patch has been loaded too. Would be happy if somebody could also test with K100 and tell me his/her findings.

KatanaEditor V8 works fine for me on Galaxy S5 (i haven't test yet the patch function) , Thanks a lot Condor for this great tool.

Philippe

digipaul

Thanks Condor for your hard work. The KatanaEditor is working for me on Kindle Fire 7" with a Katana 50.  It's really amazing what you are doing.
I haven't yet tried the patch loading but had a question. Will this enable us to save/load patches containing any fx? Or, will it only load patches that contain fx that are assigned to the three fx knobs?

condor

Yes the complete fx matrix is saved when you store a patch.

gustavz

i don't know if it's caused by my LG G3 under Android 6, or the fact that i use the Kat 100, or my mistakes using the app, but the Editor V8 doesn't work well.
Too many messages from the phone, when connecting the amp. The amp was not recognized, sometimes it does, but often the handy freezed and crashed.
The earlier versions worked.

condor

Could you make a screenshot of the messages which are visible during connection procedure?
What do you mean with crashed? Your phone does a reboot?

gustavz

sorry, this weekend i was buisy. But now, i found some time:
when i installed the V8, the first message popped up to allow the data Transfer.
When i connected the amp  next message was to allow the editor to contol the amp. This popped up about 5 times that i agreed, at last the editor screen appeard, but without connection to the amp settings.
So i closed the app and switched off the amp. After some minutes i started the amp again. The message to allow the app to control the amp popped up about 5 times, then very short the editor screen appears, with the correct settings of the amp and then my phone doesn't react to any touch of my fingers, at last the Screen turn to black and the phone does a restart.

Until V6 the app is runnig without Problems with my Kat 100!

I'm very interested in the editor and it is really great work you are doing. So i'm willing to try next versions.

Beanow


condor

Thats really great I will add them to the editor soon. (i have very little spare time at the moment to work on the editor)
Thanks for sharing your findings. i must admit i already thought that the Katana range amps have some hidden features.

Beanow

Btw, just tested V8 with a USB type-C OTG connector on the One Plus 3 and the 100w combo Katana on 1.0.2 firmware.
It takes some fiddling to get the APP to show the current settings, but once it's synced it works great.

Perhaps this helps you, but you seem to do SysEx Katana queries as your first probing method.
BTS uses the Universal SysEx identity request to probe for the Katana. F0 7E 7F 06 01 F7
To which the Katana should reply F0 7E 00 06 02 41 33 03 00 00 01 00 00 00 F7

condor

I tried the pre amps with my app. Its unbelievable!! They really change the amp characteristics. I did not get volume jumps or other artefacts it seamlessly changes the sound. Really great stuff. Thank you Beanow for the hint!
By the way you can send the needed sysex with the app by activating "Show Test Screen" and enter the address 60 00 00 51 and the value fot the pre amp. Than press SendTx and you will see the output sysex message on the main screen (toggle out sysex must be enbaled to make it visible)

condor

Quote from: Beanow on April 07, 2017, 05:52:12 PM
Btw, just tested V8 with a USB type-C OTG connector on the One Plus 3 and the 100w combo Katana on 1.0.2 firmware.
It takes some fiddling to get the APP to show the current settings, but once it's synced it works great.

Perhaps this helps you, but you seem to do SysEx Katana queries as your first probing method.
BTS uses the Universal SysEx identity request to probe for the Katana. F0 7E 7F 06 01 F7
To which the Katana should reply F0 7E 00 06 02 41 33 03 00 00 01 00 00 00 F7

Thanks for testing and the suggestions.
I had a lot of problems to get the USB Midi driver on android to work stable during connection phase. Sometimes incoming sysex is not passed to the application by the driver therefore I implemented retry handling which is sometimes a bit irritating for the user.
I also did not understand yet how to parse/create the sysex dump for the patch change, I do it the hard way sysex by sysex. I´m sure there is also a better way to submit the patch settings (tone settings, fx matrix, parameter values ...) via dump. Maybe snhirsch can explain the way he has done it in the Midi Bridge.

Beanow

Quote from: condor on April 08, 2017, 02:25:20 AM
By the way you can send the needed sysex with the app by activating "Show Test Screen" and enter the address 60 00 00 51 and the value fot the pre amp. Than press SendTx and you will see the output sysex message on the main screen (toggle out sysex must be enbaled to make it visible)

Good point. I should add this as a possible method.
But of course most awesome would be a less typing involved dropdown somewhere. Bonus points if you label them Sneaky Amps :>

Quote from: condor on April 08, 2017, 02:39:30 AM
I also did not understand yet how to parse/create the sysex dump for the patch change, I do it the hard way sysex by sysex. I´m sure there is also a better way to submit the patch settings (tone settings, fx matrix, parameter values ...) via dump. Maybe snhirsch can explain the way he has done it in the Midi Bridge.

I haven't delved into this much yet, got too excited with the sneaky things and binding individual parameters to MIDI controllers.
But as I understand snhirsch has looked at how BTS does this and implemented the same approach in the bridge's code.
The method you're looking for is PanelPreset.read_from_amp(...) https://github.com/snhirsch/katana-midi-bridge/blob/master/panel_preset.py#L56
This uses some constant addresses, which are defined in https://github.com/snhirsch/katana-midi-bridge/blob/master/globals.py

Quote from: condor on April 08, 2017, 02:25:20 AM
I tried the pre amps with my app. Its unbelievable!! They really change the amp characteristics. I did not get volume jumps or other artefacts it seamlessly changes the sound. Really great stuff. Thank you Beanow for the hint!

Be sure to have a look at the other threads here and on the gear page. Even more sneaky params are popping up and KATANAFxFloorBoard is currently the easiest way to explore these (it basically pretends like the Katana is a GT-100 with different SysEx headers and works really well!). I intend to use this next to map out what else works. Probably in a very broad overview style and referring to the GT-100 midi implementation PDF for SysEx details.

gumtown

Quote from: condor on April 08, 2017, 02:39:30 AM
I also did not understand yet how to parse/create the sysex dump for the patch change, I do it the hard way sysex by sysex. I´m sure there is also a better way to submit the patch settings (tone settings, fx matrix, parameter values ...) via dump.
If you want to retrieve a whole patch dump from the Katana, the following data requests should dio it.

temp address = F0 41 00 00 00 00 33 11 60 00 00 00 00 00 13 00 0D F7

patch 1 = F0 41 00 00 00 00 33 11 10 00 00 00 00 00 13 00 5D F7

patch 2 = F0 41 00 00 00 00 33 11 10 01 00 00 00 00 13 00 5C F7

patch 3 = F0 41 00 00 00 00 33 11 10 02 00 00 00 00 13 00 5B F7

patch 4 =  F0 41 00 00 00 00 33 11 10 03 00 00 00 00 13 00 5A F7

the reply patch size will be 2332 bytes
Free "GR-55 FloorBoard" editor software from https://sourceforge.net/projects/grfloorboard/