Arduino Shield Thread

Questions about ATEM Switchers, Camera Converter and everything live!
  • Author
  • Message
Offline

Jared Mooney

  • Posts: 8
  • Joined: Tue May 17, 2016 3:10 pm

Arduino Shield Thread

PostThu May 19, 2016 1:14 am

What are some possibilities you can think of for the new arduino shield model?

Here's one I want to explore. I want to see if I can build a wireless "AirPaint" system for the URSA Mini Studio Camera. Since camera control happens over the SDI port, but theoretically needs to transmit less data if PGM return is not supplied, I'm curious if I can build a TX and RX using the new Arduino Shield and a 3rd party Arduino RF Module to send color correction data wirelessly to a camera.

Thoughts?
Offline

Evan Daum

  • Posts: 260
  • Joined: Fri Jan 03, 2014 4:26 am

Re: Arduino Shield Thread

PostThu May 19, 2016 7:39 pm

Does the shield need a valid SDI input signal for the control data to "ride" on in order to work? I guess you could loop the camera back in to itself if so. Seems like it should be possible.
Offline

Hersh Burston

Blackmagic Design

  • Posts: 80
  • Joined: Thu Aug 23, 2012 12:39 am

Re: Arduino Shield Thread

PostThu May 19, 2016 10:00 pm

The Arduino shield doesn't need an SDI input. By default the black output is set to 1080i59.94 but this can be changed using the supplied setup utility.

The camera control information is sent in the ancillary data of the SDI stream so to make your project wireless you could use an HD transmitter to send the SDI stream to the remote camera.

I assume you are planning to use two Arduino units - one with the shield at the camera end and the second to send the commands via the RF module. This should work and is a great idea.

For your information we are hoping to start shipping the shields within the next four weeks.


Regards,

Hersh Burston
Senior Product Manager
Blackmagic Design
Offline
User avatar

JohnBengston

  • Posts: 570
  • Joined: Sun Sep 30, 2012 1:52 pm

Re: Arduino Shield Thread

PostThu May 19, 2016 10:07 pm

Hersh Burston wrote:For your information we are hoping to start shipping the shields within the next four weeks


Great News!! :)

Hersh Burston wrote:I assume you are planning to use two Arduino units - one with the shield at the camera end and the second to send the commands via the RF module. This should work and is a great idea.


Implies they can be used in Send and/or Receive Mode. = Even Better News!! :D

Thanks.
Offline

Hersh Burston

Blackmagic Design

  • Posts: 80
  • Joined: Thu Aug 23, 2012 12:39 am

Re: Arduino Shield Thread

PostThu May 19, 2016 10:43 pm

The shield can only be used in send mode.



Regards,

Hersh Burston
Senior Product Manager
Blackmagic Design
Offline

Evan Daum

  • Posts: 260
  • Joined: Fri Jan 03, 2014 4:26 am

Re: Arduino Shield Thread

PostThu May 19, 2016 11:18 pm

So, the shield cannot receive commands FROM the ATEM via the SDI shield? Only send commands to a Camera or other device that responds to the SDI commands?
Offline
User avatar

JohnBengston

  • Posts: 570
  • Joined: Sun Sep 30, 2012 1:52 pm

Re: Arduino Shield Thread

PostThu May 19, 2016 11:22 pm

That is what he is saying, and hence the end of any idea of using a Arduino or PI to convert commands sent from the ATEM intended for BMD Cameras, to control other sorts of camera.

This device is only useful for controlling BMD cameras without an ATEM. That's a very valid use-case, albeit somewhat limited in comparison to the potential.

It would be interesting to know if this is a function of the hardware/firmware or just because they haven't written the receive library code yet. Although I'm certain we won't get that answered.....

That statement has somewhat of the "The URSA Mini doesn't support Interlace" about it. Of Course that was followed 4-5 months later, by a reversal.

As ever with BMD, it's a wait and see.
Offline

Colin Bradburne

  • Posts: 5
  • Joined: Tue Jan 06, 2015 1:52 pm

Re: Arduino Shield Thread

PostSat May 21, 2016 6:47 am

It's a real shame the shield won't extract data from the SDI (like from the ATEM). With that in mind does anyone know how to extract Camera Control data from the ATEM SDI output on an Arduino?
Offline

Jared Mooney

  • Posts: 8
  • Joined: Tue May 17, 2016 3:10 pm

Re: Arduino Shield Thread

PostSun May 22, 2016 8:47 pm

Hersh Burston wrote:The Arduino shield doesn't need an SDI input. By default the black output is set to 1080i59.94 but this can be changed using the supplied setup utility.

The camera control information is sent in the ancillary data of the SDI stream so to make your project wireless you could use an HD transmitter to send the SDI stream to the remote camera.

I assume you are planning to use two Arduino units - one with the shield at the camera end and the second to send the commands via the RF module. This should work and is a great idea.

For your information we are hoping to start shipping the shields within the next four weeks.


Regards,

Hersh Burston
Senior Product Manager
Blackmagic Design


This is great news. Any hardware guys wanna work on this idea with me?

Or Blackmagic could always beat us to market with a $1000/per camera package. Wireless DaVinci color and Iris control?

<Dares Grant Petty to do it.>
Offline
User avatar

Baz

  • Posts: 622
  • Joined: Wed Aug 22, 2012 5:06 am
  • Location: Sydney, Australia

Re: Arduino Shield Thread

PostTue May 24, 2016 12:27 am

Working on it as we speak...... :?

MISC
U/S Express, SmartviewDuo, SmartScopeDuo, Teranex 2D, Web Pres, 5/7 Vid Assists
VIDEOHUB
Smart 12x12
12x24
72x144
HYPERDECK
Studio, Shuttle, Studio Mini
ATEM
2me4K, 2me, TVS, TVS HD, CamConvs, StudioConvs, Studio Cams, Micro Studio Cam
Offline

Jared Mooney

  • Posts: 8
  • Joined: Tue May 17, 2016 3:10 pm

Re: Arduino Shield Thread

PostWed Jul 27, 2016 3:40 am

Baz wrote:Working on it as we speak...... :?


Any progress? I just got mine this week, but I have to find somebody with an Ursa mini and a servo lens to test with.
Offline

Bjørn Thorup

  • Posts: 23
  • Joined: Wed Jan 07, 2015 10:52 am
  • Location: Denmark

Re: Arduino Shield Thread

PostWed Aug 17, 2016 11:00 am

Hi all

If anybody should be interested we have just launched a Indiegogo campaign for a RCP unit which have integrated the Blackmagic 3G-SDI Arduino Shield. Have a look at http://igg.me/at/rcp to learn more
Bjørn Thorup / Engineering and Marketing
SKAARHOJ.com
Offline
User avatar

videokadr

  • Posts: 150
  • Joined: Wed Jan 01, 2014 2:17 pm
  • Location: Poland
  • Real Name: Jacek Niewadzi

Re: Arduino Shield Thread

PostWed Aug 17, 2016 2:48 pm

Is it possible to transfer RS422 Sony protocol for controlling camera the CCU by the RMB 150?
I think it should be use 2 sets of 2 arduino, together 4, it isnt?
8 cameras OBVAN HD/4K, low prices, working EU area, videokadr@wp.pl
Jacek Niewadzi
Offline

Jan Bednar

  • Posts: 66
  • Joined: Fri Nov 14, 2014 10:16 pm
  • Location: Prague

Re: Arduino Shield Thread

PostFri Aug 19, 2016 1:40 pm

Colin Bradburne wrote:It's a real shame the shield won't extract data from the SDI (like from the ATEM). With that in mind does anyone know how to extract Camera Control data from the ATEM SDI output on an Arduino?


I dont know, but look here, guys from FieldCast are working on such kind of device and I think I saw it in Frankfurt http://fieldcast.eu/products/converters ... roller-one
Offline

Peter Wood

  • Posts: 43
  • Joined: Tue Dec 08, 2015 9:27 am
  • Location: Lara Victoria

Re: Arduino Shield Thread

PostFri Aug 19, 2016 1:47 pm

Does the Arduino shield work with the MEGA 2560?
I can get it work with UNO but not the MEGA 2560.
Is there a different process for this board?
Woody
Offline
User avatar

Baz

  • Posts: 622
  • Joined: Wed Aug 22, 2012 5:06 am
  • Location: Sydney, Australia

Re: Arduino Shield Thread

PostSat Aug 20, 2016 12:07 am

Peter Wood wrote:Does the Arduino shield work with the MEGA 2560?
I can get it work with UNO but not the MEGA 2560.
Is there a different process for this board?


You have to either use serial comms or re route the I2C pins.

Baz

MISC
U/S Express, SmartviewDuo, SmartScopeDuo, Teranex 2D, Web Pres, 5/7 Vid Assists
VIDEOHUB
Smart 12x12
12x24
72x144
HYPERDECK
Studio, Shuttle, Studio Mini
ATEM
2me4K, 2me, TVS, TVS HD, CamConvs, StudioConvs, Studio Cams, Micro Studio Cam
Offline

Peter Wood

  • Posts: 43
  • Joined: Tue Dec 08, 2015 9:27 am
  • Location: Lara Victoria

Re: Arduino Shield Thread

PostSun Aug 21, 2016 10:19 am

Hi Baz

Thanks got it. Lucky i wired it up using fly leads and not the header. So it was easy to reroute.

Cheers

Woody
Woody
Offline
User avatar

waltervolpatto

  • Posts: 10498
  • Joined: Thu Feb 07, 2013 5:07 pm
  • Location: 1146 North Las Palmas Ave. Hollywood, California 90038 USA

Re: Arduino Shield Thread

PostTue Aug 23, 2016 4:17 am

so, in theory you can hide the camera in the wild, and have an Arduino connected to a servo and sensors, when an animal get in range the sensor start the recording and it can reposition the camera in the general direction and focus/zoom based on the sensor triggered?
W10-19043.1645- Supermicro MB C9X299-PGF - RAM 128GB CPU i9-10980XE 16c 4.3GHz (Oc) Water cooled
Decklink Studio 4K (12.3)
Resolve 18.5.1 / fusion studio 18
GPU 3090ti drivers 512.59 studio
Offline

Kasper Skaarhoj

  • Posts: 6
  • Joined: Fri Aug 31, 2012 7:01 pm

Re: Arduino Shield Thread

PostThu Aug 25, 2016 10:02 am

For those interested, we have made a video online that reviews the shield:



We refer to code and other downloads in the video which are not yet online.

To answer one specific question in this thread: Yes, it is possible to read out incoming data on the shield although its undocumented how to do that.
Offline

Kasper Skaarhoj

  • Posts: 6
  • Joined: Fri Aug 31, 2012 7:01 pm

Feature Suggestions for BMD

PostThu Aug 25, 2016 10:27 am

Hi BMD developers,

Great shield! Thanks!

Here are some feature suggestions:
- Make it possible to manipulate other VANC lines than 16 and different DID/SDIDs. I'm thinking a raw mode that could allow us to read/write such as time code into the signal.
- Let us read out from the shield what specific type of input signal we receive (if any): 1080p30, 720p50, etc.
- Release the FPGA source code and description of our to program it with new, community contributed firmware. I'm not aware how much is necessary for us to hack on it, but at least enough information for people with FPGA experience to be able to make alternative uses of the shield. This might also allow us to manipulate the actual SDI video data? Maybe not, I guess it depends on the hardware memory. Now, such a step would be really awesome.

Some bugs / suggestions of the bat:
- I2C only on pins A5+A4? Better to use the designated pins in opposite corner of shield.
- Don't include pull ups on the shield, if the shield is to regard as an IC with I2C support, that would not make sense.
- Input buffer seems to miss packets sometimes. This is not due to I2C speed because it happens also if you send just one packet every second.
- Library uses constructor parameter, this makes integration in other libraries a pain/impossible, so better is to use a constructor with no parameter and add a begin() function with parameter. This is arduino-best-practice. We will put a modified version of the library on GitHub soon.
- Don't use wire.begin() inside your library, this belongs in the main sketch normally. Also, wire.h should be included in main sketch in your sample code.
- I2C bus works on 5V devices but not 3V3 volt devices. For that you need such as a TCA9548A which is confirmed to do the trick. Other ways to convert I2C using MOSFETs does not work on this shield and even with the TCA9548A we couldn't make it work with such as a WiMos module. We tried really hard and couldn't see why, even when analysing the I2C bus with a scope.
Offline

Beau Monaghan

  • Posts: 32
  • Joined: Fri Sep 07, 2012 2:00 pm
  • Location: San Diego, CA

Re: Arduino Shield Thread

PostThu Sep 22, 2016 5:30 pm

Hello,

Does anyone know of a "quick start guide" to set this up? The video was great but I have some basic Arduino questions like when I load a sketch, how do I get that to load when the Arduino boots every time?

Thank You,
Beau Monaghan
Technology Manager
Meeting Services, INC
(858) 348-0100 x466
www.MSIProd.com
Offline
User avatar

Thomas Seewald

  • Posts: 1165
  • Joined: Fri Aug 24, 2012 11:57 am

Re: Arduino Shield Thread

PostThu Sep 22, 2016 6:54 pm

You transfer the sketch from programming gui to the ardouino during devellopment. The arduiono stores only one sketch, which will be started automaticly after boot / power on.
thos-berlin - Thomas S e e w a l d
Offline

Beau Monaghan

  • Posts: 32
  • Joined: Fri Sep 07, 2012 2:00 pm
  • Location: San Diego, CA

Re: Arduino Shield Thread

PostThu Sep 22, 2016 7:01 pm

So if I open the sketch, hit the Upload button, I do not have to save it? It will always be there?
Beau Monaghan
Technology Manager
Meeting Services, INC
(858) 348-0100 x466
www.MSIProd.com
Offline
User avatar

Thomas Seewald

  • Posts: 1165
  • Joined: Fri Aug 24, 2012 11:57 am

Re: Arduino Shield Thread

PostFri Sep 23, 2016 7:34 am

Yes, after upload, the sketch is stored on arduino and runs after switching power on. The sketch stays on arduiono until a new sketch is uploaded or the arduiono is dammaged ;-)
thos-berlin - Thomas S e e w a l d
Offline

Beau Monaghan

  • Posts: 32
  • Joined: Fri Sep 07, 2012 2:00 pm
  • Location: San Diego, CA

Re: Arduino Shield Thread

PostFri Sep 23, 2016 3:07 pm

Awesome. Thank you!!
Beau Monaghan
Technology Manager
Meeting Services, INC
(858) 348-0100 x466
www.MSIProd.com
Offline

Earl R. Thurston

  • Posts: 166
  • Joined: Sun Sep 04, 2016 4:52 pm
  • Location: Burnaby, BC

Re: Arduino Shield Thread

PostMon Oct 03, 2016 11:51 pm

When using the Arduino shield with an URSA Mini, do the colour correction settings only affect SDI output or do they also alter recordings to the CFast cards as well? And, if recorded, to which video formats? (Probably not RAW, but wondering more about ProRes Film vs. Video dynamic range.)
URSA Mini 4K, URSA Broadcast G2
Offline

Roman Schoissengeier

  • Posts: 9
  • Joined: Wed Oct 02, 2013 6:37 pm

Re: Arduino Shield Thread

PostTue Jan 17, 2017 10:43 pm

Baz wrote:
Peter Wood wrote:Does the Arduino shield work with the MEGA 2560?
I can get it work with UNO but not the MEGA 2560.
Is there a different process for this board?


You have to either use serial comms or re route the I2C pins.

Baz



Hi Baz, could you tell which pins it needs to be re routed to? SCL for Pin A4 and SCA for Pin A5?
thx, Roman
Offline

Gary Adams

Blackmagic Design

  • Posts: 1383
  • Joined: Sat Aug 25, 2012 6:14 am

Re: Arduino Shield Thread

PostWed Jan 18, 2017 6:17 pm

Hello Earl. The CCU controls from ATEM or Shield will affect the in camera video recordings with the exception of raw for the expected settings.
Gary Adams
Blackmagic Design
Offline

Roman Schoissengeier

  • Posts: 9
  • Joined: Wed Oct 02, 2013 6:37 pm

Re: Arduino Shield Thread

PostFri Jan 20, 2017 5:16 am

Hi All,
i figured it out by myself,
if you want to use the Arduino Mega (2560, rev.3) you need to connect:
A4 (on the BMD shield) to SDA on Arduino,
A5 (on the BMD shield) to SCL on Arduino.

i used the headers and soldered them onto the Shield,
used jumper wires to bridge the pins when using the Arduino Mega ( you are "loosing" pins A4 and A5...).

ArduinoMegaBMD.jpg
ArduinoMegaBMD.jpg (491.45 KiB) Viewed 33738 times


i'm new to the whole thing,
if this is not the correct approach, please correct me.
Offline

fixer

  • Posts: 7
  • Joined: Wed Aug 26, 2015 11:38 pm
  • Location: Venice Beach, CA

Re: Arduino Shield Thread

PostTue Jan 31, 2017 4:47 am

For those of you who have already been developing with the shield & api, can you save me some research and tell me if I can use 1x arduino & 1x shield to change settings on 8 micro studio cameras (as opposed to needing 8x arduinos & 8x shields)?
Offline
User avatar

Xtreemtec

  • Posts: 5387
  • Joined: Wed Jan 02, 2013 11:48 am
  • Location: The Netherlands

Re: Arduino Shield Thread

PostTue Jan 31, 2017 1:13 pm

That should not be a problem.. You can send up to 20 channels from the SDI shield.. You change the desired channel before sending the command and you can control them one by one..
Daniel Wittenaar .:: Xtreemtec Media Productions ::. -= www.xtreemtec.nl =-
4K OBV Trailer, ATEM TVS HD, 4M/E Broadcast Studio 4K, Constelation 8K, Hyperdeck Studio 12G, Ursa Broadcast 4K, 4K fiber converters with Sony Control
Offline

fixer

  • Posts: 7
  • Joined: Wed Aug 26, 2015 11:38 pm
  • Location: Venice Beach, CA

Re: Arduino Shield Thread

PostFri Feb 03, 2017 10:48 pm

thanks! I just ordered a shield and have an Uno to start my coding
Offline

Sven Meinhardt

  • Posts: 13
  • Joined: Mon Aug 29, 2016 12:43 pm

Re: Arduino Shield Thread

PostThu Feb 09, 2017 2:47 pm

fixer wrote:For those of you who have already been developing with the shield & api, can you save me some research and tell me if I can use 1x arduino & 1x shield to change settings on 8 micro studio cameras (as opposed to needing 8x arduinos & 8x shields)?


Hey ;)

That is no problem at all. I'm currently working with 9 Micro Studios at once and it works ;) Sometimes one camera has to be restarted to accept the Shield's input, but that could also be a problem of the whole setup ;) Apart from that, there are no problems and all cameras get their settings.


Have a nice day,

Sven
Offline

Koen Deschepper

  • Posts: 15
  • Joined: Wed Jan 29, 2014 8:14 pm

Re: Arduino Shield Thread

PostThu Feb 09, 2017 5:19 pm

Hi,

Does someone how knows how to use the sdiTallyControl.getCameraTally function?

MY programing skills are not as should be ;)

Kind regards
Offline

Koen Deschepper

  • Posts: 15
  • Joined: Wed Jan 29, 2014 8:14 pm

Re: Arduino Shield Thread

PostFri Feb 10, 2017 6:26 pm

Hi,
I have my "Tally extraction" working

Regards
Koen

Verstuurd vanaf mijn SM-G920F met Tapatalk
Offline

Gary Adams

Blackmagic Design

  • Posts: 1383
  • Joined: Sat Aug 25, 2012 6:14 am

Re: Arduino Shield Thread

PostMon Feb 13, 2017 5:33 pm

For anyone playing with the sdiTallyControl.getCameraTally call, make sure you put it in a loop and not simply call it once. Probably experienced people know that but it caught me as well.

Regards, Gary
Gary Adams
Blackmagic Design
Offline
User avatar

Radosław Przybył

  • Posts: 13
  • Joined: Wed Feb 22, 2017 1:13 am
  • Location: Echternach, Luxembourg

Re: Arduino Shield Thread

PostWed Feb 22, 2017 9:20 am

I am developing remote control for BM cameras based on BM SDI Shield. I can change 40 different parameters, but no luck with video mode. No matter what I send to camera, there is no change.
Are there any limitations for this function to work or documentation was changed?
I am sending 5 bytes to set up video mode. Even such simple code is not working:

Code: Select all
 int8_t paramTable[5];
  paramTable[0] = 3;  //50fps
  paramTable[1] = 0;  //regular
  paramTable[2] = 3;  //1080
  paramTable[3] = 1;  // interlaced
  paramTable[4] = 0;  //YUV
  sdiCameraControl.writeCommandInt8(
    1,         
    1,       
    0,       
    0,             
    paramTable
  ); 

Also tried 50 instead of 3...
Any help will be appreciated.

I am using BM Studio Camera as test target.

ps. Other functions that need to pass an array are working w/o problems.

Regards
SDI Remote for Blackmagic cameras
sdiremote.com
Offline
User avatar

Radosław Przybył

  • Posts: 13
  • Joined: Wed Feb 22, 2017 1:13 am
  • Location: Echternach, Luxembourg

Re: Arduino Shield Thread

PostThu Feb 23, 2017 12:26 pm

And here is mine. Lunchbox SDI Remote prototype. It needs some minor software tweaks (video mode is not working) and professional case.

SDI Remote for Blackmagic cameras
sdiremote.com
Offline

Roman Schoissengeier

  • Posts: 9
  • Joined: Wed Oct 02, 2013 6:37 pm

Re: Arduino Shield Thread

PostFri Feb 24, 2017 8:47 am

has anyone figured out how to access the "tint" parameter.
( on the camera, next to whitebalance...)
i think this was introduced with one of the latest camera updates,
but i couldn't find the correct parameter mapping in the arduino controls...

thx, Roman
Offline
User avatar

Radosław Przybył

  • Posts: 13
  • Joined: Wed Feb 22, 2017 1:13 am
  • Location: Echternach, Luxembourg

Re: Arduino Shield Thread

PostFri Feb 24, 2017 9:07 am

It is probably calculated parameter - look how tint is defined in Adobe Camera RAW.Image
Attachments
Zrzut ekranu 2017-02-24 o 10.04.50.png
Zrzut ekranu 2017-02-24 o 10.04.50.png (14.09 KiB) Viewed 32882 times
SDI Remote for Blackmagic cameras
sdiremote.com
Offline
User avatar

Radosław Przybył

  • Posts: 13
  • Joined: Wed Feb 22, 2017 1:13 am
  • Location: Echternach, Luxembourg

Re: Arduino Shield Thread

PostFri Feb 24, 2017 9:59 am

Second thought - try to send something to parameters 3 or 4 on group 1. They are reserved in documentation Number 3 is in good relation to WB setting ;-)
Unfortunately I have only Studio cameras and they lack this new parameter.
Attachments
Zrzut ekranu 2017-02-24 o 10.57.38.png
Zrzut ekranu 2017-02-24 o 10.57.38.png (22.66 KiB) Viewed 32934 times
SDI Remote for Blackmagic cameras
sdiremote.com
Offline
User avatar

Radosław Przybył

  • Posts: 13
  • Joined: Wed Feb 22, 2017 1:13 am
  • Location: Echternach, Luxembourg

Re: Arduino Shield Thread

PostFri Feb 24, 2017 2:59 pm

Gain. What should I pass as a parameter to set gain function?
I am sending int8 and camera acts random. Gain jumps from 0 to +6 sometimes when 4 is sent, sometimes when it is 5 sometimes when it is 11. Then same sequence repeats on higher gain levels. In case of Studio Camera I have gain levels of 0, +6, +12, +18, but documentation states I should use values between 1 and 16. Could somebody hint me, how to handle it?
SDI Remote for Blackmagic cameras
sdiremote.com
Offline
User avatar

Radosław Przybył

  • Posts: 13
  • Joined: Wed Feb 22, 2017 1:13 am
  • Location: Echternach, Luxembourg

Re: Arduino Shield Thread

PostSun Feb 26, 2017 12:44 am

Will answer myself. Proper values sent to gain function in case of Studio Camera are: 2 (1x), 4(2x), 8(4x) , 16 (16x(+2)).
SDI Remote for Blackmagic cameras
sdiremote.com
Offline
User avatar

Xtreemtec

  • Posts: 5387
  • Joined: Wed Jan 02, 2013 11:48 am
  • Location: The Netherlands

Re: Arduino Shield Thread

PostSun Feb 26, 2017 1:40 pm

Yeah these are the steps that the software does have available also.. There are no more gain parameters at this moment.. While i would prefer a +3db stepping..
Daniel Wittenaar .:: Xtreemtec Media Productions ::. -= www.xtreemtec.nl =-
4K OBV Trailer, ATEM TVS HD, 4M/E Broadcast Studio 4K, Constelation 8K, Hyperdeck Studio 12G, Ursa Broadcast 4K, 4K fiber converters with Sony Control
Offline
User avatar

Xtreemtec

  • Posts: 5387
  • Joined: Wed Jan 02, 2013 11:48 am
  • Location: The Netherlands

Re: Arduino Shield Thread

PostWed Mar 01, 2017 8:34 pm

Had a job last weekend were i had to have tally on my Fiber units from a Roland V800 mixer..

The mixer had potential free contact closure tally outputs.. Which means that when a Tally is made it is pulled low to ground. Potential free meand that it is not connected to any power source. So to detected it your input has to be high.

Be Aware!! I have put a small delay in the code to not flood the serial terminal while debugging.
The best is to delete this line or make the time smaller like 50 or so when you are finnished with debugging your inputs. This way the interface will run faster.


I thoughed i would share the code for others to help them with future projects!

I'm open to help with projects but i don't do request like:
"i need a full shading for my 3 ursa's, I have no clue what programming is so make it for me.." :roll: :lol:

Code: Select all
/*
  SDI Tally interface based
  Turns tally of the cameras on and off based on pins pulled low.
  This interface is programed for Potential free outputs on a video mixer.
  This means that if the tally output of the video mixer is active it will make a connection to ground.
  By configuring the inputs with pull-up they are active 5V high and when pulled low to GND it will send that ports tally to the SDI output.

  Written by Daniel Wittenaar for free use.
  Use code and arduino's with care!! I'm not responsable for any damage caused by using this code!!

  When you don't know how electronics work always ask advice from an expert!

  I have put a  delay(250);   in the code. This is for debugging purposes. When done with serial debugging remove or //  the delay to have a more responsive interface.   

  This example code is in the public domain.
  You may re-distribute and share this code. But you need to leave this info unchanged and included with the code.
*/

#include <BMDSDIControl.h>                                // need to include the library
#include <Wire.h>                                         // Included because i had error with the original BMD Lib saying Wire.h did not exist

int PGM1 = 2;
int PRV1 = 3;

int PGM2 = 4;
int PRV2 = 5;

int PGM3 = 6;
int PRV3 = 7;

int PGM4 = 8;
int PRV4 = 9;


BMD_SDITallyControl_I2C sdiTallyControl(0x6E);            // define the Tally object using I2C using the default shield address

// the setup function runs once when you press reset or power the board
void setup()
{
 Serial.begin(115200);
 
  sdiTallyControl.begin();                                 // initialize tally control
  sdiTallyControl.setOverride(true);                       // enable tally override

  pinMode(PGM1, INPUT_PULLUP);
  pinMode(PGM2, INPUT_PULLUP);
  pinMode(PGM3, INPUT_PULLUP);
  pinMode(PGM4, INPUT_PULLUP);
 
  pinMode(PRV1, INPUT_PULLUP);
  pinMode(PRV2, INPUT_PULLUP);
  pinMode(PRV3, INPUT_PULLUP);
  pinMode(PRV4, INPUT_PULLUP);

}

