Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge skektek/libavr32 & other changes #288

Merged
merged 207 commits into from Nov 13, 2017
Merged

merge skektek/libavr32 & other changes #288

merged 207 commits into from Nov 13, 2017

Conversation

@boqs
Copy link
Contributor

@boqs boqs commented Nov 9, 2017

All changes from skektek 'non-release' & @catfact's libavr32 branch have been rolled together into one. I've been running & testing quite a bit - no known regressions, help with testing would be much appreciated!

new features:

  • new op: midi_prog
  • new grid ops: op_mem0d, op_mem1d, op_mem2d, grid_raw, life_raw, iter
  • new poly op to handle note priority of mono & poly synths
  • new 'harry' op to generate 'Hz scaler' values for tonality diamond a la harry partch
  • new maginc op to 'magically increment' the DSP param or BEES input it points to
  • new kria op
  • view operator outputs on play screen
  • pickle state of all grid ops to scene
  • BEES emulator for puredata allows operator development under PD
  • DSP emulators for puredata & linux/jack
  • ladder filter DSP primitives
  • 'varilines' module (varispeed lines)
  • 'acid' two voice synth/drum module
  • 'fmsynth' monophonic oversampling ADSR FM synth module with analogue feedback routing
  • 'label' DSP param scaler which permits textual display of 'patch points'
  • assorted UI improvements

memorable bugfixes:

  • fixed preset system including arbitrary op deletion/insertion
  • midi input fixed by libavr32 merge (previously buggy 'firehosing')
  • make output of random op more random
  • fix grid op focus-swapping
  • optimised waves to fix crackling on param changes
  • small whitewhale, op_step bugs
@catfact catfact self-requested a review Nov 9, 2017
@catfact catfact self-assigned this Nov 9, 2017
@catfact
Copy link
Collaborator

@catfact catfact commented Nov 9, 2017

this is extremely exciting, thanks

im just gonna list things that aren't compiling as i come across them. not to say they need to be fixed in this PR (or indeed at alll, some targets are probably obsolete / unneeded)

not compiling:

apps

  • picolisp app (needs update for lilbavr32)

modules

  • mix module (linker script is weirdly incomplete)
  • pitchtoy:
../../dsp/pitch_shift.c: In function ‘pitchShift_next’:
../../dsp/pitch_shift.c:42: error: ‘pitchShift’ has no member named ‘pitchDetector’
&c
  • varilines: missing linker script

utils

  • avr32_boot (bootloader.) that's not so great! (needs update for libavr32)
  • avr32_test (basic hardware test app.) needs libavr32 update
  • i2c-repeater (avr8 TWI tester). some weird warnings. maybe just delete this
  • bfin_pd - i forget how this works.

there's other crud in the utils that should probably be clean out.

param scaling

do i need to rebuild scaler data?

@boqs
Copy link
Contributor Author

@boqs boqs commented Nov 9, 2017

do i need to rebuild scaler data?

I think not! IIRC the only scaler thing I touched was adding the label scaler type. And that pulls it's label data from a .lab file

pitchtoy:

yeah I need to get round to fixing that - going to expunge it from dev until I find the time to resurrect. I mean grains is already a pretty capable 'pitchtoy', just needs some focussed patching work to make it musically useful...

avr32_boot (bootloader.) that's not so great! (needs update for libavr32)
avr32_test (basic hardware test app.) needs libavr32 update

dunno how to approach these & yes we should fix this before merge - if you can make some progress on it, I'll pull it right into boqs/dev

@catfact
Copy link
Collaborator

@catfact catfact commented Nov 9, 2017

sure thing, i can probably do that and give you a patch. needs JTAG dongle to test...

@catfact
Copy link
Collaborator

@catfact catfact commented Nov 10, 2017

fixed the aleph bootloader and opened a PR for the head of this PR :/

can send you a patch if that's better

@catfact
Copy link
Collaborator

@catfact catfact commented Nov 12, 2017

so i've been "testing" this in the sense of using bees quite a bit over the last week.

put together a performance exensively using varilines, kria + rawgrid switching focus.

came across some bugs/ quirky things with the grid, but no obvious regressions.

one thing though, is that all the new stuff does need a bit of documentation. tedious though it may be. i'm unclear enough about how some things work that i couldn't really test them (the MEM ops, acid) - for kria i had to look at the bottom row handler to understand how the modes are mapped (different from current ansible version.)

and once again, huge thanks to you for this update. varilines is great, glitchless waves is very satsifying, and op insertion/deletion is super helpful!

@catfact
Copy link
Collaborator

@catfact catfact commented Nov 12, 2017

@tehn if there's no objections i'll go ahead and merge this. i can then add my fixes to the bootloader and start in on some documentation before tagging v0.8.0 and bringing it into master

@tehn
Copy link
Member

@tehn tehn commented Nov 12, 2017

@catfact catfact merged commit 293e9a8 into monome:dev Nov 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants