Low hanging fruit - small things to improve Zynthian

Some notes on the current help pages:

  1. While the Push encoders get plenty of deserved screentime, it would be nice to have an overview page summarizing each of the 20 buttons. Maybe I overlooked this info…
  2. The Chain Manager seems to be an exception in terms of not showing the encoder legend next to the V4/V5 encoders. This may be intentional due to functionality depending on the selection etc. Still, I find it useful to eat have this visual summary of functionality, at least for stuff that doesn’t depend on current selection etc.
  3. The help index could benefit from a bit of distance between each of the bullets in the list, to avoid hitting the previous/next item when using the touch screen.

Regards

The chain manager help (and a few other pages) is a draft I wrote without the hardware specific customisation which includes encoders. I would prefer a way to abstract this common stuff but a previous attempt was deemed inappropriate. So I am leaving this to @jofemodo to figure out. I am putting my help in the core folder and this may subsequently be customised.

We could add some style to the index to make the gaps bigger for touch.

1 Like

Here is my fruit wish: I’m working an updated launchpad pro driver for Vangelis. I’d like to develop & test the driver alongside the ‘default’ driver so it won’t be overwritten when running a system update (frequent as they are).

Recently we have standard drivers available to select (e.g. mackie control). Is it possible to make a second device driver by adding a suffix to the file name e.g. launchpad_pro_mk2_dev.py so Zynthian can know to make this available to select and it won’t get overwritten. Once all the work is done, we do a pull request process and back to business as usual.

Or perhaps there’s a better or easier way to do it that I’m unaware of?

Hi

You could experiment with .gitignore to exclude specific files from updates. Since the updates use git this should allow fine control.

Haven’t tried this though :upside_down_face:

Git overwrites stuff. I have lost stuff this way too. You need to be aware of the development process. If you are developing something, do not run standard updates. This is one of my workflows (the lazy / quick one for much dev I do):

  • Make changes.
  • git stash to store and undo the changes.
  • git pull (or update) to apply updates.
  • git stash pop to restore the changes.

but… this does not stash new files. Another (maybe better) way is to create a dev branch:

  • git checkout -b my_dev_branch_name
  • Make changes.
  • git add <filenames>
  • git commit
  • git checkout vangelis
  • git pull
  • git checkout my_dev_branch_name
  • git merge vangelis
  • Repeat until complete…

This is means you are working on a proper development branch which benefits from all the protection and freedom that git gives you. If you are working on your own GitHub fork, it works can work to allow pull requests, etc. but there are extra repo-sync steps required.

This post is not really low hanging fruit - it is more about how to facilitate the picking of that fruit! more cherries in your basket.

3 Likes

For small changes, e.g. ctrldev drivers I switched to the approach @riban (?) mentioned elsewhere. Make changes on computer, then copy via FileZilla to Zynthian.

Yes. This is the way to have alternate driver for the same device.

Not currently. Update will overwrite/delete your user installed drivers. This should be solved, so please, open a feature request in the issue tracker.

Thanks!

1 Like

OK! I just added a user’s directory for ctrldev drivers (vangelis). Just update and look for this directory:

/zynthian/zynthian-my-data/ctrldev

you can put your drivers in this directory and they wont be deleted/overwritten by updates.
Keep in mind that this direcetory has priority over the system one, so if you have a driver with the same name than the system one, the user’s version will be loaded, replacing the system version.

Regards!

10 Likes

Excellent @jofemodo!

More fruit here Issue: Main menu icons need space inside their box · Issue #1668 · zynthian/zynthian-issue-tracking · GitHub

In the midi input devices menu, all the devices require a bold press to access the sub-menu. Is there a logic behind this? I’ve always found it strange why a short press doesn’t go in the sub-menu like most (every?) other menu.

Me too, but never bothered to ask/request. Since there is no competing short action, I think it would be fine to change this.

There’s some discussion a while back about icons and how we arrived at the current set: Improving UI: contextual help everywhere! - #31 by jofemodo

It’s a bit of art and science keeping everything spaced and balanced nicely. Ideally every icon should have a minimum boundary zone with only minimal parts extending into the space. I setup a grid and had a couple of passes at some specific types which were extended further. The icons that are mostly square, rectangular or circular should ideally adhere to the grid with an empty boundary space for breathing room. It’s the irregular ones that are tricky, like the midi text combined with another icon in one object.

It’s something I’d still like to go back and revisit.

Here’s the grids for apple/android icons for example:

2 Likes

Some fruit ready to merge
Remove extra single quote in Webconf Package installing/uninstalling message by jawn · Pull Request #198 · zynthian/zynthian-webconf

1 Like

The MIDI input and output menus are the same menu and reused for admin and chain view. In admin menu they allow services to be enabled with short press. In chain view they allow input and output routing to be toggled with short press.

Merged!

It’s not short press for me though, it says bold press in the tool tip and can confirm it does indeed require bold press:

Only the checkboxes in the menu accept a short press.

I think @riban means the menu you get when you bold press SEL/YES in the mixer:

In this menu you short press to select/deselect an item and you bold press to change options.

In fact I’m so used to the bold press here that I automatically used that in the admin menu. So no problem for me.

Ok, that’s the logic I was missing.

Hi Jofe, can you please confirm this location? I’ve tried a few times and no luck. Running an update doesn’t appear to overwrite the file but it doesn’t preference the driver in the folder either.

I also notice something curious, the folders seem to be named differently when viewing from the webconf file browser the folder names differ from SSH.

It only works in Vangelis..