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

Alternative download location for firmware? #5114

Closed
mikepurvis opened this issue Oct 23, 2019 · 10 comments · Fixed by #6098
Closed

Alternative download location for firmware? #5114

mikepurvis opened this issue Oct 23, 2019 · 10 comments · Fixed by #6098

Comments

@mikepurvis
Copy link
Contributor

mikepurvis commented Oct 23, 2019

Currently librealsense downloads the latest firmware from an S3 bucket at configure time, here:

string(REGEX MATCH "D4XX_RECOMMENDED_FIRMWARE_VERSION \"([0-9]+.[0-9]+.[0-9]+.[0-9]+)\"" _ ${ver})
set(D4XX_FW_VERSION ${CMAKE_MATCH_1})
message(STATUS "D4XX_FW_VERSION: ${D4XX_FW_VERSION}")
set(D4XX_FW_SHA1 0f91ab8cce99e845c1dc9c270bbbefb12a6b1521)
set(D4XX_FW_URL "http://realsense-hw-public.s3-eu-west-1.amazonaws.com/Releases/RS4xx/FW")
string(REGEX MATCH "SR3XX_RECOMMENDED_FIRMWARE_VERSION \"([0-9]+.[0-9]+.[0-9]+.[0-9]+)\"" _ ${ver})
set(SR3XX_FW_VERSION ${CMAKE_MATCH_1})
message(STATUS "SR3XX_FW_VERSION: ${SR3XX_FW_VERSION}")
set(SR3XX_FW_SHA1 55237dba5d7db20e7c218975375d05b4210e9460)
set(SR3XX_FW_URL "http://realsense-hw-public.s3-eu-west-1.amazonaws.com/Releases/SR300/FW")

This behaviour can be turned off by passing -DINTERNET_CONNECTION=0 to CMake, but it would be nice to instead be able to point to a local/elsewhere mirror for these assets. This could be as simple as setting the two lines to something like:

set(FW_URL_PREFIX "http://realsense-hw-public.s3-eu-west-1.amazonaws.com" CACHE STRING)
set(D4XX_FW_URL "${FW_URL_PREFIX}/Releases/RS4xx/FW")
set(SR3XX_FW_URL "${FW_URL_PREFIX}/Releases/SR300/FW")

So that a user would have the option of passing an alternative base URL in with -DFW_URL_PREFIX=http://path/to/my/mirror.

@MartyG-RealSense
Copy link
Collaborator

MartyG-RealSense commented Oct 23, 2019

Aside from the firmware download page linked to from the SDK 'Releases' page, the files are also available at the link below, which was the previous download location before Intel changed to the site used on the Releases page.

https://downloadcenter.intel.com/download/29078/Latest-Firmware-for-Intel-RealSense-D400-Product-Family

@mikepurvis
Copy link
Contributor Author

Oh yeah, I'm aware they can be had elsewhere. My issue is with the librealsense build needing external network access at configure time. For some CI environments this is unacceptable, so I'd like it to be configurable.

@radfordi
Copy link
Contributor

@mikepurvis, separating the base URL into a variable that can be overridden is reasonable. Submit a PR. Alternatively, these files can be placed in the build directory prior to running CMake and if their SHA1 hashes match, then they will not be downloaded.

@HenryHuYu
Copy link

I m working on installing libreasense on a Jetson nano. Suffering from errors showed below. I check every possible solution and didnt work out. I tried have a proxy but it also didnt work.

/home/drone/librealsense/common/fw-update-helper.cpp:15:10: fatal error: common/fw/D4XX_FW_Image.h

Failed to identify Internet connection
-- Info: REALSENSE_VERSION_STRING=2.25.0
-- Setting Unix configurations
-- Info: Building with CUDA requires CMake v3.8+
-- CUDA_LIBRARIES: /usr/local/cuda/include /usr/local/cuda/lib64/libcudart_static.a;-pthread;dl;/usr/lib/aarch64-linux-gnu/librt.so;/usr/local/cuda/lib64/libcusparse.so;/usr/local/cuda/lib64/libcublas.so
-- No internet connection, disabling BUILD_WITH_TM2
-- using RS2_USE_V4L2_BACKEND
-- pybind11 v2.2.1
-- GLFW 3.3 not found; using internal version
-- Using X11 for window creation
-- Could NOT find apriltag (missing: APRILTAG_INC APRILTAG_LIB)
-- Unable to find apriltag library, skipping pose-apriltag example
-- No internet connection, disabling IMPORT_UVC_FW
-- Configuring done
-- Generating done

