James

Linux EScribe Suite Beta Thread

Recommended Posts

Hello all,

I've been working on this as a side project for a while now. If you're one of the 5 people in the world who uses Linux ;), and EScribe is the last thing you keep Windows for, well, here you go.

I expect this will have bugs and broken functionality. Please let me know what you run into. Also, I don't use Linux on a daily basis, so if anything seems unnatural to you relative to ordinary Linux look-and-feel, please mention that as well.

https://downloads.evolvapor.com/SetupEScribe2_SP18_US.run

https://downloads.evolvapor.com/SetupEScribe2_SP18_INT.run

The installer is for 64-bit Linux running on x86 processors (Intel / AMD) and ARM (Raspberry Pi).

For this to work, you will need installed on your computer: (1) Mono, (2) Mono's certificate store, (3) GTK 2, and (4) GTK Sharp 2.

On Debian or Ubuntu, the packages are: (1) mono-complete, (2) ca-certificates-mono, (3) libgtk2.0-0, and (4) gtk-sharp2.

Enjoy :)

James

 

Known bugs:

There's a weird resizing flicker when windows open.

Background colors don't always paint. This affects the Screen tab on monochrome DNAs.

ECigStats does not support starting at login.

EScribe Suite does not register file associations yet, so you can't install themes directly by double clicking a theme file.

The software updater is untested, so checking for updates may not work. We'll see.

 

Notes:

If you don't have GTK 2 / GTK Sharp 2 installed, EScribe Suite falls back to Mono's Windows Forms implementation, which looks terrible and works even worse. So make sure you have those installed.

Unless you run as root, you may need to alter your udev hidraw rules to give EScribe Suite permission to access your USB HID devices.

EScribe Suite *can* run without Mono's certificate store installed, but ECigStats will be unable to synchronize, and Get Information, Restore Defaults, and similar functions which require accessing Evolv servers won't work.

  • Like 8
  • Thanks 3

Share this post


Link to post
Share on other sites

As one of those 5 desktop Linux users in the world - Thank you!  Thankyouthankyouthankyou! :D

I've been running a Windows VM just for Escribe for the last few years. While it works well enough (once you sort out the glacial USB data transfer speed issue - but that's a known Virtualbox problem not an Escribe specific thing), this version is much faster and lighter on the resources.

So far, so good! I've read data from, and used device monitor with multiple DNA 200, 250, 60, and 75 boards without functionality issues. I've also rolled back the firmware and re-updated the firmware on a sacrificial DNA 75 and it went perfectly (with the firmware files bundled with Escribe, anyway). Escribe detected when my device had a "new service pack available" - but only time will tell how it will go after a new version of Escribe is out, and new "service packs" beyond what is bundled with the current client are a thing.

I have a new DNA 60 device in the post that will need some theme / custom materials / possibly firmware updates, and a 75C I'm picking up from the post office tomorrow that is still running the default Evolv theme (so it's likely going to need a theme, new materials, and possibly firmware update - it's an early Therion 75C and I don't think the previous owner has EVER had it connected to Escribe!). I'll report back if I find any bugs there.

As far as known bugs - I'm not getting any weird window flickering, and the screen backgrounds have rendered correctly consistently.... so yay? :)

Look and feel - it fits into the desktop because it inherits it's looks from whatever theme is being used. The only tiny, tiny issue I've had is that a lot themes will override the background colours on the checkboxes in device monitor. The checkboxes still work, it's just that they no longer act as a legend for the colours on the graph. Oh, and the numbers in the graph area are always black (it does not inherit the standard text colour from the theme used - so with a dark theme they are a little bit hard to see).

Seriously though - those are minor things, and mostly dependant on user selected UI themes. Functionality, and keeping in-step with the current Windows version are way more important - and so far everything has been stellar on that front.

One positive I've noticed is that this version seems to handle multiple device connections much more gracefully - more so than the "Windows version in a VM". I can have several DNA devices connected, all will be detected, and I am presented with a list as to which one I want to Escribe with.

 

Some notes for other end users :

If you are trying to launch launch-escribe-suite from a terminal and getting "Unhandled Exception" - Your libraries are too old. Update yo' box ! Debian 8 is too old - you'll want Debian 9 for Mono > v4.

 

You CAN run Escribe from a normal user account. The reason it doesn't work out of the box that way is that Linux has NO IDEA what the heck to do when you plug an Evolv boarded ecig in it. It doesn't know what type of device it is - and if it doesn't know what a device is, it'll only let the root user access it.

How you get around this, is that you tell it "if you see a device made by Evolv - it's totes cool, just let all users muck about with it". You do this by creating a "udev rule" (udev is the system that handles USB devices plugged into a Linux box).

As root, create the file (if it doesn't exist already) /etc/udev/rules.d/10-local.rules (note: this is for a Debian box, your distro may vary... but it should be at least somewhat similar if it's Debian based distro).

