Thread: BMMCC sbus code list?

Results 1 to 9 of 9
  1. #1 BMMCC sbus code list? 
    Senior Member
    Join Date
    Mar 2017
    Posts
    252
    I've searched about, found a lot of people mentioning that they'd like to know specific codes for each function of the BMMCC expansion but not many seem to be providing them.

    I've come across the library by Stu here https://github.com/boldstelvis/BMC_S...ster/README.md

    But I can't for the life of me find anywhere that lists what code does what. I've even seen videos of people achieving what I want but they never respond to comments on what codes they used.

    If anyone knows I'd really like to know the following.

    - Iris codes for up and down
    - White Balance codes for up and down
    - ISO codes for up and down
    - Shutter angle codes for up and down
    - Record start/stop codes
    - Code for a red LED to check recording status and flash if the camera is recording.

    Thanks for any help!

    I want to achieve a small rectangular box that mounts on the left side of the cage without obstructing the SD card reader slot.

    With the following configuration.

    -Side panel-

    | v IRIS ^ | D REC
    | v WB ^ |
    | v ISO ^ |
    | v ANG ^ |

    total of 9 buttons all simply doing only what they state. I really dislike the whole double tap to do something else.

    Ideally I'd run it into Shijan's breakout box to also get external power options, lanc etc.
    Reply With Quote  
     

  2. #2  
    Senior Member
    Join Date
    Mar 2015
    Location
    USA N. CA
    Posts
    2,243
    SBus requires a micro controller which is programmed with the control codes. PMW can be controlled by simple switches, but is limited to Iris, WB, Shutter angle, start/stop record.
    Cheers
    Reply With Quote  
     

  3. #3  
    Senior Member
    Join Date
    Feb 2016
    Posts
    205
    sbus doesn't work like this - its not LANC

    essentially sbus encodes absolute 'position' values for up to 16 discrete 'channels' - it was designed as a command and control signal for RC vehicles, the original intention was that these values would directly set the positions of various stepper motors on an RC drone or plane for example which would set the various control surfaces of the vehicle
    each channel has 11 bit precision which means it can hold integer values from 0 to 2048

    In terms of the BMMCC it can read in values from an sbus signal on the first 8 channels (all 16 channels are sent at the same time within a single 'sbus frame' of data) coming in on the relevant pin on the ext control Dsub socket and then assign them to various functions as set in the menu (you can assign any of the 8 available functions to any of the first 8 sbus channels - it ignores the rest of the 16 channels that will be part of any valid sbus signal)

    its important to note that in doing so it has two methods it uses to interpret the signals depending on the function - I refer to these as 'switch mode' functions and 'absolute value' functions

    for switch mode functions (rec run/stop, WB, ISO and shutter angle) the camera interprets a distinct signal change from a median value (tightly interpreted in a narrow range of values centered on 1023) to a low or high value (pretty much any value significantly lower or higher than the 'middle') as a switch to go up or down a setting or in the case of rec run/stop as a simple state change - note this involves sending two 'sbus frames' one after the other to register this change

    for the 'absolute value' functions (Focus, Zoom, Aperture and mic input level) its much simpler - the camera interprets the value coming in (within a certain range - it doesn't use the full range for some reason, probably because it needs to allow for differing HW controls on the kinds of remote control units foreseen as being used) as a distinct setting of that function - eg am incoming value of say 300 might be interpreted as f1.8 for the iris, with something like 1700 being f32 and the available f-stop range in between mapped to the values in various increments that lie between those values - this can change depending on the lens in use and the camera apparently does some kind of translation to the M4/3 lens control protocol from the sbus value it receives

    same for focus and zoom, for mic levels it employs some kind of direct mapping between the incoming sbus value and the 0-100 range that audio levels can be set to (again it truncates the full available range of 0 to 2047 to something more like a usable range of values between 300 to 1700)

    another important factor is that sbus by design sets all channels to something every time a data frame is sent so that you essentially have to set the used channels to something sensible - you can't send one channel in isolation (like you could with the 4 independent PWM channels for example)

    there's a long thread on the official forum about this as we discovered all this a while back:

    https://forum.blackmagicdesign.com/v...camera#p268158

    I am the stu aitken in question who posted the modded library for arduino

    here's a link to some posts on originally reverse engineering the protocol and applying this data on the arduino in a genera sense:

    http://forum.arduino.cc/index.php/topic,99708.0.html
    https://hackaday.com/2012/04/05/reve...emote-control/
    http://www.ernstc.dk/arduino/sbus.html

    lastly its worth stating that I think BM added sbus to the BMMCC to enhance its attraction to drone users who would probably already be familiar with RC signals and have controlling HW that could 'talk sbus' already and didn't necessarily anticipate us lot trying to use it for small hand grip style remotes
    Last edited by Stelvis; 11-08-2017 at 01:46 PM.
    Reply With Quote  
     

  4. #4  
    Senior Member
    Join Date
    Feb 2016
    Posts
    205
    but as Denny says you NEED a micro controller - like the arduino - to actually send the correctly formatted signal to the camera (or else use am RC control unit that already contains that functionality)

    the signal format itself is a bit gnarly - the arduino library I posted on github is intended to abstract away the actual signal construction and expose a much simpler way of just setting the channel values to something and then sending that along - but you still need to do stuff like read buttons or pots or encoders or whatever other HW controls you have connected to the arduino and then set the sbus channels and send in an appropriate way - ie you still need to write software that will run that does the work

    I can help if you are interested - the sketch within the library itself is a good place to start - if you recreate the HW setup I used it will usefully work (though the sketch uses 2 buttons to go up and down switch mode settings, a pot to control absolute functions and a mode switch to flick between 4 groups of functions, it could be easily altered to work with 8 discreet controls instead)

    PM me if you need any help or I can explain things further
    Reply With Quote  
     

  5. #5  
    Senior Member
    Join Date
    Feb 2016
    Posts
    205
    lastly: Code for a red LED to check recording status and flash if the camera is recording.

    there is no such control available - however the camera will do this anyway if its recording so that is indirectly controlled via changing the rec run/stop function state

    annoyingly there is no discrete value sequence for run and stop on rec - it will interpret any valid switch up or down as a change from one to the other
    sbus control on the switch mode functions in general is a bit 'blind' - ie there is no way for the controller to know what the values are originally set to on the camera itself so up or down is always relative to what the camera has already been set to (in the case of rec, up and down both just change the existing state to its opposite)

    if you mean set you're own supplied LED then the micro-controller could do that itself within the overall software written (that wouldn't be part of the sbus signal to the camera, though it could set to happen at the same time a rec start/stop signal was sent) -but again the issue is the controller is 'guessing' if the camera is actually recording or not - it doesn't know the actual state, just that its sent a signal to change it.

    LANC might actually be a better protocol to use for that reason on REC run/stop - in that it can discretely set the camera to start or stop recording and it can also read status info from the camera (if BM cameras actually send that over the LANC connection of course - they might not but the protocol allows it at least)
    Last edited by Stelvis; 11-08-2017 at 02:12 PM.
    Reply With Quote  
     

  6. #6  
    Senior Member
    Join Date
    Mar 2017
    Posts
    252
    Quote Originally Posted by Stelvis View Post
    lastly: Code for a red LED to check recording status and flash if the camera is recording.

    there is no such control available - however the camera will do this anyway if its recording so that is indirectly controlled via changing the rec run/stop function state

    annoyingly there is no discrete value sequence for run and stop on rec - it will interpret any valid switch up or down as a change from one to the other
    sbus control on the switch mode functions in general is a bit 'blind' - ie there is no way for the controller to know what the values are originally set to on the camera itself so up or down is always relative to what the camera has already been set to (in the case of rec, up and down both just change the existing state to its opposite)

    if you mean set you're own supplied LED then the micro-controller could do that itself within the overall software written (that wouldn't be part of the sbus signal to the camera, though it could set to happen at the same time a rec start/stop signal was sent) -but again the issue is the controller is 'guessing' if the camera is actually recording or not - it doesn't know the actual state, just that its sent a signal to change it.

    LANC might actually be a better protocol to use for that reason on REC run/stop - in that it can discretely set the camera to start or stop recording and it can also read status info from the camera (if BM cameras actually send that over the LANC connection of course - they might not but the protocol allows it at least)
    Woah thank you very much guys! Wake up to a heap of info.

    For the red LED on start/stop record. I'm not sure how he did it but Phil of the one little remote managed to have it know if the camera was recording or not. If you press record without an sd card in the camera the LED will flash once and then stop flashing. If you press record and the camera does actually record it continues to flash.

    But thank you all for the info, it'l help heaps!
    Reply With Quote  
     

  7. #7  
    Senior Member shijan's Avatar
    Join Date
    Apr 2012
    Location
    Odesa, UA
    Posts
    571
    There is another option to control camera with S.Bus protocol. You can use PWM to S.Bus Signal Converters. It works very well with Servo controllers but can not read simple button ON-OFF commands. You can plug 4 Servo controllers to this board and smoothly control Zoom, Iris, Focus and Audio levels.
    But actually servo controller can be modified to work as ON-OFF button. If connect PWM servo controller to that board, map it for example to ISO, and turn potentiometer knob veeeery slow there is a small placement position in the middle of rotation when it switches ISO from 400 to 800. When i turn it back it switches ISO back from 800 to 400. So it can work as ON-OFF button too! It can switch things back and forward! All we need to do is replace potentiometer in servo controller with two fixed resistors and two buttons to switch settings front and backward. I done some measurements and it switches in average range 1.9 to 2.7 kΩ
    But unfortunately it is not simple plug and play solution. Also every button needs separate Servo controller board which will cost you money and takes a lot of space and consumes additional power from camera battery.

    So probably Arduino platform development is way more compact and technological compare to PWM to S.Bus Signal Converters method.

    Last edited by shijan; 11-08-2017 at 10:23 PM.
    Reply With Quote  
     

  8. #8  
    Senior Member
    Join Date
    Mar 2015
    Location
    USA N. CA
    Posts
    2,243
    Quote Originally Posted by Ryanite View Post
    Woah thank you very much guys! Wake up to a heap of info.

    For the red LED on start/stop record. I'm not sure how he did it but Phil of the one little remote managed to have it know if the camera was recording or not. If you press record without an sd card in the camera the LED will flash once and then stop flashing. If you press record and the camera does actually record it continues to flash.

    But thank you all for the info, it'l help heaps!
    I think Phil uses the LANC bus to get Camera state (Rec or not) to activate his record light when the camera actually goes into record. As Rayanite states S Bus can not do this but LANC can. The One Little Remote from Phil actually uses both SBus and LANC to get the controls he has set up.
    Cheers
    Reply With Quote  
     

  9. #9  
    Senior Member shijan's Avatar
    Join Date
    Apr 2012
    Location
    Odesa, UA
    Posts
    571
    Quote Originally Posted by Denny Smith View Post
    I think Phil uses the LANC bus to get Camera state (Rec or not) to activate his record light when the camera actually goes into record. As Rayanite states S Bus can not do this but LANC can. The One Little Remote from Phil actually uses both SBus and LANC to get the controls he has set up.
    Cheers
    CGPRO remote controller probably designed in the same way. I have seen photos of their disassembled expansion box and it uses additional LANC cable and 4-Pole TTRS 3.5mm jack. It powers LANC and S.Bus from same source which is not too perfect because camera output slightly different voltages for LANC and for S.Bus.

    image1.jpg
    Reply With Quote  
     

Similar Threads

  1. Replies: 1
    Last Post: 09-28-2017, 11:31 AM
  2. SBUS controller for BMD Micro Cameras - available now
    By Kim in forum General Discussion
    Replies: 35
    Last Post: 07-24-2017, 08:24 AM
  3. SBUS Contoller aka Magic Parasite
    By gobo in forum General Discussion
    Replies: 8
    Last Post: 06-27-2017, 11:27 PM
  4. FS: Pluraleyes 3 code win/mac CHEAP
    By Note Suwanchote in forum For Sale / Want to Buy
    Replies: 1
    Last Post: 06-20-2013, 02:45 PM
  5. Time-code
    By Cedric Akins in forum General Discussion
    Replies: 8
    Last Post: 07-25-2012, 02:05 PM
Bookmarks
Bookmarks
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •