-
Posts
15,247 -
Joined
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by TK.
-
Yes, 5V is sufficient for the whole hardware, and an Audio In is not provided Best Regards, Thorsten.
-
Additional hints: between clearing all ADSR registers and setting new values, you should wait at least for 20 mS to ensure, that the envelope generator has reached the lowest level, before setting the gate again. If you re-configure the ADSR earlier, the next envelope could fail (related to ADSR bug -> "hick ups") Since you are at a very early programming phase, I propose you to use a static ADSR setting "00F0". Attack, Decay, Sustain are set to 0 - with this configuration, you won't notice effects related to the ADSR bug -> better for debugging Once the voices can be triggered properly, you should setup an interrupt driven timer which takes care about proper gate/ADSR control. Best Regards, Thorsten.
-
Before continuing with speculations, I think it's better to try out the code modification by myself. Just give me some days to find some time for getting into the firmware again. Using MIOS_DOUT_SRSet directly is no solution, as the MB64 firmware takes control over LED values, and could always overwrite the shift register value (-> MB64_LED_Update) by values derived from MB64_BUTTON_VALUES_SR0, MB64_MBUTTON_VALUES_SR0, etc (depends on LED mapping specified in your midibox64.ini file) If I understood you correctly, you are just searching for a "radio button" function. Is this correct? This is what I tried to program "blind", but as I see, there are too many details we haven't considered. (I programmed this firmware ca. 6 years ago... ;)). Such a usage model hasn't been considered at this time, therefore the implementation isn't straightforward With the C wrapper, and an application built up from scratch, it would be much easier to get total control over buttons and LEDs. What exactly are you planning to do with your MIDIbox? Best Regards, Thorsten.
-
Which MIDI Interface are you using exactly (manufacturer)? There is an upcoming TEST_INOUT2, which isn't documented yet: Could you please check, if the transfer is working when R6 (1.2k resistor) is replaced by a smaller one, e.g. 470 or 220 Ohm. Note: if you don't want to replace the resistor for this check, you could also connect a 1k in parallel (resulting resistance is ca. 500 Ohm... thats ok for this check) Best Regards, Thorsten.
-
It's documented in the setup_*.asm file E.g., setup_mbseq_v3.asm, search for "Step" Note that you are able to change the pin assignments as required. Best Regards, Thorsten.
-
PIC16f877 being detected as PIC16f84 in pic burner
TK. replied to mirv's topic in Testing/Troubleshooting
So far I remember, PBrennerNG handles the PIC as a PIC16F84 whenever no ID can be read. Probably because these old chips had no ID at all. It could be, that the MCLR# voltage is not high enough for enabling programming mode, so that the correct ID cannot be read. The error could also be somewhere between the Data IO pin (RB7) and the data out line (Pin #10 of the Sub-D plug) Best Regards, Thorsten. -
Danke fuer die Info! Gruss, Thorsten.
-
Yes, this is truely an original project! Great work! :) Perfect! Best Regards, Thorsten.
-
Thats correct - if one or more LFO periods have already been processed after the last synchronisation, setting the oneshot flag will cause an immediate stop at phase 255. Just let the oneshot flag set, and if the LFO waveform should be retriggered, set the sync flag, wait for LFO reset, clear the flag. Thats the intended behaviour, and I'm not planning to change this. The previous - wrong - behaviour was related to the right channel flaws (overrun flags located at wrong bit positions) Best Regards, Thorsten.
-
P.S.: for the planned CS options I will re-organize the "SHIFT" page to an hierarchical menu. This will allow quick access to more flags and functions than today Best Regards, Thorsten.
-
Nice demo :) Finally I guess that I understand what you mean - the effect itself is well known to me. I'm doing similar things with lead patches --- here we have the advantage that the LFO reset is part of the trigger matrix, so that the waveform can be controlled from any trigger source, not only by the gate. E.g., another LFO, an envelope, MIDI clock, etc... The bassline doesn't provide such a flexibility because of the reduced parameter set. Btw.: you are able to synchronize the LFO rate to the BPM generator (set CSn flag, and use rates >= 245) RC19 is available for download now; ChangeLog: o Enhancements for SysEx Editor (see also doc/mbsidv2_sysex_implementation.txt) - introduced <WOPT> function which allows to change parameters of multiple voices with a single SysEx command - introduced <sids> selection which allows to access slave SIDs via master SID (command 0C 00 <sids>) - added SysEx command for all notes/sequences off (command 0C 08) - added SysEx command to play the current patch (command 0C 09 [<ins>]) Note: for proper handling of <ins>, seperate keyboard zones or MIDI channels for multi instruments are currently required - this is no bug, but just an imperfection (I was too lazy to overwork SID_PATCH_NotesOn yet) o parameter assignment/patch/bank selection: "big message" now displayed immediately when menu item has been selected o The "note off" function of the SHIFT menu now works as "Note On/Off" (called "Ply") This function is intended as replacement for the optional Play button Patch will be played/stopped on all selected SIDs o Removed button combination "SIDx+MENU" (which was previously used for Play function) This combination could get a different purpose in future o LFOs and ENVs of right channel bassline working properly again o AOUT_LC driver now supports 12/12/8 resolution (requires 4 combined 74HC595) [/code] Best Regards, Thorsten.
-
Consider, that using Oneshot without Sync is an illegal configuration. It could somehow lead to an interesting effect, it could lead to no effect at all, but in general it doesn't make sense to use it this way. I've the impression, that you don't reflect about my statements completely. E.g., I wrote why Oneshot without Sync doesn't make sense, but you are still writing about switching on/off Sync while Oneshot is active in a way, that it isn't clear to me if you want to complain about the behaviour or not. Or another case: I wrote that the right channel bassline is currently flawed, but you continued to report unexpected effects. A discussion on such a basis is very time consuming and not really constructive. Video demos: fine! But please wait until the right channel bassline is working properly again (or use rc17 or earlier). I'm planning to test the java based editor in the next days, and will have some time to work on the firmware again. Best Regards, Thorsten.
-
I don't see a reason why a change has to be made in MIOS... there are many applications (like MBSID, MBSEQ) which provide such functions as well. They are not made for your usecase, of course ;) MB64 groups the 64 LEDs into 8 bytes. Each bit represents a LED (8x8 = 64) The first group is located in MB64_BUTTON_VALUES_SR0, the second in MB64_BUTTON_VALUES_SR0+1, the third in MB64_BUTTON_VALUES_SR0+2, etc... Example: If you would clear all bits in MB64_BUTTON_VALUES_SR0, before setting the bit which corresponds with the LED, you would easily get a "radio button group" of for 8 LEDs/buttons E.g., if you want to use it in conjunction with the "OnOnly" button function, just add: [tt] MB64_BUTTON_OnOnly ;; save status of button rcall MB64_BUTTON_Hlp_SaveStat ;; when on: send button value defined in dump ;; when off: send nothing BRA_IFSET TMP1, 0, ACCESS, MB64_BUTTON_NotifyChangeEnd ;; new SET_BSR MB64_BUTTON_VALUES_SR0+0 setf MB64_BUTTON_VALUES_SR0+0 ; turn off first 8 LEDs rgoto MB64_BUTTON_Send [/tt] and it will work. Wrong! See Keith's final solution below Using more or less LEDs will require some understanding about masked bit operations. The appr. assembly instructions (like andwf) are documented in the PIC18F452 datasheet Best Regards, Thorsten.
-
Yes, you have to change DEFAULT_SRM_BUTTONS_NO_UI to 0 Best Regards, Thorsten.
-
Welcome back! :) The version will be displayed in the main menu page (press menu button). If record was working before, it's probably only a coniguration issue. Maybe the wrong "keyboard channel" is selected in the MIDI Configuration page? Best Regards, Thorsten.
-
As mentioned above: it doesn't make sense to report any anomaly which happens with the right channel bassline I must say, that I'm not able to understand your descriptions completely, but in general I'm very sure, that there is no bug in the Oneshot and Sync handling - it works as intended (at least for the left channel bassline, as highlighted several times...) - in general, you can assume that I know what I'm doing... ;) Best Regards, Thorsten.
-
Hi, which tests of the MIDI troubleshooting guide are working, which ones are failing? Best Regards, Thorsten.
-
I'm planning to add such a function in future (there is another topic where possible use models have been discussed) Best Regards, Thorsten.
-
...and if you would add the 8 row and 8 column buttons of the modulation matrix, you could even be able to quickly select the sequence of left bassline (row buttons) and right buttons (column buttons) without external keyboard, and without time consuming CS interactions... Best Regards, Thorsten.
-
Thanks, it's really good to know that it was only an hardware issue! Best Regards, Thorsten.
-
uCApps answers the question, and there is even a snapshot which shows the two In/Out ports Good that we talked about this! Best Regards, Thorsten.
-
Keep on searching... ;) Best Regards, Thorsten. /Edit: ok, one hint: this function is only intended for slaves... accordingly, CS_MENU_SID should never be 0 If you are using a search function over all source files (Unix: grep), you will find some nice coding examples, how to use the function. If you search more, you will even find a function which allows to play notes/sequences via button