Sensel Morph firmware updater for Gnu/Linux

I tried to update the Sensel Morph firmware through Windows 10 inside Virutalbox under Linux, but it didn’t work: the Sensel application always asks me to update the firmware when i plug the Morph in. So, is there a plan at Sensel to make a simple CLI firmware updater under Linux ? If not, i could write it, if guided toward the needed set of API calls available to update a Sensel Morph firmware.

Hello, thank you for reporting the issue. The next release of the Sample App will be supported on Linux and will be released in a few weeks. We will also test the app inside of a Windows 10 Virtualbox to confirm functionality. I will follow up in this thread when the update is available. We will also discuss the option of releasing a CLI firmware updater.

Great news! Thanks for your support.

No news about a GNU/Linux updater ?

Today i used senselapp0.11.4 on win10 in a virtualbox machine, started the firmware update, and Bluetooth Progress locked at 96%. Then the sensel morph came unrecognized until i reboot win10. I tried twice the operation, but nothing different happens.

(Note that i update through USB, and have no bluetooth on my computer.)

I also want to add a voice to getting a verion of the Sensel app (or equivalent CLI) on Linux. Ubuntu Studio has great plug-and-play support for the various morph overlays, but no ability to do any configuration of the unit.

What is the state of the Linux support for the Sensel App ?
Do you plan to release it shortly ?


Hello all, thank you for your patience. We recently redesigned the Sensel App in order to enable future development. One of the main focuses of this new App was confirming functionality on Linux, which turned out to be difficult in the previous App architecture. We have confirmed the functionality of this new App on Linux. We need to squash a few more bugs before a public release, but I will follow up on this thread when it is available.

I just want to add my voice in favor of a GNU/Linux Sensel App so that I can do firmware and overlay updates without having to go to my Mac Air.

I’m interested in the linux app too, what’s the current state?

Thank you for contacting us. We have a version of the Sensel App for Linux ready, we are just working on a Unity3D bug for Linux that is causing communication issues with the Sensel Morph. As soon as we discover a fix for this issue, we will release the App. I cannot promise a release date at this time but we will make sure to keep everyone updated. Thank you for your patience.

Still under Linux… I downloaded senselapp-0.16.12.deb and udev rules for the morph. Then launched the app which immediately found the sensel morph once i plugged it in. Good. Then clicked on the update firmware button (need) and upload went from 0 to 100%, but after, ate verifying stage, the app seem to loop endless. senselapp CPU usage is about 17% and verifying stage does not terminate. Any hint ?

Thank you for the senselapp Linux flavoured, that is already a good point, but need some bugfix ?

Hey, sorry to hear you are having issues updating. I also saw your post on the update announcement. Unfortunately we haven’t seen this issue yet. Here are some potential fixes:

  1. Power cycle the device by holding the button for 8 seconds and then pressing the button again to turn it on again. Then try updating again.
  2. Avoid plugging the Morph into a USB hub if possible.

If neither of these fix the issue, please send us an e-mail at and include your:
A) Current firmware version
B) Are you running on a virtual machine?
C) Any other important info about your setup.

A. my morph has firmware 0.6.22
B. no, i’m running on a plain Ubuntu Linux 17.10
C. no special setup, no usb hub.

I tried restarting the morph before to update teh firmware, but got the same error.
the error is as follow (captured on a terminal) :

> Unhandled Exception: System.TimeoutException: The operation has timed-out.
>   at System.IO.Ports.SerialPortStream.Read (System.Byte[] buffer, Int32 offset, Int32 count) [0x00000] in <filename unknown>:0 
>   at System.IO.Ports.SerialPort.read_byte () [0x00000] in <filename unknown>:0 
>   at System.IO.Ports.SerialPort.ReadByte () [0x00000] in <filename unknown>:0 
>   at (wrapper remoting-invoke-with-check) System.IO.Ports.SerialPort:ReadByte ()
>   at Sensel.SenselDevice._ReadRegisterVS (System.IO.Ports.SerialPort p, Byte addr, System.Byte[] data) [0x00000] in <filename unknown>:0 
>   at Sensel.SenselDevice.ReadRegisterVS (Byte addr, System.Byte[] data) [0x00000] in <filename unknown>:0 
>   at SenselApp.SenselAppUpdate.FirmwareUpdate () [0x00000] in <filename unknown>:0

Thank you for the additional information. We have recreated the error and should have a fix up in the next few days. I will make sure to follow up when it is available.

Hello, we believe we have fixed the bug. Thank you for your patience. Please try this version and let us know if you experience any further issues. Also, we have noticed an issue with Ubuntu’s modemmanager that causes it to reach out to the Morph for the first 10 seconds after it is plugged in. If not using the modemmanager, I would recommend removing it using sudo apt-get purge modemmanager. This will allow the Morph to be reachable when first plugged in.

SenselApp 0.16.14 Linux 64-bit
SenselApp 0.16.14 Linux 32-bit

Hello, and thank you for your quick response and fix. Indeed, thanks to the senselapp 0.16.14 linux version, i could update the firmware from 0.6.22 to 0.16.74 almost flawlessly. The verifying stage went ok, but after, no further status message went (no think like ‘done’ or ‘ok’) so i closed the application, restarted the morph and launched the app again, happy to see the ‘up-to-date’ label. Thumbs up to your team !

I am hoping to one day be able to use the app on Linux. It is very difficult for me since I don’t have access to an OSX or Win machine.
More detailed documentation could help get it working on Ubuntu, which is becoming more popular as a music OS.