element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Avnet Boards Forums
  • Products
  • Dev Tools
  • Avnet Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
ZedBoard Hardware Design Adding Wi-Fi and Bluetooth Connectivity to the ZedBoard using the Murata 1DX Pmod
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Avnet Boards Forums to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Verified Answer
  • Replies 16 replies
  • Subscribers 327 subscribers
  • Views 5610 views
  • Users 0 members are here
Related

Adding Wi-Fi and Bluetooth Connectivity to the ZedBoard using the Murata 1DX Pmod

Former Member
Former Member over 7 years ago

Reference BSP location:

http://zedboard.org/support/design/1521/11

 

UPDATE for Petalinux 2017.4:

The 2017.4 release of this BSP includes a major change to the Wi-Fi kernel driver and radio firmware.  These are official releases from Cypress.  Note:  The Murata 1DX Wi-Fi/BT module on MiniZed is based on the Cypress/Broadcom CYW4343W radio chipset.

 

Changes made from 2017.3 to 2017.4:

  •   Inclusion of Cypress’ “ORGA” Wi-Fi driver release  
        
    •     Driver is based on brcmfmac from Linux kernel 4.12 + several patches/fixes
    •   
    •     Driver is compiled out-of-tree using a backport tool to provide compatibility w/ Xilinx 4.9 kernel
    •   
    •     New radio firmware binary incorporating several fixes including WPA2 “Krack” security
    •   
    •     Alternate radio firmware binary provided for use with “wl” wireless testing utility (useful for FCC testing, etc)
    •   
    •     Linux Kernel configuration disables "cfg80211" and Broadcom FMAC driver as they’re now incorporated via pre-compiled modules
    •  
  •   Murata-Specific connectivity packages incorporating security/functionality patches  
        
    •     recipes-connectivity/hostapd 2.6
    •   
    •     recipes-connectivity/wpa-supplicant 2.6
    •  
  •   Yocto recipe re-organization:  
        
    •     recipes-bsp/custom removed, contents folded into recipes-bsp/minized-misc
    •   
    •     recipes-bsp/minized-firmware renamed to recipes-bsp/minized-wireless   
            
      •       Contains all Cypress/Murata 1DX radio firmware binarie, configuration files and test utility
      •     
      •       Contains pre-compiled kernel modules (*.ko) for Cypress ORGA 4.12 driver
      •    
        
    •  

 

Original Release (2017.3):

Introduction

The Murata 1DX Pmod can be used to add Wi-Fi and Bluetooth connectivity to your ZYNQ design.  This write-up covers the steps necessary to enable connectivity, providing an example based on the ZedBoard Development Kit (XC7Z020).  The Murata 1DX module is also used on Avnet’s MiniZedhttp://zedboard.org/product/minizedevaluation platform.

 

Hardware Description:

Starting with the Vivado hardware project included inside the official Petalinux 2017.3 BSP release for the Avnet ZedBoard, the following hardware modifications are performed: 

 

Step 1:  Enable the secondary SD interface (SD1) on the ZYNQ-7000.  This is used by the Wi-Fi radio.  Select MIO pins 10..15 as these correspond to Pmod connector JEx on the ZedBoard.  JEx is the only Pmod connector on the ZedBoard that interfaces directly to MIO pins.  The pinout of the 1DX Pmod was designed to match up to this connector.  You do not need to enable the CD, WP or Power pins.

 

Step 2:  Enable EMIO GPIO with a width of “3”.  These are used for reset and control signals on the 1DX Pmod (BT_REG_ON, BT_DEV_WAKE, WL_DEV_WAKE).  They’re routed to the secondary Pmod interface (JDx on the ZedBoard).  These signals will be routed through ZYNQ PL.

 

Step 3:  Add an AXI 16550 UART to the ZYNQ’s block diagram (PL).  This will be used by the 1DX’s Bluetooth radio.  Although the ZYNQ’s PS includes a secondary UART, its maximum baud rate is datasheet limited to 1 Mbps.  The AXI 16550 UART allows us to achieve a speed of 3 Mbps, which is necessary to support Bluetooth’s higher throughput use cases such as streaming audio.  The AXI 16550 UART is further customized to use an external baud rate clock (48 MHz), required to generate 3 Mbps.  This clock is supplied by one of the ZYNQ PS block’s four PL clock outputs.

 

Step 4:  Route UART and GPIO control signals up to the top level of the design and add location constraints (.xdc constraint and top level files are provided in the project).

 

Software Description:

Software setup for Petalinux requires four major “ingredients”:

  •   Kernel drivers for Wi-Fi and Bluetooth.
  •   Device Tree Modifications
  •   Wi-Fi and Bluetooth firmware binaries required by the 1DX
  •   Upper level software utilities needed to establish connectivity to user application space

Kernel Drivers (petalinux-config -c kernel):

Step 1: Enable generic Bluetooth functionality in the Linux kernel  (Networking Support -> Bluetooth subsystem support).  Enable both Bluetooth High Speed and Bluetooth Low Energy options.  Next, select “Bluetooth device drivers” and enable the following:  HCI UART Driver, H4 protocol support, and Broadcom protocol support.

 

Step 2: Enable generic Wireless LAN support (Networking support -> Wireless).  Enable “cfg80211” wireless configuration API.

 

Step 3: Enable Broadcom Full MAC driver (Device Drivers -> Network device support -> Wireless LAN (enable).  Next, select “Broadcom devices” and then enable SDIO bus support for FullMAC driver.  This is the “brcmfmac” open source driver included in the main line kernel source tree.  All other options may be de-selected.

 

Step 4: Save settings and exit kernel configuration.

 

Device Tree modifications:

Step 1: In your Petalinux project, edit project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi.

 

Note:  The 1DX’s “WL_REG_ON” input is a reset input, but it’s treated as a virtual voltage regulator from the perspective of the Linux kernel.  This is tied to MIO[9] on the ZYNQ device.  The devicetree entry below will automatically toggle this pin when the kernel boots, bringing the 1DX out of reset.

/include/ "system-conf.dtsi"

/ {

                aliases {

                                serial0 = &uart1;

                                serial1 = &uart0;

                };

         

                /* WiFi Module:  WL_REG_ON is tied to MIO[9] */          

                wlreg_on: wlreg-on {

                                compatible = "regulator-fixed";

                                regulator-name = "wlreg_on";

                                enable-active-high;

                                gpio = <&gpio0 9 0>; 

                                regulator-min-microvolt = <3300000>;

                                regulator-max-microvolt = <3300000>;

                                startup-delay-us = <100>;           

                };

 

};

/* SD Interface for Wi-Fi Module */

&sdhci1 {

                status = "okay";

                bus-width= <4>;

                xlnx,has-cd = <0x0>;

                xlnx,has-power = <0x0>;

                xlnx,has-wp = <0x0>;

                non-removeable;

                broken-cd;

                vmmc-supply = <&wlreg_on>;

 

                brcmf: brcmf@1 {

                                status = "okay";

                                reg = <1>;

                                compatible = "brcm,bcm43430-fmac";

                };

};

 

Wi-Fi and Bluetooth Firmware Binaries:

A custom recipe (minized-firmware) is placed in the meta-user/recipes-bsp directory of the Petalinux project.  This recipe includes firmware binaries for the Wi-Fi and Bluetooth radios.  The main Wi-Fi firmware binary, “brcmfmac43430-sdio.bin”, was sourced from the “linux-firmware” Yocto recipe and is compatible with this release of the Linux kernel.  The other files were sourced directly from Murata and are specific to the 1DX module.  The recipe copies these files to the target root filesystem.

 

Patches:

BlueZ, the open source Bluetooth stack used by Linux, requires a patch to be applied.  This is included under meta-user/recipes-connectivity/bluez5.

Run-Time Packages and Utilities

 

There are several software packages installed to the target root filesystem by Petalinux necessary to use Wi-Fi and Bluetooth.  Most of these are specified in the file meta-user/recipes-core/images/petalinux-user-image.bbappend.  Please refer to this file in the included BSP.

In addition to the software packages above, the entire Yocto build must have several features enabled.  These are specified in the file meta-user/conf/layer.conf.

Pulseaudio:  This is an audio server used to create audio sources and sinks for Linux user-space applications.  We’ll use this to create a bridge to the Bluetooth stack (BlueZ).  Look under meta-user/recipes-multimedia.

Miscellaneous Files:  A few small modifications to the target root filesystem are applied in the recipes “minized-misc” and “custom”, both found under “recipes-bsp”.

 

Run-Time for Wi-Fi:

When the ZedBoard boots, you should see the orange Wi-Fi LED turn on the Pmod and evidence of the Wi-Fi driver loading:

brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: May 27 2016 00:13:38 version 7.45.41.26 (r640327) FWID 01-df77e4a7

brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code (0x30 0x30)

 

Edit /etc/wpa_supplicant.conf to match that of your local Wi-Fi AP:

 

ctrl_interface=/var/run/wpa_supplicant

ctrl_interface_group=0

update_config=1

 

network={

        key_mgmt=WPA-PSK

        ssid="MySsidName"

        psk="MyPassword"

}

 

Launch wpa_supplicant with the following command:

wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf -B

Use DHCP to get an IP address :

udhcpc -i wlan0

You should now be on the network.  Note:  a script is included (/usr/local/bin/wifi.sh) that can be run from the command prompt.  It will automatically copy wpa_supplicant.conf from the SD card.

 

Run-Time for Bluetooth:

Three scripts (ble.sh, bt.sh and speaker.sh) are included in /usr/local/bin.  To stream audio to a Bluetooth speaker, run the “speaker.sh” script.  You should see the following output:

root@avnet-digilent-zedboard-2017_3:~# speaker.sh

# To turn on BT_REG_ON, which is on EMIO GPIO #0

echo 939 > /sys/class/gpio/export

echo out > /sys/class/gpio/gpio939/direction

echo 1 > /sys/class/gpio/gpio939/value

# Set uart0 = 16550 UART in PL = ttyS2 baudrate:

stty -F /dev/ttyS0 115200

stty -F /dev/ttyS0 crtscts

# Initialize the device (you should really pick an unique MAC):

hciattach /dev/ttyS0 -t 10 bcm43xx 3000000 flow nosleep $BD_ADDR

bcm43xx_init

Set Controller UART speed to 3000000 bit/s

Flash firmware /etc/firmware/BCM43430A1.1DX.hcd

Set BDADDR UART: a4:08:ea:e1:c9:6f

Set Controller UART speed to 3000000 bit/s

Device setup complete

 

#Configure the right BT device:

hciconfig hci0 up

pulseaudio --system -D

W: [pulseaudio] main.c: Running in system mode, but --disallow-exit not set.

W: [pulseaudio] main.c: Running in system mode, but --disallow-module-loading not set.

N: [pulseaudio] main.c: Running in system mode, forcibly disabling SHM mode.

N: [pulseaudio] main.c: Running in system mode, forcibly disabling exit idle time.

 

bluetoothctl

[NEW] Controller A4:08:EA:E1:C9:6F BlueZ 5.41 [default]

[bluetooth]#

 

Place your Bluetooth speaker into pairing/discovery mode.  Then, type “scan on”:

[bluetooth]# scan on

Discovery started

[CHG] Controller A4:08:EA:E1:C9:6F Discovering: yes

[NEW] Device 00:1D:DF:C7:63:BA JBL Flip

[bluetooth]#

 

Note the Bluetooth address of the “JBL Flip” speaker seen above.  Type “scan off”, then “pair XX:XX:XX:XX:XX:XX” to match that of your speaker.

 

[bluetooth]# pair 00:1D:DF:C7:63:BA

Attempting to pair with 00:1D:DF:C7:63:BA

[CHG] Device 00:1D:DF:C7:63:BA Connected: yes

[CHG] Device 00:1D:DF:C7:63:BA UUIDs: 00001108-0000-1000-8000-00805f9b34fb

[CHG] Device 00:1D:DF:C7:63:BA UUIDs: 0000110b-0000-1000-8000-00805f9b34fb

[CHG] Device 00:1D:DF:C7:63:BA UUIDs: 0000111e-0000-1000-8000-00805f9b34fb

[CHG] Device 00:1D:DF:C7:63:BA Paired: yes

Pairing successful

Now, type “connect xx:xx:xx:xx:xx:xx”:

[bluetooth]# connect 00:1D:DF:C7:63:BA

Attempting to connect to 00:1D:DF:C7:63:BA

[CHG] Device 00:1D:DF:C7:63:BA Connected: yes

Connection successful

 

You may now type “quit” to exit bluetoothctl.

 

Finally, to play an .MP3 file on your SD card, type “mpg123 /mnt/filename.mp3”.  You should hear music play from the speaker.

 

Important Note regarding Software Licensing

This BSP includes OpenEmbedded recipes that aren't covered by standard GPL software licenses.  For example, MPEG Audio libraries are covered by a proprietary/commercial license.  These recipes are specified in the file meta-user/recipes-core/images/petalinux-user-image.bbappend:

gstreamer1.0-plugins-ugly

mpg123

In order to use these licenses in the, the following line was added to the file meta-user/conf/layer.conf:

LICENSE_FLAGS_WHITELIST_append = " commercial"

  • Sign in to reply
  • Cancel
  • aynilian
    0 aynilian over 7 years ago
    Hi Andrewk,
     
    I think I need your help on the 1DX Wifi PMOD module from Murata. There is a discrepancy on connecting the Pmod J1 to (JE or JD)?? on the Zedboard.
     
    I just looked at the schematic and the board and the connection diagrams from Zedboard reference design/tutorial website:
     
    http://zedboard.org/support/design/1521/11
     
    Note you need to login to the :

    PetaLinux Board Support Packages w/ Murata Type 1DX Pmod Support

     
     
    1. According to the Pmod 1DX Example Zedboard 17106.pdf see attached, the Murata Wifi Pmod 1DX J1 is connected to JD on the Zedboard and J2 is connected to JC on the Zedboard. These connections are EMIO or GPIOs.
     
    2. According to the Schematic, Murata Wifi Pmod 1DX J1 is Bluetooth, but the label on the board states the opposite (Label states WiFi for J1)
     
    3. According to the Schematic, Murata Wifi Pmod 1DX J2 is Wifi, but the label on the board states the opposite (Label states Bluetooth for J2)
     
    4. I am under the impression from looking at the MiniZed design and your write-up from the Zedboard forums that the J1 connector which should be WiFi needs to be connected to MIO10-MIO15 which is the second SD port for the Zynq FPGA. This is not what is going on in according to  Pmod 1DX Example Zedboard 17106.pdf user guide.
     
    Thanks,
    Aynilian
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • aynilian
    0 aynilian over 7 years ago

    Hi Andrewk,

     

    I think I need your help on the 1DX Wifi PMOD module from Murata. There is a discrepancy on connecting the Pmod J1 to (JE or JD)?? on the Zedboard.

     

    I just looked at the schematic and the board and the connection diagrams from Zedboard reference design/tutorial website:

     

    http://zedboard.org/support/design/1521/11

     

    Note you need to login to the :

    PetaLinux Board Support Packages w/ Murata Type 1DX Pmod Support

     

     

    1. According to the Pmod 1DX Example Zedboard 17106.pdf see attached, the Murata Wifi Pmod 1DX J1 is connected to JD on the Zedboard and J2 is connected to JC on the Zedboard. These connections are EMIO or GPIOs.

     

    2. According to the Schematic, Murata Wifi Pmod 1DX J1 is Bluetooth, but the label on the board states the opposite (Label states WiFi for J1)

     

    3. According to the Schematic, Murata Wifi Pmod 1DX J2 is Wifi, but the label on the board states the opposite (Label states Bluetooth for J2)

     

    4. I am under the impression from looking at the MiniZed design and your write-up from the Zedboard forums that the J1 connector which should be WiFi needs to be connected to MIO10-MIO15 which is the second SD port for the Zynq FPGA. This is not what is going on in according to  Pmod 1DX Example Zedboard 17106.pdf user guide.

     

    Thanks,

    Aynilian

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 7 years ago in reply to aynilian

    Hi Aynilian,

    The instructions I posted above are an update to the reference design uploaded to the 1DX Pmod product page. 

    There are two main functional updates since then:

     

    1) By using JE/JD instead of JD/JC, we're able to route the Pmod's Wi-Fi (SDIO) connection over MIO pins rather than EMIO/PL pins.  This means we're able to run the SDIO interface at the maximum possible speed supported by the Zynq-7000 (50 MHz).  When SDIO is routed via EMIO/PL, the speed is limited to 25 MHz.  Although 25 MHz is generally sufficient to support maximum possible throughput offered by the 1DX, running it at the higher speed eliminates any possible bottlenecks.  It also eliminates the need to modify the PL and to create XDC constraints for these pins.

     

    2) The initial release was created and developed using an older version of Petalinux (2016.4) which ran Linux kernel 4.6.  At the time, Murata recommended we support a kernel driver from Cypress/Broadcom called BCMDHD.  This driver isn't included with the main line Linux kernel and it's built as an out-of-tree kernel module via its own bitbake recipe in the Yocto/Petalinux 2016.4 build environment.  When Petalinux 2017.x was released and the kernel was updated to 4.9, BCMDHD was no longer compatible.  We received notification from Cypress and Murata that they made the decision to move away from supporting BCMDHD moving forward, thus we decided to switch to using the Broadcom FMAC driver that comes in the main line kernel.

     

    Kernel driver support for the Murata 1DX (and other similar modules based on Cypress/Broadcom chipsets) is likely to stay in flux, so I recommend keeping an eye on this thread for future updates.  I'm currently working on an update as we speak that will update the driver to Cypress' latest patches, including one that will fix the recent WPA2 "Krack" security issue.

     

    In the meantime, I'll work with our internal team to update the 1DX-Pmod documentation.

     

    Lastly, consider visiting the Cypress community forums and voting for ZYNQ!

    https://community.cypress.com/polls/1042

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • aynilian
    0 aynilian over 7 years ago in reply to Former Member

    Hi Andrewk,

    I downloaded the zip file for the reference website:

    First I went here:

    http://zedboard.org/support/design/1521/11

    Then, I followed the link under the description:

     

       Downloads

     
       (Requires Login)
     
     
      
       
         PetaLinux Board Support Packages w/ Murata Type 1DX Pmod Support 
       

    The login takes me here:

      
     

    https://www.avnet.com/shop/ProductDisplay?countryId=us&deflangId=-1&storeId=715839035&catalogId=10001&langId=-1&productId=3074457345632926609

    I downloaded the reference design .zip file and looked in the pdf files, I don't see the updated instructions you are referring to. I think I'm missing some instruction that you are privy to.

    Thanks,

    Aynilian.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • aynilian
    0 aynilian over 7 years ago

    Hi Andrewk

     
     
    1. Is the Vivado project under "zed_bluephi Rev D" named zed_bluephi.xpr ?
     
    2. If I open this project "zed_bluephi.xpr"  in Vivado 2017.3, should I Synthesized and Place and  export the .HDF to SDK and make an FSBL elf file. and use the HDF and FSBL files to create a new Petalinux project, assuming I have the Petalinux 2017.3 build and  the projects is based off the  ZedBoard 2017.3 BSP ?
     
    3. If steps 1 and 2 are true, then I should follow his instructions on how to configure the a:Kernel, b: modify the device-tree, c:copy the meta-user/recopies-bsp to the Petalinux project ?
     
     
     
    Thanks,
    Aynilian
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 7 years ago in reply to aynilian

    Aynilian,

     

    Are you using the correct BSP?  Be certain you're using the 2017.3 BSP; it's the first link at the top of this thread.  The hardware design contained within it isn't called zed_bluephi; I think that's the older 2016.4-based project.

     

    In any event, the 2017.3 BSP requires zero development.  You can build it straight out of the box using petalinux-build followed by petalinux-package --boot --fpga --u-boot to create BOOT.BIN.

     

    The write-up in my post merely describes the work that went in to creating the BSP.  It's merely provided as a reference to help explain the steps necessary to add wireless connectivity with a Murata 1DX radio module to a Zynq-7000 device running Petalinux.

     

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • aynilian
    0 aynilian over 7 years ago in reply to Former Member

    Hi Andrew,

     

    Thanks for the response. I have been trying to upgrade my petalinux by installing the "petalinux-v2017.3-final-installer.run" on my Ubuntu 16.04 machine. I also downloaded the 2017.3 Zedboard BSP. 

    When I go through the "petalinux-v2017.3-final-installer.run" installation, I had bunch of missing packages which I was able to get by "apt-get update" and "apt-get install -y <missing_package_names>. I was able to get most of them except "xvfb-run" and "textinfo". Did you run into the same issue as you upgraded your Petalinux to 2017.3 and how did you solve it?

    Thanks,

    Aynilian.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • aynilian
    0 aynilian over 7 years ago in reply to aynilian

    sudo apt-get install xvfb    does the trick of installing petalinux-v2017.3-final-installer.run"

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • aynilian
    0 aynilian over 7 years ago

     petalinux-create -t project --name <my_zed_proj_name> --source /opt/zed_bsp/zedboard-1DXPmod-2017.3.bsp then cd to: <my_zed_proj_name> and run petalinux-build. This fails with errors:

     

    armen@armen-HP-Laptop-17-bs0xx:~/zedboard_1DXPmod_2017$ petalinux-build 
    [INFO] building project
    [INFO] generating Kconfig for project
                                                                                    
    [INFO] oldconfig project
    [INFO] sourcing bitbake
    [INFO] generating plnxtool conf
    [INFO] generating meta-plnx-generated layer
    ~/zedboard_1DXPmod_2017/build/misc/plnx-generated ~/zedboard_1DXPmod_2017
    ~/zedboard_1DXPmod_2017
    [INFO] generating machine configuration
    [INFO] generating bbappends for project . This may take time ! 
    ~/zedboard_1DXPmod_2017/build/misc/plnx-generated ~/zedboard_1DXPmod_2017
    ~/zedboard_1DXPmod_2017
    [INFO] generating u-boot configuration files
                                                                                    
    [INFO] generating kernel configuration files
    [INFO] generating kconfig for Rootfs
    Generate rootfs kconfig
    [INFO] oldconfig rootfs
    [INFO] generating petalinux-user-image.bb
    INFO: bitbake petalinux-user-image
    Loading cache: 100% |############################################| Time: 0:00:00
    Loaded 3266 entries from dependency cache.
    Parsing recipes: 100% |##########################################| Time: 0:00:02
    Parsing of 2472 .bb files complete (2436 cached, 36 parsed). 3267 targets, 210 skipped, 0 masked, 0 errors.
    NOTE: Resolving any missing task queue dependencies
    Initialising tasks: 100% |#######################################| Time: 0:00:46
    Checking sstate mirror object availability: 100% |###############| Time: 0:02:00
    NOTE: Executing SetScene Tasks
    NOTE: Executing RunQueue Tasks

    ERROR: fsbl-2017.3+gitAUTOINC+3c9f0cfde9-r0 do_configure: Function failed: do_configure (log file is located at /home/armen/zedboard_1DXPmod_2017/build/tmp/work/plnx_arm-xilinx-linux-gnueabi/fsbl/2017.3+gitAUTOINC+3c9f0cfde9-r0/temp/log.do_configure.5402)
    ERROR: Logfile of failure stored in: /home/armen/zedboard_1DXPmod_2017/build/tmp/work/plnx_arm-xilinx-linux-gnueabi/fsbl/2017.3+gitAUTOINC+3c9f0cfde9-r0/temp/log.do_configure.5402
    Log data follows:
    | DEBUG: Executing python function sysroot_cleansstate
    | DEBUG: Python function sysroot_cleansstate finished
    | DEBUG: Executing shell function do_configure
    | MISC_ARG is  -yamlconf /home/armen/zedboard_1DXPmod_2017/build/tmp/work/plnx_arm-xilinx-linux-gnueabi/fsbl/2017.3+gitAUTOINC+3c9f0cfde9-r0/fsbl.yaml
    | APP_ARG is  -app "Zynq FSBL"
    | cmd is: xsct /home/armen/zedboard_1DXPmod_2017/build/tmp/work/plnx_arm-xilinx-linux-gnueabi/fsbl/2017.3+gitAUTOINC+3c9f0cfde9-r0/app.tcl -ws /home/armen/zedboard_1DXPmod_2017/build/../components/plnx_workspace/fsbl -pname fsbl -rp /opt/Petalinux_2017_3/tools/hsm/data/embeddedsw -processor ps7_cortexa9_0 -hdf /home/armen/zedboard_1DXPmod_2017/build/tmp/deploy/images/plnx_arm/Xilinx-plnx_arm.hdf -arch 32  -app "Zynq FSBL"  -yamlconf /home/armen/zedboard_1DXPmod_2017/build/tmp/work/plnx_arm-xilinx-linux-gnueabi/fsbl/2017.3+gitAUTOINC+3c9f0cfde9-r0/fsbl.yaml
    | Starting xsdk. This could take few seconds... Picked up _JAVA_OPTIONS: -Duser.home=/home/armen/zedboard_1DXPmod_2017/build/tmp/xsctenv
    | Eclipse:
    | An error has occurred. See the log file
    | /home/armen/zedboard_1DXPmod_2017/components/plnx_workspace/fsbl/.metadata/.log.
    | XSCTHELPER INFO: Empty WorkSpace
    | Starting xsdk. This could take few seconds... Picked up _JAVA_OPTIONS: -Duser.home=/home/armen/zedboard_1DXPmod_2017/build/tmp/xsctenv
    | Eclipse:
    | An error has occurred. See the log file
    | /home/armen/zedboard_1DXPmod_2017/components/plnx_workspace/fsbl/.metadata/.log.
    | timeout while establishing a connection with SDK
    |     while executing
    | "error "timeout while establishing a connection with SDK""
    |     (procedure "getsdkchan" line 111)
    |     invoked from within
    | "getsdkchan"
    |     (procedure "::sdk::set_user_repo_path_sdk" line 16)
    |     invoked from within
    | "::sdk::set_user_repo_path_sdk $params(set)"
    |     (procedure "repo" line 27)
    |     invoked from within
    | "repo -set $path"
    |     invoked from within
    | "if { $params(ws) ne "" } {
    |     #Local Work Space available
    |     setws $params(ws)
    |     if { [catch {importprojects $params(ws)} result] } {
    |         puts "XSCTHELPER IN..."
    |     (file "/home/armen/zedboard_1DXPmod_2017/build/tmp/work/plnx_arm-xilinx-linux-gnueabi/fsbl/2017.3+gitAUTOINC+3c9f0cfde9-r0/app.tcl" line 120)
    | WARNING: exit code 1 from a shell command.
    | ERROR: Function failed: do_configure (log file is located at /home/armen/zedboard_1DXPmod_2017/build/tmp/work/plnx_arm-xilinx-linux-gnueabi/fsbl/2017.3+gitAUTOINC+3c9f0cfde9-r0/temp/log.do_configure.5402)
    ERROR: Task (/opt/Petalinux_2017_3/components/yocto/source/arm/layers/meta-xilinx-tools/recipes-bsp/fsbl/fsbl_git.bb:do_configure) failed with exit code '1'
    NOTE: Tasks Summary: Attempted 3999 tasks of which 3077 didn't need to be rerun and 1 failed.

    Summary: 1 task failed:
      /opt/Petalinux_2017_3/components/yocto/source/arm/layers/meta-xilinx-tools/recipes-bsp/fsbl/fsbl_git.bb:do_configure
    Summary: There was 1 ERROR message shown, returning a non-zero exit code.
    ERROR: Failed to build project
    webtalk failed:PetaLinux statistics:extra lines detected:notsent_nofile!
    webtalk failed:Failed to get PetaLinux usage statistics!

    armen@armen-HP-Laptop-17-bs0xx:~/zedboard_1DXPmod_2017$

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • aynilian
    0 aynilian over 7 years ago in reply to aynilian
       
      OK Succeeded in compiling and running the Wifi 1DX Module. 
       
      I had to:
      chsh -s /bin/bash
       
      sudo rm /bin/sh
      sudo ln -s /bin/bash /bin/sh
     
    re-ran the petalinux-build
     
    other then the webtalk failure, it was compiled and created image files.
     
    copied the BOOT.bin and image.ub and wpa_supplicant.conf and did the SSID modification, the Wifi Module works on JE and JD.
     
    Thanks,
    Aynilian
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Reject Answer
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube