Looking for interested developer - TonePrint editor & TC Electronic Plethora X5

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Looking for interested developer - TonePrint editor & TC Electronic Plethora X5

Mark Knecht
Hello,
   TC Electronic has a lot of pedals that use their toneprint technology. They have recently released a new device called the Plethora X5 which slots 5 TC pedal 'models' into a single virtual 'board' and supports 128 'boards' stored in the Plethora. Visit YouTube for a plethora (sorry) of videos on the device over the last couple of months.

   I purchased one of these devices. It works well (so far). It's Linux internally running 4.9.47-rt37. 

   Sadly there are a couple of rather disappointing issues:

1) Nothing new but TC doesn't support Linux with their TonePrint editor. I see some reports of users running the app with Wine but I cannot be bothered to do that so I'm using it on a Win10 laptop where my excessive Native Instruments investments reside. This is manageable but not preferable for me.

2) The biggest issue - there is apparently no way to back up your settings which reside in the Plethora X5. The TonePrint editor communicates with the Plethora over USB or BlueTooth but apparently acting as little more than a monitor. You can create and edit settings for each of the 5 pedal models you are running in a single board but it seems the only way to store them is in the Plethora itself. My (very limited) initial investigation leads me to believe that there are no data files left on the Windows machine and all data is only in the Plethora X5. Therefore, be it fire, theft or accident, if something goes wrong with your Plethora all of your personally created sounds are lost. (I'm waiting for confirmation of this from TC Electronic but so far I cannot see why this wouldn't be true.)

  Anyway, I'm not a coder but I am technical. If there's someone out there with an interest of working on some sort of Linux TonePrint support please get in touch.

Cheers,
Mark Knecht

_______________________________________________
Linux-audio-dev mailing list
[hidden email]
https://lists.linuxaudio.org/listinfo/linux-audio-dev
Reply | Threaded
Open this post in threaded view
|

Re: Looking for interested developer - TonePrint editor & TC Electronic Plethora X5

Sam Kuper
On Tue, May 26, 2020 at 04:57:14PM -0700, Mark Knecht wrote:
> I purchased [a TC Electronic Plethora X5]. It works well (so far).
> It's Linux internally running 4.9.47-rt37.

I'm curious: how do you know which kernel your Plethora X5 uses?

Also, do you know which microprocessor(s)/FPGA(s) the Plethora X5 uses?

I'm partly asking because I wonder if the X5 might be able to run
software from Mod Devices or vice versa.  Mod Devices makes ARM-based
multi-FX guitar pedals that run Linux: akin to the X5 but using
LADSPA/LV2 plugins instead of TonePrint ones: https://moddevices.com

Finally, do you know if TC Electronic has published any of the source
code relevant to the Plethora X5?  If they are distributing GPL'ed
software (e.g. as X5 firmware updates), then they may need to publish it
by law.  See for example:
https://en.wikipedia.org/wiki/Gpl-violations.org#Notable_victories

Access to the source code would make it easier for developers to enhance
the X5's functionality and to fix shortcomings like the one you describe
below.


> The biggest issue - there is apparently no way to back up your
> settings which reside in the Plethora X5. The TonePrint editor
> communicates with the Plethora over USB or BlueTooth but apparently
> acting as little more than a monitor. You can create and edit settings
> for each of the 5 pedal models you are running in a single board but
> it seems the only way to store them is in the Plethora itself. My
> (very limited) initial investigation leads me to believe that there
> are no data files left on the Windows machine and all data is only in
> the Plethora X5.

If you plug the Plethora X5 into a Linux box via USB, how does it
present itself to the host?

    # Run this on your GNU/Linux box with the X5 not connected:
    lsusb --tree > /tmp/lsusb_x5_disconnected.txt

    # Run this on your GNU/Linux with your X5 powered up and connected
    # to it via USB but everything else the same as above:
    lsusb --tree > /tmp/lsusb_x5_connected.txt

    # Copy the output of this command and paste it into a reply to this
    # email:
    diff /tmp/lsusb_x5_disconnected.txt /tmp/lsusb_x5_connected.txt


> Therefore, be it fire, theft or accident, if something goes wrong with
> your Plethora all of your personally created sounds are lost. (I'm
> waiting for confirmation of this from TC Electronic but so far I
> cannot see why this wouldn't be true.)

Please can you update this thread with TC Electronic's reply when you
receive it?

Thanks.


--
A: When it messes up the order in which people normally read text.
Q: When is top-posting a bad thing?

()  ASCII ribbon campaign. Please avoid HTML emails & proprietary
/\  file formats. (Why? See e.g. https://v.gd/jrmGbS ). Thank you.
_______________________________________________
Linux-audio-dev mailing list
[hidden email]
https://lists.linuxaudio.org/listinfo/linux-audio-dev
Reply | Threaded
Open this post in threaded view
|

Re: Looking for interested developer - TonePrint editor & TC Electronic Plethora X5

Mark Knecht


On Thu, May 28, 2020 at 4:31 AM Sam Kuper <[hidden email]> wrote:
>
> On Tue, May 26, 2020 at 04:57:14PM -0700, Mark Knecht wrote:
> > I purchased [a TC Electronic Plethora X5]. It works well (so far).
> > It's Linux internally running 4.9.47-rt37.
>
> I'm curious: how do you know which kernel your Plethora X5 uses?
>

The front panel menu system:

Global->About->BSP-> Linux 4.9.47-rt37 2019-12-20.C23818C

Granted, I cannot prove that because it says the above that it's really running Linux, but I'd guess it is.

> Also, do you know which microprocessor(s)/FPGA(s) the Plethora X5 uses?
>

No idea at this time. Also no idea about A/D & D/A.

In my mind the unit is essentially a 1 channel DAW that can handle 5 plugins as well as an insert bus that can be put anywhere in the chain. Running plugin modules, be they LADSPA or whatever is more or less how I see the design.

> I'm partly asking because I wonder if the X5 might be able to run
> software from Mod Devices or vice versa.  Mod Devices makes ARM-based
> multi-FX guitar pedals that run Linux: akin to the X5 but using
> LADSPA/LV2 plugins instead of TonePrint ones: https://moddevices.com
>
> Finally, do you know if TC Electronic has published any of the source
> code relevant to the Plethora X5?

<SNIP>

I haven't looked hard for any of that but I also haven't seen it in the manual or on their website.

<SNIP>

> If you plug the Plethora X5 into a Linux box via USB, how does it
> present itself to the host?
>
>     # Run this on your GNU/Linux box with the X5 not connected:
>     lsusb --tree > /tmp/lsusb_x5_disconnected.txt
>
>     # Run this on your GNU/Linux with your X5 powered up and connected
>     # to it via USB but everything else the same as above:
>     lsusb --tree > /tmp/lsusb_x5_connected.txt
>
>     # Copy the output of this command and paste it into a reply to this
>     # email:
>     diff /tmp/lsusb_x5_disconnected.txt /tmp/lsusb_x5_connected.txt
>
mark@science:~$ diff /tmp/lsusb_x5_disconnected.txt /tmp/lsusb_x5_connected.txt  
10a11,13
>     |__ Port 2: Dev 3, If 0, Class=Audio, Driver=snd-usb-audio, 480M
>     |__ Port 2: Dev 3, If 1, Class=Audio, Driver=snd-usb-audio, 480M
>     |__ Port 2: Dev 3, If 2, Class=Mass Storage, Driver=usb-storage, 480M
mark@science:~

In Windows when you plug the device in your get a explorer window. Dropping a firmware update into that window and power cycling does the firmware upgrade automatically.

<SNIP>

A first response from TC Electronic via a moderator named 'TC-Mike' is that the ability to backup the device is 'on the roadmap'. 

I asked about general timeframe but have received no response.

Cheers,
Mark

_______________________________________________
Linux-audio-dev mailing list
[hidden email]
https://lists.linuxaudio.org/listinfo/linux-audio-dev
Reply | Threaded
Open this post in threaded view
|

Re: Looking for interested developer - TonePrint editor & TC Electronic Plethora X5

Sam Kuper
On Thu, May 28, 2020 at 07:08:25AM -0700, Mark Knecht wrote:

> On Thu, May 28, 2020 at 4:31 AM Sam Kuper wrote:
>> On Tue, May 26, 2020 at 04:57:14PM -0700, Mark Knecht wrote:
>> > I purchased [a TC Electronic Plethora X5]. It works well (so far).
>> > It's Linux internally running 4.9.47-rt37.
>>
>> I'm curious: how do you know which kernel your Plethora X5 uses?
>
> The front panel menu system:
>
> Global->About->BSP-> Linux 4.9.47-rt37 2019-12-20.C23818C

Thanks.


>> Finally, do you know if TC Electronic has published any of the source
>> code relevant to the Plethora X5?
>
> I haven't looked hard for any of that but I also haven't seen it in the
> manual or on their website.

Thanks.  All I could find on the TC Electronic website was this page,
which attempts to foist an EULA on anyone who downloads the firmware:
https://www.tcelectronic.com/Categories/Tcelectronic/Guitar/Effects-Processors/PLETHORA-X5/p/P0D9M/Downloads

I've sent an email to license-violation at gpl-violations.org to let
them know.

I'm not sure it would be wise for anyone to spend time trying to
reverse-engineer the X5 if its source code might be forthcoming.  Trying
to get the source code seems a better use of effort in the first
instance.

(N.B.: I do not know whether TC Electronic is in fact violating the GPL,
nor whether it will ever publish its source code for the X5.  Sadly, nor
can I help on that front beyond what I have already done, since I don't
hold copyright on any code in the Linux kernel nor do I own an X5.  My
participation in this email thread has been on the basis that I would
like to see more audio equipment running and/or made compatible with
GNU/Linux, and on the basis that if the X5 were made more interoperable
with GNU/Linux then I might be interested in owning one.)


> mark@science:~$ diff /tmp/lsusb_x5_disconnected.txt
> /tmp/lsusb_x5_connected.txt
> 10a11,13
>>     |__ Port 2: Dev 3, If 0, Class=Audio, Driver=snd-usb-audio, 480M
>>     |__ Port 2: Dev 3, If 1, Class=Audio, Driver=snd-usb-audio, 480M
>>     |__ Port 2: Dev 3, If 2, Class=Mass Storage, Driver=usb-storage, 480M
> mark@science:~$
>
> In Windows when you plug the device in your get a explorer window.
> Dropping a firmware update into that window and power cycling does the
> firmware upgrade automatically.

Thanks.

Since the X5 presents a USB mass storage device to the OS and uses
that to upgrade the firmware, at least you should be able to upgrade the
X5's firmware from your GNU/Linux box.

That firmware upgrade path might provide opportunities for future
reverse engineering attempts.   (In addition to searching the PCB for
JTAG headers, etc.)

I wonder how the Windows software communicates with the X5, though.
That's not obvious from the lsusb output.  A reverse engineer might need
to intercept/sniff the USB traffic between the X5 and a Windows host to
figure that out.


> A first response from TC Electronic via a moderator named 'TC-Mike' is
> that the ability to backup the device is 'on the roadmap'.
>
> I asked about general timeframe but have received no response.

Thanks for the follow-up.


--
A: When it messes up the order in which people normally read text.
Q: When is top-posting a bad thing?

()  ASCII ribbon campaign. Please avoid HTML emails & proprietary
/\  file formats. (Why? See e.g. https://v.gd/jrmGbS ). Thank you.
_______________________________________________
Linux-audio-dev mailing list
[hidden email]
https://lists.linuxaudio.org/listinfo/linux-audio-dev
Reply | Threaded
Open this post in threaded view
|

Re: Looking for interested developer - TonePrint editor & TC Electronic Plethora X5

Mark Knecht


On Thu, May 28, 2020 at 8:12 AM Sam Kuper <[hidden email]> wrote:
<SNIP>
>
> Since the X5 presents a USB mass storage device to the OS and uses
> that to upgrade the firmware, at least you should be able to upgrade the
> X5's firmware from your GNU/Linux box.
>

Sure, but that's probably not going to happen very often, at least in terms of new firmware coming from TC. WRT to hacking the whole platform to reuse the hardware under Linux it's a possibility but at $500 sort of expensive if it goes haywire.

> That firmware upgrade path might provide opportunities for future
> reverse engineering attempts.   (In addition to searching the PCB for
> JTAG headers, etc.)
>

Agreed/ Completely possible. I suppose there's some opportunity to reverse engineer the firmware starting with instruction sets and what not but it's of no immediate interest to me. Being a hardware guy myself I'd be more interested in starting from scratch but your link to ModDevices suggests an easier starting place than designing my own hardware.

> I wonder how the Windows software communicates with the X5, though.
> That's not obvious from the lsusb output.  A reverse engineer might need
> to intercept/sniff the USB traffic between the X5 and a Windows host to
> figure that out.
>

I set up WireShark as it's reported to sniff USB. Under Linux I got some packets. Under Windows I haven't made much progress yet but it's early days.

Cheers,
Mark

_______________________________________________
Linux-audio-dev mailing list
[hidden email]
https://lists.linuxaudio.org/listinfo/linux-audio-dev
Reply | Threaded
Open this post in threaded view
|

Re: Looking for interested developer - TonePrint editor & TC Electronic Plethora X5

Sam Kuper
On Thu, May 28, 2020 at 09:02:36AM -0700, Mark Knecht wrote:
> On Thu, May 28, 2020 at 8:12 AM Sam Kuper wrote:
> [..] Being a hardware guy myself I'd be more interested in starting
> from scratch but your link to ModDevices suggests an easier starting
> place than designing my own hardware.

You might like this thread ("Do any Guitar pedal makers offer Linux
support?"): https://linuxmusicians.com/viewtopic.php?f=48&t=20284

Also: https://blokas.io/pisound/  (Only 12-bit ADC/DAC, though.)


>> I wonder how the Windows software communicates with the X5, though.
>> That's not obvious from the lsusb output.  A reverse engineer might
>> need to intercept/sniff the USB traffic between the X5 and a Windows
>> host to figure that out.
>
> I set up WireShark as it's reported to sniff USB. Under Linux I got
> some packets. Under Windows I haven't made much progress yet but it's
> early days.

It may help to run your Windows instance not on bare metal but in a VM
(e.g. under GNU/Linux with KVM; or Xen; or maybe even just Qemu or
VirtualBox).  I believe this should let you use the host OS to
inspect/sniff the USB traffic being sent between the guest OS and the
USB device.  This sort of thing:

https://wiki.wireshark.org/CaptureSetup/USB

https://stackoverflow.com/questions/117474/how-to-sniff-a-usb-port-under-windows

https://www.earth.li/~noodles/blog/2012/10/kvm-usbmon-wireshark-win.html

https://www.devalias.net/devalias/2018/05/13/usb-reverse-engineering-down-the-rabbit-hole/

Good luck!

--
A: When it messes up the order in which people normally read text.
Q: When is top-posting a bad thing?

()  ASCII ribbon campaign. Please avoid HTML emails & proprietary
/\  file formats. (Why? See e.g. https://v.gd/jrmGbS ). Thank you.
_______________________________________________
Linux-audio-dev mailing list
[hidden email]
https://lists.linuxaudio.org/listinfo/linux-audio-dev