Compiling Sources - Arduino IDE

Started by rio, October 11, 2017, 01:28:54 PM

Previous topic - Next topic


Please, can someone tell me or give me a short advice, which Arduino IDE version can used for recompiling odytron/atmegatron apps with last libraries 2.4? Are there significant changes for both apps in libraries 2.4 (vs 2.1 or 2.3)?

Does the last version ARDUINO 1.8.4 works without any problems?
i know there was the bug within 1.6.6 in the past - and i am afraid what's now working for both correctly.


compiled atmegatron with 1.8.4. give me:

AtmEngine.cpp:134:22: warning: extra tokens at end of #ifdef directive

AtmAudio.cpp:56:34: warning: cannot declare member function 'static void AtmAudio::initialize()' to have static linkage [-fpermissive]
static void AtmAudio::initialize()

a) was compiled, but are these warnings normal?

b) which binary file should be used for upload:
*.ino.standard.hex or or *.ino.with_bootloader.standard.hex?

c) i also noticed that my compiled binaries a little bit smaller then the precompiled ones on website. Are the libraries shrinked?

d) i noticed that arpeggiator presets can not be pre-listened via dialer knob anymore. If I send incoming midi notes it works fine, but not for testtone by a pressed value knob. But my old binary which was compiled with libraries version 2.1 can play the first note (in that case). For me, it was superb that I can listen to the basic sound of a arp preset (even without the use of Arpeggiator...). Is it possible to activate that feature again anyhow - it was quite useful (for prelisten the sound)? Or can you tell me which source would block the testtone routine for arps? Anyhow, thats the reason, that I switched back to Version 2.1 at time. So I would be glad if I can use the last sources with same features ...
We have discussed this in the past too:



a) Neither of those warnings will cause you issues. Although technically the first one is a bug - should be #if EXP_ENVELOPES==1 . But the result is the same, so won't cause you issues.

b) Definitely *.ino.standard.hex  .  Are you building the project with Arduino IDE and then uploading with Easy Uploader?  Obviously for easy debugging, it's fine to upload with Arduino IDE.

c) I compile using Atmel Studio + Visual Micro.  The compiler settings may be different with Arduino IDE.  This would explain  differences in size. I'd be tempted to use Atmel Studio if you want to do major hacking to the code - it's a lot friendlier!

d) Ah yes I'd forgotten about this.  It's a knock-on effect when I fixed one problem, I created another!!  It's going to take a bit of tracking to find out exactly what happened.  It looks like it should work from browsing the code.  So I'll have to put some time aside to sort it out.  At the moment I can't even tell you where the bug is.  It's either in void AtmEngine::midiNoteOnReceived(unsigned char note, unsigned char velocity)  or possibly in the Arpeggiator class itself.


Thanks for your helpful replies.

d) I have looked over the code quickly, but for me it also something difficult to understand the whole internal handling. I would be happy if you could invest a bit time for debugging. If you like, I can test changes/assumptions, as I said.

Best regards, rio