Could you please share a mirror link? besides, as for mentioned, could I get it from https://downloadcenter.intel.com/download/29078/Latest-Firmware-for-Intel-RealSense-D400-Product-Family ?
and then how can I set it and install librealsense properly?

@MartyG-RealSense
Copy link
Collaborator

MartyG-RealSense commented Dec 7, 2019

The website JetsonHacks has a guide for installing Librealsense on the Jetson Nano. Have you seen this guide please?

https://www.jetsonhacks.com/2019/05/16/jetson-nano-realsense-depth-camera/

If that guide does not work for you, there is an alternative method for installing Librealsense.

https://support.intelrealsense.com/hc/en-us/community/posts/360037657234/comments/360009799533

@HenryHuYu
Copy link

hi, I finally get it done by having a robust vpn. but I got some other problems.
Firstly, when I install librealsense-ros, it sait that the minimum of libreasense version > 2.29, but the scripts offered by the JetsonHack is 2.25, I change the script to 2.30.0 and delete the build file but it didnot work. could u help me with that (How to upgrade librealsense?)

@MartyG-RealSense
Copy link
Collaborator

MartyG-RealSense commented Dec 9, 2019

If you are using the latest version of the RealSense ROS wrapper (the latest at the time of writing this) then SDK version 2.29.0 should be used with it. This is because development of the ROS wrapper is not synced with development of the main SDK, so the SDK version that the RealSense ROS wrapper supports can lag behind.

https://github.com/IntelRealSense/realsense-ros/releases

If you cannot get the JetsonHacks script to work with the latest ROS wrapper, you could use the previous wrapper version that supports SDK 2.25.0, and use the 2.25.0 SDK version with it to help to ensure compatibility.

@HenryHuYu
Copy link

Thanks for your reply. I am trying to install a SDK version > 2.29 from source(Jetson Nano). But I followed the instructions of JetsonHack and it automatically install the version 2.25 which causes trouble when install realsense-ros.

How can I rebuild the source code and install a SDK version (2.29)? I goes to /librealsense/build and do make uninstall but showed the following error.

-- Uninstalling "/usr/local/lib/librealsense2.so.2.25.0"
CMake Error at cmake_uninstall.cmake:16 (MESSAGE):
Problem when removing "/usr/local/lib/librealsense2.so.2.25.0"

CMakeFiles/uninstall.dir/build.make:57: recipe for target 'CMakeFiles/uninstall' failed
make[3]: *** [CMakeFiles/uninstall] Error 1
CMakeFiles/Makefile2:106: recipe for target 'CMakeFiles/uninstall.dir/all' failed
make[2]: *** [CMakeFiles/uninstall.dir/all] Error 2
CMakeFiles/Makefile2:113: recipe for target 'CMakeFiles/uninstall.dir/rule' failed
make[1]: *** [CMakeFiles/uninstall.dir/rule] Error 2
Makefile:177: recipe for target 'uninstall' failed
make: *** [uninstall] Error 2

@MartyG-RealSense
Copy link
Collaborator

MartyG-RealSense commented Dec 9, 2019

You can obtain SDK 2.29.0's source code from Intel's official SDK 'Releases' page. If you scroll to the bottom of the page, there is a list of files titled 'Assets' where the source code can be downloaded from.

https://github.com/IntelRealSense/librealsense/releases/tag/v2.29.0

The official documentation on uninstalling an SDK package is here:

https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md#uninstalling-the-packages

@RealSenseCustomerSupport
Copy link
Collaborator


Hi @mikepurvis aHenryHuYund Do you need further help on this issue?
If we don't hear from you in 7 days, we will close this issue.

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

Successfully merging a pull request may close this issue.

6 participants