// the loop function runs over and over again forever
void loop()
{               
  if(digitalRead(PGM1) == LOW){ Serial.println("PGM1"); }
  if(digitalRead(PGM2) == LOW){ Serial.println("PGM2"); }
  if(digitalRead(PGM3) == LOW){ Serial.println("PGM3"); }
  if(digitalRead(PGM4) == LOW){ Serial.println("PGM4"); }

  if(digitalRead(PRV1) == LOW){ Serial.println("PRV1"); }
  if(digitalRead(PRV2) == LOW){ Serial.println("PRV2"); }
  if(digitalRead(PRV3) == LOW){ Serial.println("PRV3"); }
  if(digitalRead(PRV4) == LOW){ Serial.println("PRV4"); }
  Serial.println();                                               // Print New Line
 
  // Use this delay only when you use the Serial Terminal for debug!!
  delay(250);                                             
 
 
  // turn tally ON    // Camera Number   // Program Tally    // Preview Tally
  sdiTallyControl.setCameraTally( 1, ( !digitalRead(PGM1)) , ( !digitalRead(PRV1)) );
  sdiTallyControl.setCameraTally( 2, ( !digitalRead(PGM2)) , ( !digitalRead(PRV2)) );
  sdiTallyControl.setCameraTally( 3, ( !digitalRead(PGM3)) , ( !digitalRead(PRV3)) );

}
Daniel Wittenaar .:: Xtreemtec Media Productions ::. -= www.xtreemtec.nl =-
4K OBV Trailer, ATEM TVS HD, 4M/E Broadcast Studio 4K, Constelation 8K, Hyperdeck Studio 12G, Ursa Broadcast 4K, 4K fiber converters with Sony Control
Offline

uli peters

  • Posts: 108
  • Joined: Mon Aug 27, 2012 12:44 pm

Re: Arduino Shield Thread

PostThu Mar 02, 2017 1:45 pm

Really stupid that the shield does not allow reading / extracting of camera control data and tally from SDI input. That would allow flexible and small tally and remote control solutions for any kind of situation.
Offline
User avatar

Xtreemtec

  • Posts: 5387
  • Joined: Wed Jan 02, 2013 11:48 am
  • Location: The Netherlands

Re: Arduino Shield Thread

PostThu Mar 02, 2017 2:20 pm

It is possible.. But then you need to code a bit more and they didn't descripe it in their manual. ;)
Daniel Wittenaar .:: Xtreemtec Media Productions ::. -= www.xtreemtec.nl =-
4K OBV Trailer, ATEM TVS HD, 4M/E Broadcast Studio 4K, Constelation 8K, Hyperdeck Studio 12G, Ursa Broadcast 4K, 4K fiber converters with Sony Control
Offline

Koen Deschepper

  • Posts: 15
  • Joined: Wed Jan 29, 2014 8:14 pm

Re: Arduino Shield Thread

PostThu Mar 02, 2017 2:43 pm

uli peters wrote:Really stupid that the shield does not allow reading / extracting of camera control data and tally from SDI input. That would allow flexible and small tally and remote control solutions for any kind of situation.

Hi,
I have working code to read the tally.
I will send a PM when I'me at home.

Kind regards
Koen


Verstuurd vanaf mijn SM-G920F met Tapatalk
Offline

Gary Adams

Blackmagic Design

  • Posts: 1383
  • Joined: Sat Aug 25, 2012 6:14 am

Re: Arduino Shield Thread

PostThu Mar 02, 2017 2:43 pm

There is documented support for getting tally from the incoming SDI.

Regards, Gary
Gary Adams
Blackmagic Design
Offline
User avatar

Xtreemtec

  • Posts: 5387
  • Joined: Wed Jan 02, 2013 11:48 am
  • Location: The Netherlands

Re: Arduino Shield Thread

PostThu Mar 02, 2017 3:38 pm

Well it is all in the Libraries.. But most Arduino users don't look at libraries..

For tally there is the Function:
int SDITallyControl::read(byte data[], int dataLength)

For shading info there is the Function:
int SDICameraControl::read(byte data[], int dataLength)

It is possible but you need some expierence with programming. :idea:
Daniel Wittenaar .:: Xtreemtec Media Productions ::. -= www.xtreemtec.nl =-
4K OBV Trailer, ATEM TVS HD, 4M/E Broadcast Studio 4K, Constelation 8K, Hyperdeck Studio 12G, Ursa Broadcast 4K, 4K fiber converters with Sony Control
Next

Return to Live Production

Who is online

Users browsing this forum: Bing [Bot] and 21 guests