Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BPM SYNC ON status bit #20

Closed
nudge opened this issue Mar 9, 2020 · 3 comments
Closed

BPM SYNC ON status bit #20

nudge opened this issue Mar 9, 2020 · 3 comments

Comments

@nudge
Copy link
Contributor

nudge commented Mar 9, 2020

I've decoded another bit of byte 0x89 of the CDJ status packet, also known as the CDJ state flag bits or F.
Bit 1 which is marked as 0 indicates if the player is in BPM SYNC ON mode. To get into this mode:

  1. Start a player and set it as Master (master player)
  2. Start a second player and make sure it is not Master (slave player)
  3. Enable SYNC on the slave player
  4. While the track is playing on the slave player and it is not master and sync is on, do a pitch bend on this player. This will cause the player to report "BPM SYNC ON" and the SYNC light to blink continuously, and bit 1 of byte 0x89 turns to value 1. The player continues to report bit 4 (Sync) as value 1.

According to the CDJ manual:

If the pitch is bent using the DJ player not set as the sync master, the synchronization is canceled and the [BEAT SYNC/INST.DOUBLE] button flashes.

However in this mode, adjusting the BPM of the master sync player still causes the slave player to follow its BPM, but does not lock its phase. Also once the slave player becomes the master, it behaves like a normal sync master player, but the sync light still continues to blink forever, until the user disables sync (which clears both bit 4 and 1).

So bit 1 seems to indicate that bpm is locked, but phase is unlocked when it is a sync slave.

Hope this helps!

Thanks for your hard work on Dysentery!

@brunchboy
Copy link
Member

brunchboy commented Mar 9, 2020 via email

@nudge
Copy link
Contributor Author

nudge commented Mar 9, 2020

Thanks very much for the report! I don’t think my players (CDJ-2000 nexus) have [BEAT SYNC/INST.DOUBLE] buttons, what hardware is that? I can’t double check at the moment, as I am visiting my parents (and had to extend my visit because my father needed hospitalization) but will pursue this when I get home. -James

Oh no, sorry to hear. I send my well wishes and hope your father gets well soon.

I lifted the wording from the CDJ-2000nxs2 manual, but the players i have are XDJ-700's. I just looked up the XDJ-700 manual and it has wording to the same affect. I looked at the CDJ-2000nexus manual and it doesn't seem to mention it, which is in line with your suspicion. Maybe this mode is only on newer players?

Cheers,
David

@brunchboy
Copy link
Member

Thanks, David! I am back home, as is my father, and I finally had time to look in to this. It turns out that I am absolutely able to reproduce it on my CDJ-2000 nexus players, and you have explained behavior that flummoxed me once while I was performing!

I have just finished porting the analysis document out of the creaky, fragile LaTeX build it used to use to a modern Antora/Asciidoc site, with the help of a new byte field diagram tool I created, which will make it even easier to update the documentation to reflect your discovery.

I am delighted you contributed this information! I hope you and your loved ones are staying safe and well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants