Fix for Low knob on FW1.3

View Poll Results: Should there be an official DJTT Change to FW1.3 before FW1.4 is released?

Voters
9. You may not vote on this poll
  • Yes

    4 44.44%
  • No

    1 11.11%
  • MUDKIP!

    4 44.44%
Page 1 of 2 12 LastLast
Results 1 to 10 of 15
  1. #1
    Retired DJTT Moderator DvlsAdvct's Avatar
    Join Date
    Mar 2008
    Location
    New Jersey/NYC
    Posts
    4,854

    Default Fix for Low knob on FW1.3

    Following what Bento said in this thread I would like to put up a request for an official fix for the only aspect of FW1.3 that is driving me insane.

    I would like the "Low" knob to be fixed to work exactly like the rest of the "EQ" knobs.

    Please select the appropriate choice in the poll so the powers-that-be can see what we think. With this optional fix this FW version will be exactly what I need, and I would like to not have to wait until FW1.4 to use this.

    Thanks.
    It's the FAQ. Read it.

    My Mixes, Mashups and Rants

    Divided we stand
    United we fall

  2. #2
    Dr. Bento BentoSan's Avatar
    Join Date
    Mar 2008
    Location
    Perth, Australia
    Posts
    6,383

    Default

    Heres the code for the proposed Bomes code:

    4 Translators

    Translator 1 -
    Incomming: B0 22 pp
    Rules: pp=pp/2
    pp=pp-127
    pp=pp*-1
    Outgoing: B0 22 pp

    Translator 2 -
    Incomming: B0 21 pp
    Rules: pp=pp/2
    pp=pp+64
    Outgoing: B0 22 pp

    Translator 3 -
    Incomming: B0 2A pp
    Rules: pp=pp/2
    pp=pp-127
    pp=pp*-1
    Outgoing: B0 2A pp

    Translator 4 -
    Incomming: B0 29 pp
    Rules: pp=pp/2
    pp=pp+64
    Outgoing: B0 2A pp

    Thats the simplest way to do is, now they act like this knob does 1.2 firmware.

    However its spitting out extra midi messages, this is because we are effectivly turning a 256 points of resolution knob down to 128 points of resoltion. So to concerve midi pipe data going into the program we need to make some changes so that repeat midi messages are not sent. So lets fix that by tracking the last message sent and comparing it with the new message about to be sent, if its the same then no midi data is sent into the program.


    Translator 1 -
    Incomming: B0 22 pp
    Rules: pp=pp/2
    pp=pp-127
    pp=pp*-1
    if pp==ga then exit rules, skip Outgoing Action
    ga=pp
    Outgoing: B0 22 pp

    Translator 2 -
    Incomming: B0 21 pp
    Rules: pp=pp/2
    pp= pp+64
    if pp==ga then exit rules, skip Outgoing Action
    ga=pp
    Outgoing: B0 22 pp

    Translator 3 -
    Incomming: B0 2A pp
    Rules: pp=pp/2
    pp=pp-127
    pp=pp*-1
    if pp==gb then exit rules, skip Outgoing Action
    gb=pp
    Outgoing: B0 2A pp

    Translator 4 -
    Incomming: B0 29 pp
    Rules: pp=pp/2
    pp=pp+64
    if pp==gb then exit rules, skip Outgoing Action
    gb=pp
    Outgoing: B0 2A pp

    Conserving your midi bandwidth is a really imporant step of any midi translation - if you can somehow do exact the same thing sending less midi messages then you should do so.

    Hope that helps
    Last edited by BentoSan; 06-01-2009 at 11:50 PM.

  3. #3
    DJTT Super Moderator midifidler's Avatar
    Join Date
    Mar 2008
    Location
    San Francisco
    Posts
    1,902

    Default

    This knob is being fixed in the 1.4 firmware - if that ever comes out....

  4. #4
    Tech Guru Kaon's Avatar
    Join Date
    Mar 2008
    Location
    The Tron, Noiseeland
    Posts
    1,681

    Default

    grumble grumble
    Quote Originally Posted by dripstep View Post
    Kaon, none of that has to do with drum and bass.

  5. #5
    Retired DJTT Moderator DvlsAdvct's Avatar
    Join Date
    Mar 2008
    Location
    New Jersey/NYC
    Posts
    4,854

    Default

    Well, we'll figure it out

    and thanks, Bento. I just messaged you, but just to keep the trail going

    The problem with this is that when I'm pulling the knob back from the middle (B0 22 pp) the messages are reversed, so 00 is at the top and 7F is at the bottom. So, in essence, when I'm starting from the middle and going down, the knob is reading it at going from the bottom up. So I'm at the bottom on the knob, and at the middle in Traktor.
    It's the FAQ. Read it.

    My Mixes, Mashups and Rants

    Divided we stand
    United we fall

  6. #6
    Dr. Bento BentoSan's Avatar
    Join Date
    Mar 2008
    Location
    Perth, Australia
    Posts
    6,383

    Default

    Edited the post with the right code - just a minor change to the code with a couple lines of inserted code into each of the two translators.

  7. #7
    Retired DJTT Moderator DvlsAdvct's Avatar
    Join Date
    Mar 2008
    Location
    New Jersey/NYC
    Posts
    4,854

    Default

    yay it works!
    It's the FAQ. Read it.

    My Mixes, Mashups and Rants

    Divided we stand
    United we fall

  8. #8
    Tech Mentor
    Join Date
    Nov 2008
    Location
    Bay Area Cali
    Posts
    359

    Default

    bento, could you maybe explain the meaning of a few of those rules, specifically these parts.

    Incomming: B0 22 pp
    Rules: pp=pp/2 < right here - the /2 part?
    pp=pp-127
    pp=pp*-1 < the *-1 part
    if pp==ga then exit rules, skip Outgoing Action
    ga=pp < where does ga come into the rule or be determined.
    Outgoing: B0 22 pp

    I have bomes pro, but all of my rules so far have been creating macro's on the scs3d, one midi in, 3 or 4 out for various group mutes and what not just regular translators mostly.

    the rules have confused me a bit but I kinda just learn as I go, any help understanding which rule is doing what?

  9. #9
    Retired DJTT Moderator DvlsAdvct's Avatar
    Join Date
    Mar 2008
    Location
    New Jersey/NYC
    Posts
    4,854

    Default

    The pp/2 means that it halves the value of the last number (so 02=01 or 64=32)
    and the *-1 makes the number a negative value, so in this case

    pp/2 (64=32)
    pp=32-127 (-95)
    and then pp=pp*-1 (-95 x -1 = 95)
    So, when the knob is at 64 it actually translates to 95 in Traktor.



    Also, I found one more thing. The Sync button on Deck A is now a toggle on/off. I don't think there's a way in Bomes to make this a regular button (7F down and 00 up). but, well, I could be wrong
    It's the FAQ. Read it.

    My Mixes, Mashups and Rants

    Divided we stand
    United we fall

  10. #10
    Dr. Bento BentoSan's Avatar
    Join Date
    Mar 2008
    Location
    Perth, Australia
    Posts
    6,383

    Default

    Ontop of what DvlsAdct said:

    oo,pp,qq->xx are all local variables - these variables are dumped every time a translator has finished running and thus are only used when you dont need to store the date to use next time the translator runs or inside another translator.

    Varibles that are names like g0 or gb are global variables. These are stored so you can use them next time the translator runs.

    The maths part that goes:
    "pp=pp-127
    pp=pp*-1"
    is my way of inverting the direction the knob starts and ends from - very similar to ticking the invert knob in Traktor except its handled inside Bomes rules.

    The rules that goes:
    "if pp==ga then exit rules, skip Outgoing Action
    ga=pp "
    This checks the pp local variable against a global variable. this global variable holds the same velocity data that was last sent as a midi message which is done in the second line. By comparing this to the message we are about to send we can make sure that Bomes isnt sending out the same midi message again which is totally pointless and just chews up what small midi bandwidth we have to play with. The basic idea here being that if you dont need to send a midi message then you dont send it.

    Quote Originally Posted by DvlsAdvct View Post
    Also, I found one more thing. The Sync button on Deck A is now a toggle on/off. I don't think there's a way in Bomes to make this a regular button (7F down and 00 up). but, well, I could be wrong
    Nope cant fix that with Bomes, if a midi controller doesnt send a midi message for an action that you have made then there no way of ever knowing in the code that you performed that action.
    Last edited by BentoSan; 06-02-2009 at 02:04 AM.

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •