Commit graph

99 commits

Author SHA1 Message Date
Mikael Degerfält
1be998153a Fake input and bug fixes
* Press W in simulator to activate (pretty slow shit, do avoid unless compiling with optimisations)
 * Tiny improvement of the EEPROM simulation.
 * Fixed type typo for millis and micros
2019-06-21 18:07:47 +02:00
Mikael Degerfält
266b3334cb Simple simulation code
Builds a native program on MacOS that runs the NuEVI firmware compiled for x86_64.
Only input is arrow keys for menu buttons for now. Only output is console and display.

Copied some more library files into the simulation folder, and renamed the modified *.cpp files from the libraries to *_sim.cpp.
2019-06-13 20:51:45 +02:00
John Stäck
c9123b746f
Merge pull request #10 from blind/memory-save
Save memory by changing int arrays to const short arrays
2019-06-11 23:20:01 +02:00
Mikael Degerfält
c43be09b1f Save memory by changing int arrays to const short arrays
No need to have them in RAM since they are never changed, and their value was never higher than 14 bits, so using 32 was just a waste.
2019-06-09 16:53:17 +02:00
John Stäck
8581738b40
Merge pull request #8 from blind/global-cleanup
Global namespace cleanup
2019-06-09 11:48:07 +02:00
John Stäck
5cdad52cc5
Merge pull request #9 from blind/readme
Removed section from readme that is no longer valid
2019-06-09 09:06:08 +02:00
Mikael Degerfält
cc3323fd03 Move access to usbMIDI to midi.ino
NuEVI.ino shouldn’t have to know about usbMIDI.
2019-06-08 22:22:13 +02:00
Mikael Degerfält
921fdb1266 Global namespace cleanup
Moved variables only used in menu to menu code. Variables only used in NuEVI.ino removed from globals.h and made static.
2019-06-08 15:34:16 +02:00
Mikael Degerfält
39d0f17914 Removed section from readme that is no longer valid 2019-06-08 14:03:50 +02:00
John Stäck
91aecdb82d
Merge pull request #7 from blind/double-save
Avoid converting value to a double
2019-06-08 10:11:24 +02:00
Mikael Degerfält
2c4fd26d25 Fix problem where the V was still visible if battery low 2019-06-07 23:57:17 +02:00
Mikael Degerfält
883dbf605e Avoid converting value to a double
No need to convert a value to double when all we want is a two digits converted to string.
This also avoids linking some math library, which saved almost 8K och program storage space.
2019-06-07 00:12:06 +02:00
John Stäck
5a3ccec2e6
Merge pull request #6 from blind/made-to-c
Renamed menu.ino to menu.cpp
2019-06-06 23:00:42 +02:00
Mikael Degerfält
58ea673994 Moved settings #defines to settings.h
I did feel like they belong in config.h
2019-06-04 23:34:26 +02:00
Mikael Degerfält
4bf2a3a91e Renamed menu.ino to menu.cpp
This change required lots of other changes to have it compile. I had to declare all variables from NuEVI.ino used by the menu as extern in a separate header file (globals.h).
Also I moved all defines from NuEVI.ino to a config.h file. I think some of these could be moved back or even moved into menu.cpp.
I declared many variables and functions in menu.cpp as static and moved them around to avoid forward declarations. For simplicity I did some forward declarations anyway.
Some varibles only used in menu.cpp was moved from NuEVI.ino instead of having them as externals.
2019-06-03 19:24:21 +02:00
Johan Berglund
f0010cb08c Support for CV box/CV board (compile option). Match idle CV from PWM breath CV on A6 to direct output idle voltage from breath sensor (so any of them can be used for CV box without need for recalibration of box). Added reading and ignoring incoming USB MIDI messages to prevent buffers from getting filled up blocking outgoing messages. 2019-05-25 11:05:17 +02:00
Johan Berglund
f06eb0b9a4 Cleanup 2019-03-21 09:28:21 +01:00
Johan Berglund
37c77356d5 Added way to enter regular menu instead of rotator menu (touch special key) if touch sensing is set too high. Added support for pneumatic bite sensing (add-on board). Experimental pitch CV out for built-in add-on CV scaler board (#define CVSCALEBOARD). LED brightness fix. 2019-03-21 09:15:28 +01:00
John Stäck
b892d36e05
Merge pull request #5 from Trasselfrisyr/refaktor2019
Refaktor2019
2019-03-18 15:03:36 +01:00
John Stäck
b6fc9c74d5
Merge pull request #4 from blind/calibrationloop
Use loop for calibration
2019-03-13 20:06:23 +01:00
John Stäck
cf89c9df42 Call this version 1.3.3. If it passes testing. 2019-03-05 08:02:31 +01:00
John Stäck
610d226bdb Let us not rename files right now.
This reverts commit 347b6e5c71.
2019-03-05 08:00:38 +01:00
Mikael Degerfält
82b0f3a47c Calibration code cleanup 2019-03-04 21:49:34 +01:00
Mikael Degerfält
e448ba427c Loop for calibration 2019-03-04 21:40:48 +01:00
John Stäck
347b6e5c71 Rename non-main ino files to cpp 2019-03-04 10:58:02 +01:00
John Stäck
66ceb59008 Add NuEVI version with audio output (from Johan) 2019-03-04 10:21:21 +01:00
John Stäck
e388248c7c Move all source files to subdirectory to be less confusing for Arduino IDE 2019-03-04 10:16:58 +01:00
John Stäck
7e1db21883 Adjust parens to fix compiler warnings 2019-03-04 09:02:56 +01:00
John Stäck
c94795ff60 Use large enough data type 2019-03-04 08:53:52 +01:00
John Stäck
517eba0764 Output breath sensor value on DAC (from Johan) 2019-03-04 08:50:58 +01:00
John Stäck
08fca258c2 Make and use a more generic function for drawing menus 2019-03-03 21:59:25 +01:00
John Stäck
03eb07ea87 More gymnastics with the menu code 2019-03-02 10:39:28 +01:00
John Stäck
f5211800d0 Constrain unconstrained non-use of constrain() 2019-03-02 09:49:36 +01:00
John Stäck
ca90f8f664 Automated prettifier and tabulator 2019-03-02 09:46:26 +01:00
John Stäck
3aa427fdd5 A whiter shade of space 2019-03-02 09:36:06 +01:00
John Stäck
a56cddf5e4 Nicer MIDI initialization 2019-03-02 09:10:45 +01:00
John Stäck
c70858709e Move all menu stuff into separate files 2019-03-02 09:10:38 +01:00
John Stäck
35ee03d4b8 Use midi serial definition from proper place 2019-03-02 09:01:19 +01:00
John Stäck
18f3131d8a Move hardware definitions to separate file 2019-03-01 13:59:11 +01:00
John Stäck
1d8cd1a3ef Move MIDI functions into separate files 2019-03-01 13:51:14 +01:00
Johan Berglund
a63ac4e3b9 Added anti-glitch for top roller when in bottom octave. Added individual note-offs efter All Notes Off at MIDI Panic (to work in Logic and other software not recognizing the regular All Notes Off). 2018-12-28 17:27:28 +01:00
Johan Berglund
01069d8f64 Added CC#20 as option for breath CC (to work well with IK Multimedia UNO synth). Made compile option for Bruce Cassidy special version (third trill key +3 instead of +4). Bug fix, check for number of added intervals during slur sustain (memory got overwritten, making the pitch bend functions to fail). Increased required sucking force for legacy controls, and added the combination with PB up for patch select (less risk for accidental activation). Added CV output from DAC pin to unused pin of MIDI jack. 2018-12-18 13:09:26 +01:00
John Stäck
cd8acba87c Version 1.2.9
* Fix for pitch bend summing near zero.
* Deglitch setting now in steps of 1ms
* Velocity sample delay setting now in steps of 1ms
2018-10-27 11:38:19 +02:00
John Stäck
f73ddc6557
Update readme to match source code 2018-10-23 18:53:46 +02:00
John Stäck
572cfbc002 Version 1.2.8
Fixes:

* Pinky latch for Nyle’s additions (missed that one in the merge)
* Pitch bend adding/subtracting instead of one overriding when both sensors are touched
* Added a mode for slow breath midi (half density). In MIDI menu, hold pinky key when pressing ENTER to activate.
2018-10-23 09:36:22 +02:00
John Stäck
24c9480c5b Version 1.2.7 2018-10-22 21:55:29 +02:00
Johan Berglund
205689dbdf
Merge pull request #2 from Trasselfrisyr/various-cleanup
Various cleanup
2018-09-09 19:41:07 +02:00
John Stäck
69d90efebb Define constant for breath sensor input pin 2018-09-03 15:25:14 +02:00
John Stäck
ae950bedfc Remove unused constants 2018-09-03 15:10:25 +02:00
John Stäck
0b659707fb Refactor factory reset for clarity 2018-09-03 15:08:52 +02:00