monome / norns

norns is many sound instruments.
http://monome.org
GNU General Public License v3.0
631 stars 145 forks source link

jack fail now makes matron fail without informative error #1437

Closed tehn closed 2 years ago

tehn commented 3 years ago

previously we got SUPERCOLLIDER FAIL (which wasn't always exactly true, but at least it pointed somewhere)

presently if jack fails (for whatever reason, but commonly (for DIY shield builders) due to a badly soldered codec) now matron fails to load due to jack dependency for the clock system.

hoping there's a way to soft-fail in a way that allows us to display an error on the screen instead

catfact commented 3 years ago

indeed we can handle this better.

if i'm not mistaken the error is caught here: https://github.com/monome/norns/blob/main/matron/src/clock.c#L21-L23

so we just need to do something else with that. (show an informative message before we die)

tehn commented 2 years ago

this issue has two parts:

  1. with systemctl, matron won't even attempt to be run unless jack is running. so we need to ease the requirement: https://github.com/monome/norns-image/blob/main/config/norns-matron.service#L3
  2. we want an error message on the OLED, so we could conceivably do this on an error for clock_init() and then do a graceful shutdown (currently it just segfaults)

the more time consuming fix which i'm not sure is merited would be letting matron actually run with a busted clock system--- so the menu could be used to nav to wifi config, etc.

ngwese commented 2 years ago

i’ve also noticed that when i use ;restart a lot with matron, jack will eventually die which prevents matron from starting again. fixing i requires me ssh’ing into the device to restart jack which it not ideal. this may or may not be related to the jack dependency but it is new within the last few months

tehn commented 2 years ago

SYSTEM > RESTART should reset jack service i believe