The file should contain the following (or, if the file exists already - append the following...). *Note : This needs to be all on one line!*

SUBSYSTEMS=="usb", ATTRS{idVendor}=="268b", MODE:="0666"

Save the file, and go make a cup of tea. Your system will detect the change automagically, but it might take a few mins. Plug and unplug your device. Escribe should work from your normal user account now! :).

Good Luck! :D

  • Like 3

Share this post


Link to post
Share on other sites

Awesome!! I was definitely a Linux guy who was unhappy about having to use Windows to configure my fancy device :)

Btw, I use Arch. ;)

And it seems to work great. I had to install the "mono" and "gtk-sharp-2" packages, and set Fractal's udev rule. So far it seems to work and display just fine, very cool.

Thank you very much for porting this over!

  • Like 1

Share this post


Link to post
Share on other sites

With hindsight (and a more than slight hangover), yes - I really should have done something potentially helpful and recorded the error along with the exact versions of the dependant packages I was running. Sorry about that.

Instead, what I actually did was screw in a very small screw with a very large sledgehammer - blamed the fact I hadn't updated since Debian 8.7 (and that my environment was likely older than that which the software was developed on) and went all out with a dist upgrade.

After that... I haven't been able to reproduce the error.

On the plus side.... I can say it runs great in a freshly updated Debian 9.2 :)

Edited by Fractal
Clarification
  • Like 1

Share this post


Link to post
Share on other sites

Hi there, first of all thank you for porting this over to Linux systems! This is something I've been waiting for since I quit cigs at the earlier this year (I know right, somebody gave me a DNA squonk mod to start off with... and I still use it pretty often).

 

I have an issue though and that's getting about the installation. I currently use arch on my laptop and I installed mono and gtk-sharp-2 for the deps. I then downloaded the installation file from here, did a quick "chmod +x" on the file and ran it as root from the terminal. I don't know where this has installed to, or where a possible launcher script has been stored. I looked through /var and /usr/bin but didn't find anything with escribe in it. I've tried this with both the intl and US versions of the installer.

 

It might be that I'm using a window manager instead of a proper desktop environment and a .desktop file isn't being created? I'd love to tweak my drone under a Linux system, so any help would be appreciated :)

Share this post


Link to post
Share on other sites

@brushy I ran the installer from my normal user account (meh, I'm a single user system...), and it ended up in ~/.local/opt/evolv/escribe-suite

So for me, the launcher executable is at  /home/fractal/.local/opt/evolv/escribe-suite/launch-escribe-suite

There is a .desktop file, but it might not have ended up where your window manager can see it, depending on what it expects.

Mine ended up at ~/.gnome/apps/evolvapor_com-escribe-suite_1.desktop and ~/.local/share/applications/evolvapor_com-escribe-suite_1.desktop

With the original created during the install at ~/.local/opt/evolv/escribe-suite/.mojosetup/evolvapor_com-escribe-suite_1.desktop

Try having a look around those places. Worst case scenario, you could always just "locate launch-escribe-suite" and should give you an idea where it ended up. Let the hunt begin! :D

  • Like 2

Share this post


Link to post
Share on other sites

@Fractal Thank you so much for the response! I've become pretty rusty with my unix-y skills and should have remembered locate was a thing. None-the-less, I found the executable file path exactly where you said it would be. I did get the .desktop files too (I don't really need them since I'm just running everything from terminal anyways until I save up for a new PC).

I guess a small README about installation paths could be helpful for others in the future. Possibly adding in the udev rules that you mentioned before could be good too. Possibly even making the installer add udev rules as an option to it could simplify things a bit. 

Once  again though, thank you! I'm able to adjust my the settings reflecting my recent usage of VTC5A's, as well as playing around with titanium wire settings since I'm giving that a go for now. It's a tool I'll probably be using for a while since I have a hcigar VTC-D on the way :)

  • Like 1

Share this post


Link to post
Share on other sites

 Looks like there are more than 5 of us! There was only one windows box in my entire house of 4 computer users, used just for escribe and updating other things. It wont be there long now. Running Mint Mate and thanks to Fractal setup was about 3 minutes. It took me forever to buy a DNA because of the Windows only nature of escribe. I will be getting one for Christmas now

Share this post


Link to post
Share on other sites

WOW! That's really great! And very easy...even for a "gui power user" ;) with just a little knowledge of using the terminal.

Working great on Manjaro with the 10-local.rules from Fractal. 

Thank you all :)

Share this post


Link to post
Share on other sites

Thank you so much, keen Linux user here.

Install and runs great on Fedora 26, very happy :D

P.S. I only heard about this version from a PBusardo video you need some info on the Evolv website

Share this post


Link to post
Share on other sites

