9 Replies Latest reply on Mar 19, 2019 11:32 AM by stefanrousseau

    Missing library (libreadline.so.7) in btmgmt routine in Minized

    rsiva

      Hello Minized Gurus

                                         I recently got my minized board and have been playing with the basic tutorials (such as Hello World, Labs 1-4) and it has been working great (Petalinux 2017.4)  so far. Very nice board to learn Zynq ARM/FPGA and SW/HW co-design for various applications.

       

      I was trying out the below tutorial from the "reference designs/tutorials" section when I encountered an error in the library with the btmgmt executable, which is part of the "demo_ble.sh" script

      ---------------

      Using Bluetooth on MiniZed

      This document discusses the Bluetooth Low Energy demo apps for MiniZed under both iOS and Android.  Learn how to install the apps and install the GATT server on MiniZed.

       

      The Bluetooth interface must be configured and then you can run the application, which is located at /mnt/emmc/tools/btgatt-server.

      To do this, from the command prompt in the terminal enter:

      cd /mnt/emmc/ble

      ./ble.sh

      ./demo_ble.sh   // Missing lib error happens

      The BLE demo should now be ready for connections from an app

      ---------------

       

      When I run the demo_ble.sh, I get a Library Error and Bluetooth does not connect as shown in the screenshot below.

       

      Library libreadline.so.7 missing

       

      Has some one else encountered this problem The peta Linux version is the  2017.4 (latest image) running on my minized and has the "image.ub" in the emmc (43MB).

      The bt.sh and wifi.sh from the "Getting started guide" works. but not this demo.

       

       

      I checked the /usr/lib path for what libraries are present and the closest one is "libreadline.so.6" (not the 7)

       

      Problem: How to get this library (7) added to the path. I don't have a petalinux build running on my host.

       

      If you need any other information, pl let me know and I can extract and post it here.

       

      Thanks much

       

      Best regards

       

      Siva Radhakrishnan

        • Re: Missing library (libreadline.so.7) in btmgmt routine in Minized
          stefanrousseau

          Hello Siva,

           

          Great that you are playing with BLE.  If you look at the reference designs, you will see that there are separate downloads for 2017.4 and for 2018.2.

          Using Bluetooth on MiniZed 2017.4

          Using Bluetooth on MiniZed 2018.2

           

          My guess is that you downloaded the one for 2018.2 but are using 2017.4 for the PetaLinux on your board.  They are not compatible.

           

          The latest versions of the Raspbian OS caused incompatibilities with the libreadline library in PetaLinux 2017.4. It uses version 7.0, while MiniZed with PetaLinux 2017.4 uses version 6.3 and it would give warnings. For this reason the Raspbian build version used for the BLE app was 4.4.50-v7+.

          When you update to PetaLinux 2018.2, it also uses libreadline 7.0, so we are able to use Raspbian version 4.9.41-v7+.

           

          So for this demo it seems that your options are to update your environment to 2018.2, or to use the 2017.4 version of the BLE files.

           

          Regards.

          Stefan

            • Re: Missing library (libreadline.so.7) in btmgmt routine in Minized
              rsiva

              Hello Stefan

                                   You are right. I did download  "Using Bluetooth on MiniZed 2018.2" files" and used it inadvertenly with the older image

              and that has caused the incompatibility with 2017.4 installation on the board.

               

              PS: BTW, when is the Petalinux 2018.2 going to be released. The latest image from your repo is still 2017.4

               

              I can certainly grab the "Using Bluetooth on MiniZed 2017.4" files and continue with my BTE experiments.

               

              This  power of the small ARM CPU along with FPGA / peripherals and the numerous tutorials in your site and not to mention your wonderful support makes it that much more enjoyable to learn new things and pick up skills.

               

              I have been reading your posts and using them as BKM/tips to circumvent problems during my 10 days so far with the minized.

               

              I will let know how the 2017.4 BTE works.

               

              Thanks much

               

              Best regards

               

              Siva R

               

               

               

               

                • Re: Missing library (libreadline.so.7) in btmgmt routine in Minized
                  stefanrousseau

                  Hello Siva,

                   

                  If you look in the "Configure your PL and eMMC" section of the 2018.2 Bluetooth document that you downloaded, you will see that the files for upgrading your MiniZed to 2018.2 are included in your download.  It is a simple process.

                   

                  "For 2018.2 support, you must program the 2018.2 flash_fallback_7007S.bin image into the QSPI flash and place the 2018.2 image.ub file into eMMC.

                  To make sure that your MiniZed firmware is correct, you can use the files in the zip file that accompany this document (flash_fallback_7007S.bin and image.ub). For instructions on programming these files, please see APPENDIX A – Programming MiniZed. For information on how these files are created, please see APPENDIX B – Creation of the MiniZed Projects."

                   

                  The 2018.3 tools are currently available, but we usually only support even tools releases.

                  Also, if you look in the downloads, you will see that the MiniZed BSP's for 2018.2 are there.

                   

                  MiniZed.bsp 2018.2 (BSP for booting from QSPI flash to eMMC)

                  Minized_QSPI.bsp 2018.2 (QSPI flash fallback for booting from flash to eMMC)

                   

                  Regards,

                  Stefan