Commit Graph

24 Commits

Author SHA1 Message Date
9bacf43f15 Add per-channel CV Input mod configuration (#4)
Each channel can enable CV 1 or CV 2 as an input source for modulation, which can be applied to any of the user-editable parameters. When editing the parameter, cv mod is not applied in the UI so the user can easily see the base value for editing. When not editing, the UI will display the current cv modded value in the UI for the modded parameter.

I had originally intended to provide configuration for attenuating and offsetting the cv input per channel, but that introduced a significant amount of memory needed to store several new ints per channel. I may return to add this feature later, but given it's something that can easily be done with other modules between the modulation source and Gravity cv input, I am deprioritizing this feature.

Reviewed-on: https://git.pinkduck.xyz/adam/libGravity/pulls/4
Co-authored-by: Adam Wonak <adam.wonak@gmail.com>
Co-committed-by: Adam Wonak <adam.wonak@gmail.com>
2025-06-14 21:26:33 +00:00
70b9b28032 minor formatting 2025-06-09 22:36:58 -07:00
8aa47b73fd Add new official Gravity firmware code. Split out the output channel behavior and struct into a new class. 2025-06-09 22:33:16 -07:00
6c85b94f21 Refactor handle rotate to make the code more reusable and readable. 2025-06-09 19:54:30 -07:00
dac1bb3007 Big refactor of code for readability and reusability. Mostly focusing on the UI code. 2025-06-08 18:17:19 -07:00
1a13fbff5f Introduce a new demo sketch to visulize the
attenuation and offset constraints of the input
cv.
2025-06-08 11:39:27 -07:00
d9106c6951 refactor calibrate analog demo to use tge u8g2 library. 2025-06-08 11:39:12 -07:00
c1b29924f7 Do not show MIDI tempo. Serial MIDI is too unstable. CV ext seems pretty stable when given a steady clock, but I need to try unstable sources / polyrhythms. 2025-06-03 07:33:50 -07:00
01bf09d4f5 Consistent clock behavior for ext cv and midi. 2025-06-02 21:56:17 -07:00
8cf64fefca Initial commit for midi. Midi out is working, Midi In is still a work in progress. 2025-06-01 22:53:51 -07:00
20f65d9bdf Full rewrite of graphics lib. Replace adafruit with u8g2. Overhaul UI. 2025-06-01 19:18:59 -07:00
edd7df1cd6 Revert pointer change. not worth the few bytes it saved. 2025-05-31 20:28:17 -07:00
18e53e90c1 Fuck it, we're doing pointers for everything! 2025-05-31 17:35:04 -07:00
98c3769008 Update clock.h to support uClock v2.2.1 and implement external PPQN 4 (#3)
Reviewed-on: https://git.pinkduck.xyz/adam/libGravity/pulls/3
Co-authored-by: Adam Wonak <adam.wonak@gmail.com>
Co-committed-by: Adam Wonak <adam.wonak@gmail.com>
2025-05-30 03:08:31 +00:00
b580d1e451 Adding various refactoring for optimization and readability. 2025-05-26 11:09:51 -07:00
4446f41957 formatting 2025-05-25 15:31:58 -07:00
b95aa752ca Avoid floating point operations. 2025-05-25 15:31:03 -07:00
3b04196430 switch to using 96ppqn internally to allow more clock modification. 2025-05-25 15:20:48 -07:00
0f69b8501b Update docs 2025-05-25 14:42:39 -07:00
506293fa9c Refactor UI code for analog input calibration script. Display voltage for a more clear matching calibration. 2025-05-25 14:40:38 -07:00
392f4fffc7 Add the functionality for calibrating the analog input. Add demo script for calibrating analog input. 2025-05-24 00:26:48 -07:00
7f9ad7e00d basic implementation of analog inputs and test script 2025-05-23 21:36:18 -07:00
b847515f32 Add clock_mod firmware demo. 2025-05-04 22:55:28 -07:00
90f94c3077 Add a trivial example script and some formatting. 2025-05-04 12:00:46 -07:00