Chomsky Posted June 15, 2006 Report Share Posted June 15, 2006 I need a good documentation for the MIOS-functions. Where can I get this? Quote Link to comment Share on other sites More sharing options...
stryd_one Posted June 15, 2006 Report Share Posted June 15, 2006 http://www.ucapps.de/cmios_fun.html :-X Quote Link to comment Share on other sites More sharing options...
Chomsky Posted June 15, 2006 Author Report Share Posted June 15, 2006 http://www.ucapps.de/cmios_fun.html :-XI said that I want a GOOD documentation. But perhaps you can help me: What exactly does the MIOS_AIN_DeadbandSet function do? Quote Link to comment Share on other sites More sharing options...
TK. Posted June 15, 2006 Report Share Posted June 15, 2006 Would you help me to write a GOOD documentation?Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
audiocommander Posted June 15, 2006 Report Share Posted June 15, 2006 How about searching the forum for "Deadband"?Two pages of search results should contain a pretty decent explanation of what that is... Quote Link to comment Share on other sites More sharing options...
tos Posted June 15, 2006 Report Share Posted June 15, 2006 @TK:That's just ruude!! How do you mean to get payed if you don't want to write a GOOD documentation upon a request from someone with 10 posts?! :) :PBTW: I' intend to try to make some order in that whole pile of information when I get my MB done. Quote Link to comment Share on other sites More sharing options...
Chomsky Posted June 15, 2006 Author Report Share Posted June 15, 2006 Would you help me to write a GOOD documentation?Best Regards, Thorsten.Yes, of course! I would be happy to do this! Really! But before I can do this I need to know how all these MIOS-functions work and what they do. Please tell me where I have to start to learn all about those MIOS-functions. And when I'm finished with it I will write a better documentation! Quote Link to comment Share on other sites More sharing options...
TK. Posted June 15, 2006 Report Share Posted June 15, 2006 lease tell me where I have to start to learn all about those MIOS-functionsJust don't ignore the hints of the others, and spend some time to read the relevant postings in the forum. I've explained the purpose of a deadband several times in the forum, I've also written some more details at the http://www.ucapps.de/mbhp_mf.html page (search for deadband), I drew diagrams, I demonstrated the behaviour with pseudo code, and not at least I released the source code which contains some helpful comments.This is my distribution, now it's your term - you could be the man who takes care that other people don't have to spend the same work in searching for all these scattered informations.I've created a Wiki page where you can start explaining the AIN deadband function with your own words:http://www.midibox.org/dokuwiki/doku.php?id=mios_details_ain_deadbandHope that you understand this motivation.Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
moogah Posted June 15, 2006 Report Share Posted June 15, 2006 ... The documentation is pretty good, actually..Were you expecting something like the Java API Reference?That said there definatly has to be a section added to the WIKI about the MIOS functions so that people can add their practical expirience in as they go along, thus achieving a more robust description of the MIOS functions. One thing I would like to see is a posting of the source for each function, but in reality I'm not going to have time to make a serious attempt at this until August at best (nor will I really understand MIOS until then anyway). ... I've still gotta post a writeup on various distortion circuts.. once I build them.. Quote Link to comment Share on other sites More sharing options...
tos Posted June 15, 2006 Report Share Posted June 15, 2006 One thing I would like to see is a posting of the source for each function,Word. Quote Link to comment Share on other sites More sharing options...
TK. Posted June 15, 2006 Report Share Posted June 15, 2006 One thing I would like to see is a posting of the source for each function,this doesn't make much sense once the function uses subfunctions.Why not using the search function over the source code? (Windows: "search" button, Unix: "grep")Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
stryd_one Posted June 16, 2006 Report Share Posted June 16, 2006 Word.Download the source code then!If it helps, here's how I figured out MIOS. I downloaded the MIOS source and an application. I started at the main loop of the app (MBSEQ, FWIW) and read through the code, figuring out what each and every command does, until I had read through it a few hundred times in order to exhaust all the possibilities. Where the code made calls to MIOS functions, I went to the MIOS source and did the same. All in all, it took me a few weeks of using all my spare time. I suggest you do the same. If you don't understand something, you can google it and you'll soon find an explanation.I think that TK has provided perfectly sufficient documentation, provided that you read that documentation and know the background info. If you don't know the background info, it's not hard to teach yourself. Quote Link to comment Share on other sites More sharing options...
Chomsky Posted June 16, 2006 Author Report Share Posted June 16, 2006 My suggestion is, that there should be one central place where all the information is gathered. Mostly it takes hours to find the information I need because the information is scattered in many different places. So why don't have a central place, where everybody can find what he/she is searching for? Quote Link to comment Share on other sites More sharing options...
TK. Posted June 16, 2006 Report Share Posted June 16, 2006 This is the intention of the Wiki - instead of buring the informations in the forum, they should be collected there.But this is a long process, and it especially relies on the contribution of the users.The target is, to have ucapps.de as some kind of "reference manual", which describes things in a compact and exact form, and the Wiki as "user manual", which describes things more detailed for non technical experts.Therefore I asked you for help (please read my posting again)You are now going to understand the Deadband feature, so once you know how it is working, why not writing down a report at http://www.midibox.org/dokuwiki/doku.php?id=mios_details_ain_deadband, so that next time it will be easier for other people to get into this topic?Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
moogah Posted June 16, 2006 Report Share Posted June 16, 2006 I should qualify my comment a bit better:A posting of the source, with hyperlinks!Tell me that wouldn't be useful ;DAnd, yes I realize that is going to be alot of work, and I still have alot of source code to peruse before I can tackle such a thing. Quote Link to comment Share on other sites More sharing options...
Chomsky Posted June 16, 2006 Author Report Share Posted June 16, 2006 When you search in wikipedia for deadband, you get:Deadband is an area of a signal range or band where no action occurs (the system is dead).I see it like this: Deadband defines the length of a very small rang so that the value of a pot or slider will result in no change if the length of the pot-movement is shorter than the length of the Deadband-range. Am I right? Quote Link to comment Share on other sites More sharing options...
TK. Posted June 16, 2006 Report Share Posted June 16, 2006 Yes, thats it!Please: add this description to the Wiki (http://www.midibox.org/dokuwiki/doku.php?id=mios_details_ain_deadband) so that it won't get lost, it's really good and could be enhanced later if required.Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
audiocommander Posted June 16, 2006 Report Share Posted June 16, 2006 Yep.And just to complete this:if you look at the MF-Page you can read:later a hysteresis loop had been added to the firmware in order to prevent the unstable state, where the fader is very close to the target position, but never reaches it exactly, and therefore oscillates around this position. This hysteresis feature has been replaced by the so called "deadband" in the meantime - this is a threshold value which defines the area of a value range where mismatches are ignored. The mathematical term:"target_position_reached = ABS(target_position-current_position) < deadband"if you search the forum you get:http://www.midibox.org/forum/index.php?topic=5272.msg32427#msg32427If you still notice the flickering values, you have to reduce the resolution of the AIN driver. The easiest way is to increase the value which is passed to MIOS_AIN_DeadbandSet (7 means: 7bit resolution, 15 means: 6bit resolution)and:http://www.midibox.org/forum/index.php?topic=725.msg4145#msg4145The deadband itself is just the value range in which changes are ignored. For example, if the analog input has some noise which causes jitter, you can increase the deadband in order to filter the unwanted changes. With an increased deadband value you also decrease the resolution. For a 10-bit value a deadband of "0" is recommented. For a 7-bit MIDI value, a deadband of "7" is perfect (just try it to find out the difference). The PIC16F firmwares are working with a deadband of 7 by default.Maybe an additional hint: if you search the forum while being in a thread, the search is filted by that topic!As the C-Section is relatively young, you will miss important informations from the huge Assembler section. So try hitting "midibox.org Forum" first ;) Quote Link to comment Share on other sites More sharing options...
Chomsky Posted June 16, 2006 Author Report Share Posted June 16, 2006 Yes, thats it!Please: add this description to the Wiki (http://www.midibox.org/dokuwiki/doku.php?id=mios_details_ain_deadband) so that it won't get lost, it's really good and could be enhanced later if required.Best Regards, Thorsten.Slowly! First I need to know what the parameter value in the MIOS_AIN_DeadbandSet(unsigned char deadband) function do? Because the type of the parameter value deadband is unsigned char it can range from 0 to 255. What is the effect of this parameter value? Quote Link to comment Share on other sites More sharing options...
TK. Posted June 16, 2006 Report Share Posted June 16, 2006 Normaly you are using a deadband of 7 for 7bit, 3 for 8 bit, 1 for 9 bit, 0 for 10 bit resolution. There is no need for providing values higher than 255, therefore it's only an unsigned char (this saves memory)What is the effect of this parameter value?did you write this question before or after you've read audiocommander's quotes?Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
Chomsky Posted June 16, 2006 Author Report Share Posted June 16, 2006 What happens when I set deadband to 2, 4, 5, 6? Quote Link to comment Share on other sites More sharing options...
TK. Posted June 16, 2006 Report Share Posted June 16, 2006 In this case the distance between a value change (-> USER_AIN_NotifyPin() is called) is 3, 5, 6, 7; accordingly the hook might be called more often then required.Calculation example: a common 7bit CC should be sent, the 10bit conversion result is rightshifted 3 times to get the 7bit value (the same as if the conversion value would be divided by 2^3 = 8 )lets move a pot from 0 to 25. With a deadband of 6 following values would be propagated to USER_AIN_NotifyChange: 0, 7, 14, 21The converted 7bit values are: 0, 0, 1, 2With a deadband of 7 (which is the recommented value for 7bit transformations), USER_AIN_NotifyChange will only be called three times:0, 8, 16 - and the converted 7bit values are: 0, 1, 2Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
audiocommander Posted June 16, 2006 Report Share Posted June 16, 2006 First I need to know what the parameter value in the MIOS_AIN_DeadbandSet(unsigned char deadband) function do? Because the type of the parameter value deadband is unsigned char it can range from 0 to 255. What is the effect of this parameter value?just 3 lines above your reply, I copied and pasted for you: [tt]"7 means: 7bit resolution, 15 means: 6bit resolution[/tt] (...) [tt]For a 10-bit value a deadband of "0" is recommented"[/tt]This is the second time, my copy-and-pastes for you out of the infos that can easily be found on ucapps & the forum were ignored.I'm out of this game >:(==> http://www.midibox.org/dokuwiki/doku.php?id=forum_netiquette Quote Link to comment Share on other sites More sharing options...
Chomsky Posted June 16, 2006 Author Report Share Posted June 16, 2006 When I move a pot from 0 to 25 with a deadband-value of 6, it will look like this:and when I set MIOS_AIN_DeadbandSet(7) it will look like this:Is that correct?What means: "move the pot from 0 to 25"? Where do the values come from? Quote Link to comment Share on other sites More sharing options...
TK. Posted June 16, 2006 Report Share Posted June 16, 2006 This is not correct, and I must say: I'm also out of the game; it doesn't make much fun to "discuss" with somebody who ignores most of the previously written stuff. Hope that you at least know, that MIOS is copyrighted and especially not allowed to be sold via Ebay...My last hint: you can easily find out the real behaviour by doing some experiments on a MIDIbox.Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.