dndrks / cheat_codes_2

cheat codes 2
https://l.llllllll.co/cheat-codes-2
28 stars 14 forks source link

reduce number of active hardware redraw calls #4

Closed ypxk closed 4 years ago

ypxk commented 4 years ago

hey!

amazing work on this. i've been a couple updates behind but had a chance to catch up on the streams today and was so inspired i had to try it out. so so fun!

i was able to get it to crash (sorry!😉). i had arps going on banks b and c and 2-3 randomizers going on them as well. i also had a randomzier going on bank a, set to toggle looping, while i was just tapping it live. it stopped accepting inputs from the grid and then a couple of seconds later the grid went dark. audio was still coming out at that point and then it seemed to drop out one bank at a time until total silence.

while this was happening, i opened maiden at this point and saw it was spamming something like "resource temporarily unavailable". i lost the exact phrasing when i went to monome.org to try to remember what the new on-norns soft reset is, when i tried to get back to maiden it wouldn't let me in (probably due to the velocity of messages, it was dozens every second).

i was not able to find the command that is supposed to reset norns but was able to ssh in and restart that way. let me know if there is some log file that i can attach that would make this more valuable!

(sorry i do not know how to tag issues on github.)

dndrks commented 4 years ago

hey hey! thanks so much for the help testing and the report!

the error you mentioned is: libmonome: error in write: Resource temporarily unavailable. it happens when the USB bus gets overwhelmed by calls to redraw grid and arc. more info here.

this is on me -- the hardware redraw is happening at a stupid-high rate (50fps) because of inefficiencies made canonical early in the design process (just cuz I didn't know any better). i'll take a look at reducing the redraw rate immediately and ideally will migrate to a 'redraw on demand' approach for the official release.

a few things:

<3333

ypxk commented 4 years ago

hey! that does sound like what happened to me, and yes the arc was plugged in as well. i was using one bank of live buffer that i had recorded something into at the start of the session and then immediately turned off recording.

again, amazing job, it's been so inspiring to watch this thing evolve! even setting the cool new features aside the usability and workflow improvements (local alt! pad focus (i guess this is actually not new but i don't think i got to use it earlier)! independent arc pattern recorder) are great. i will let you know if i spot anything else

edit: i want to say the rates were "fast". i don't totally have my head around how the speed control on random works. i'm sure it was covered in one of the streams but i missed it. the arps were maybe 16ths at 90 bpm? somewhere in there.

dndrks commented 4 years ago

fixed with #11