This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM385 - Building against McFW / properly building and using RDK usecases

Other Parts Discussed in Thread: DM385

Hey everyone,

I'm currrently working with the NSketch car black box DM385 EVM, and I've had some trouble getting a basic application off the ground. Apologies if this comes across as a dumb question, but I'm not 100% sure on how exactly I'm supposed to go about building against the McFW framework or using the usecases provided in the software package I've received.

I've poured over all the documentation provided but it feels like there's something missing or me just not understanding a piece of common knowledge. I've linked against the built static libraries(carbb_rdk_mcfw_api.a, carbb_rdk_mcfw.a, carbb_rdk_link_api.a, etc), which results in plenty of unresolved outside dependencies which I've attempted solving but it seems like there's an easier option that I'm not considering. Additionally I could add entries or make modifications to the large recursive makefile that compiles the RDK and other applications but that doesn't seem like the best approach either. So I was wondering if there's a piece of documentation out there somewhere that may help clarify the process of building an application using usecases/McFW or if anyone would be kind enough to explain to me where I'm going wrong with my approach so far.

Thanks,

Dave

  • Hi David,

    Are you using IPNC RDK?

    Regards,
    Pavel
  • Thanks for the response Pavel,

    Technically I'm trying to use the car black box RDK (cbb RDK) whose software package seem to be nearly identical in directory structure after looking at documentation for both the IPNC and CBB. In fact most of the CBB documentation seems to be very slightly modified versions of the IPNC documentation I could find, but I can't vouch that the software they use are in fact the same. Do you know if there's anywhere that explains the process of creating applications using the IPNC/CBB software packages? Any help is very appreciated.

    The design/development kit I'm using is

     

    Thanks for your time,

    Dave

  • Hello,.

    David Plows said:
    Do you know if there's anywhere that explains the process of creating applications using the IPNC/CBB software packages?

    In IPNC package you could find a document called IPNC RDK McFW UserGuide for dm385/dm8127 soc platforms, which provides details about the Multi channel framework, APIs, demos, links, chains, data flow etc.

    Is this what you are looking for?

    Best Regards,

    Margarita

  • Dave,

    David Plows said:
    Technically I'm trying to use the car black box RDK (cbb RDK)

    I will notify our CBB RDK team for help.


    Regards,
    Pavel

  • Hello Margarita,

    Thanks for your response. Yes, I have that document and have read over it before, and while it is informative about the structure of the McFW and Link API, it simply says to refer to the install guide for information about building and running the CBB RDK. I don't have a problem building or running the default applications, I was just curious if there's a standard documented way of linking against and using the API, as using the built static libraries ends up with numerous missing dependencies, and editing the large makefile, which will probably work fine, seems a little different than what I'm used to when using other API's (which is fine if this is the accepted way of using it, I just want to make sure that I'm not being dense and missing an easier developmental process). 

    And thank you for your support Pavel.

    Regards,

    Dave

  • Hi,

     

    Whan you install the CBB RDK out of the box you should be able to build and run the RDK without any issues.

    Can you tell us what build issues you are running into?

     

    regards,

    Anand

  • Hello and thank you for your response Anand,

    I'm not having any issues building and running the CBB RDK software, all of that I'm okay with at the moment. My issue stems from wanting to create an application using the provided usecases and McFW API to do something simple like capture video from the camera to a file, as a starter. Usually my standard approach for using a library's API on an embedded linux system would be along the lines of

    1. Building the library

    2. Adding the built static or dynamic libraries (.so's or .a's) into my system's and /lib folder, adding the header into my toolchain

    3. Including the library's header in my application and calling it's functions

    However I realize that the provided software is a very large framework and doesn't seem to be this simple. So I was curious if there's a standard documented approach to developing/building an application using the RDK/McFW API. Again, sorry if this seems like a dumb question, I'm just somewhat confused as how to proceed.

    Thank you for your time,

    Dave

  • Hi,

    You can build your library independent of the CBB build setup and then add it in the '..\cbb_rdk\cbb_mcfw\makerules\includes_a8.mk file'.

    If you want to add the your source code to the CBB build setup then you can take the reference of the '..\cbb_rdk\cbb_mcfw\app\mcfw_api_demos\stream\' folder.

    You have to take look at the following makefiles:

    • ..\cbb_rdk\cbb_mcfw\app\mcfw_api_demos\stream\MAKEFILE.MK
    • ..\cbb_rdk\cbb_mcfw\app\mcfw_api_demos\MAKEFILE.MK

    regards,

    Anand

  • Thank you Anand!
    I had a feeling this was the correct approach, I just wasn't 100% sure and wanted to make sure I wasn't wasting time developing something if there was a different intended manner of using the RDK. Thank you again for your time.