I've posted a new version, SP9. Let me know if you run into any bugs with it. Changelog is in the Early Firmware thread.

The installer script, on Debian-derived distributions, will check for the needed dependencies and offer to run apt-get to install them.

Also, EScribe Suite will automatically offer to create udev rules if it doesn't have permission to access your DNA device.

Share this post


Link to post
Share on other sites

I am trying to install your app .... but I get this error when the installation finishes.

(SetupEScribe2_SP8_1_INTL.run:23531): IBUS-WARNING **: The owner of /home/andrikos/.config/ibus/bus is not root!
 

Share this post


Link to post
Share on other sites

We don't do anything with IBus. That is related to your input method editor.

Does the installer run properly? It will install to the Science group in the menu (often shows up as Other). You should not have to run the installer as root.

Share this post


Link to post
Share on other sites
Just now, James είπε:

We don't do anything with IBus. Does the installer run properly? It will install to the Science group in the menu (often shows up as Other). You should not have to run the installer as root.

If I run it as not root I get this error from the installer.

Screenshot from 2017-11-16 00-49-24.png

Share this post


Link to post
Share on other sites

Ah. I bet when you used sudo to install it, it created directories in /home/andrikos/.local/opt/evolv as root, which means you can't access them now.

Try deleting those directories and then installing not as root. It's meant to be a double-click setup not requiring any special permission.

Share this post


Link to post
Share on other sites
36 minutes ago, James είπε:

Ah. I bet when you used sudo to install it, it created directories in /home/andrikos/.local/opt/evolv as root, which means you can't access them now.

Try deleting those directories and then installing not as root. It's meant to be a double-click setup not requiring any special permission.

Still I get the same error ...

Share this post


Link to post
Share on other sites

Try sudo chown -R andrikos /home/andrikos/.local

If it created .local or .local/opt, they would still be owned by root. This is a good find. I've updated the installer to error out if running under sudo in the future.

Share this post


Link to post
Share on other sites

New version installed perfectly here. Installer looking good!

Interesting thing I noticed with the device updates - on all of the devices I've updated that have both a "Service pack (core)" and a "Service Pack" update (2x DNA 60, 1x DNA 250), I've had a "The device is busy. Another Program may be using it. Retry?" dialogue box pop up in between the two updates.

If I click yes, the error dialogue just pops back up, but if I click "no" the updates continue on just fine.

I ran Escribe via console after updating the first device to see if it was going to spit out anything interesting, but no. It's just (GUI stuff in italics) -
 

Quote

 

Operation in progress..

("Service Pack (core)" Progress bar goes to 100%)

Benchmark: Uploading firmware took 2545.5617 ms.

(Dialogue box about device being busy then pops up. The screen on the device being updated reads "Warranty Service". After I hit "no" the update process continues on as normal...)

Operation complete.
Operation in progress..

("Service Pack" progress bar goes to 100%)

Benchmark: Uploading software took 14566.7089 ms.

Operation complete.

(Standard "service pack applied" dialogue box pops up, the device restarts, and everything is back to normal - the devices functions normally with the new updates applied).

 

When I've been rolling back and re-updating older devices (DNA 75, DNA 200) I haven't had the same behaviour. For all of the older devices though, it's just been a "Service Pack" update - there hasn't been a "Service Pack (core)" happening before it.

Slightly odd thing, could just be me, but hey - at the end of the day it still works (and nothing got bricked) :). Still a stellar job on this Escribe port, and we appreciate it!

Share this post


Link to post
Share on other sites

I've updated the SP9 download to make the auto-updater work on Linux. It now properly sets the execute bit on Service Packs it downloads.

  • Like 1

Share this post


Link to post
Share on other sites

Tested newest version and found some bugs
1. Offered software update. Download works but apply does not work. Opens a window with shell script and end in error
2. Upgrade device does not work. Complaints that the device is being used by other program
3. Login to internet option does not work. Selectable but nothing happens when you select.

Share this post


Link to post
Share on other sites

Can anyone help me with what code lines do I put on terminal in order to install in on ubuntu 16.04 LTS? It's opening as a text file, I do not know how to install Linux applications that are not in the ubuntu store without a dummy guide. Thanks :) 

Share this post


Link to post
Share on other sites
1 hour ago, Canadianvape said:

Can anyone help me with what code lines do I put on terminal in order to install in on ubuntu 16.04 LTS? It's opening as a text file, I do not know how to install Linux applications that are not in the ubuntu store without a dummy guide. Thanks :) 

chmod 755 ./filename           (to change file to executable)
./filename                               (to execute file)

No need to install in su or as root. It will actually advice against it, if you try. 

But first you have to make sure you have some other software packages installed.
su apt-get install  mono-complete ca-certificates-mono libgtk2.0-0 gtk-sharp2

 

Edited by ekalle

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now