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
Path to Programmable
  • Challenges & Projects
  • Design Challenges
  • Path to Programmable
  • More
  • Cancel
Path to Programmable
Blog Path to Programmable: Final Projects and Graduation Awards
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: rscasny
  • Date Created: 18 Feb 2019 5:27 PM Date Created
  • Views 3705 views
  • Likes 20 likes
  • Comments 17 comments
Related
Recommended

Path to Programmable: Final Projects and Graduation Awards

rscasny
rscasny
18 Feb 2019

In 2018, we had our first Path to Programmable class. I described how the class was conceived by the element14 team, and why we are committed to providing element14 members training on programmable logic devices in a previous blog, Final Words and Future Opportunities on the Path to Programmable: Summary, Projects, Conclusions and Thank Yous. Path to Programmable provide some of our member-engineers who had limited experience designing with programmable devices a training program. The trainees received a Development Board for MiniZed Single-core Zynq 7Z007S and we gave them access to the MiniZed Speedway Design training. Then we had them complete the training and labs while we monitored, read, and enjoyed their blogs.

 

Now we are ready to graduate our first class, with more classes to come. To graduate, a trainee had to complete all lessons and labs and create a project of their choice that included the MiniZed. I'll give you a brief of the projects below, but each trainee that accomplished these requirements will receive:

 

Designing with XilinxRegistered FPGAs: Using VivadoFLUKE 3000 FC -  Wireless Digital MultimeterPro's Kit Electronic Tool Kit
imageimageimage

 

So, without further adieu, here is a brief summary of the graduation projects:

 

image

A MiniZed WS2812 Controller

While this project could easily have been done with a microcontroller, and often is, avnrdf decided to build one with the Minized, using both its PS and PL. Here's how it works: "The WS2812 RGB LED uses a single wire serial protocol that infers '1's and '0's by varying the width of a pulse. The project moves the serial output generation & refresh to the PL. The idea is that software in the PL simply writes 'data' to an 'address' in the BRAM (which corresponds to the RGB data of a LED of a given index), and the logic in the PL independently iterates through all the data in the BRAM using the other port, refreshing the LEDs. the main parts are the application that runs in the PS, the AXI4-Lite interface, a custom AXI to BRAM interface, dual port BRAM, a custom BRAM to RGB interface and a RGB to WS2812 generator. I could have used memory mapped BRAM using the Xilinx AXI-BRAM IP, but decided to build a custom interface that uses registers."

 

Timer Interrupt Library

Designed by aspork42  and based in the FPGA fabric, "it generates an interrupt every "N" clock cycles; and I mapped it to the 48 MHz clock. This interrupt then feeds into the interrupt concatenator as interrupt #0. I used the IP Library to find new IP and import into my hardware design."

image

 

Continuing, "I then exported the hardware and made a new workspace & BSP in the SDK utility. I started with some base code in the SDK and got it working with my new hardware to run things. So I'm using both the PS + PL. I had to re-map the interrupt which was used in the base program to the one generated from Vivado."image

 

Video Gimbal Project with PMOD TDM114 Camera Module

This project started out as something interesting using the PMOD TDM114 camera module. To control the camera module, "I'm going to use a X-Y gimbal made from RC servos. I will run the servos from the MiniZed. To do this, I have modified the code from the IP training to run two RC servos instead (and addition to) the PL LEDs." (Designed by rsc)

 

Gamma Radiation Measurement with the Avnet MiniZed

This project was quite a surprise to me. But kk99  stated that "I have a really nice sensor module called GDK101 which measures gamma radiation in range up to 200 usV/h. This sensor has really simple communication interfaces: I2C or UART. There is also analog output which could be used for verifying the energy spectrum analysis of gamma photons." [His] plan [was] to use this module to measure gamma radiation and the energy spectrum analysis of gamma photons. The first step was to setup an I2C controller in PS of the MiniZed and communicate with sensor module. The second stop was to use the ADC sensor and create in PL a multichannel analyzer to see the spectrum. See the video below.

image

 

The Microphone Sub System

The microphones included on the Minized board are surface mount ST MP45DT02MP45DT02 MEMS (Micro-Electro-Mechanical Systems) connected directly to Zync - 7000 AP SoC on the MiniZed board. It can take the PDM (pulse density modulation) from the microphone and convert it to 16 bit PCM (pulse code modulation) in two's complement format at a decimated sampling rate suitable for audio. mconners found an example project that would help him. He already had a version of MATLAB, which was necessary to conduct this experiment. That, along with System Generator utility of the Vivado design suite allow him to model circuits in MATLAB, using Xilinx IP blocks, and then export that design out to Vivado to program the FPGA.image

 

 

 

 

Project - Minized as Web Server with Video Hosting on USB Pen drive

I built this project mainly out of my need to watch videos on multiple devices. I use it to see them on my laptop, tablet, mobile device, so I maintain a copy of videos on all these devices and believe me it is a hectic. So I had the Minized Board run a webserver using a Linux Image with Python Integration so that I can do server side programing using Python. The Python Server handles those Requests regarding Setting the Led Color and Interacting with Sensors, so all these can be done from our web browser Iself. For Implementing a Webserver on minized i needed to run an Application which handles TCP/IP and Application Layer in OSI model, moreover,  i need to connect to the Network through on board Murata 1DX WiFi module. (Designed by mu.udhay )

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

What's Next: Path To Programmable 2

I'd like to thank everyone who participated in the first Path to Programmable program. I'd also like to thank Xilinx and Avnet  for sponsoring the program. Finally, I'd like to thank our Web Designer Pauline Chan ( pchan ) for all the hard work in posting the program on element14.

 

We are already planning our next Path to Programmable program, open to all element14 members. The training is being developed right now for the Ultra96-V2  which will be the focus of Path 2. So, stay tuned. I will be making an announcement sometime in Spring 2019.

  • Sign in to reply

Top Comments

  • Fred27
    Fred27 over 6 years ago +8
    Some very nice projects there. Well done. Path to Programmable 2 sounds interesting but once again focuses on a very powerful programmable device. I wonder if a lot of members would also benefit from the…
  • DAB
    DAB over 6 years ago +6
    Another excellent element14 challenge. DAB
  • dougw
    dougw over 6 years ago +5
    Congratulations on making it through the course and thanks for blogging about it. Those are some very nice rewards. How many courses have you ever taken that came with such awards?
  • neuromodulator
    neuromodulator over 6 years ago in reply to nixiefairy

    Have there been any posts on possible dates for a v2.0 of the path to programmable?

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • nixiefairy
    nixiefairy over 6 years ago

    Learnt a lot through this course. Though I have covered most of this material earlier, it was a great refresher for me and I got to see new things that weren't covered in material which I knew.

     

    It was fun to read projects and blogs of various participants. Looking forward to the next series. A big thanks to rscasny and the team to put up this course.

    Eashan

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • aspork42
    aspork42 over 6 years ago

    LOVED being able to participate in the training. It was a great experience and I learned a ton along the way. It would be great for a future training to start with basics of what is an FPGA and what can and can't be done with them.

     

    dougw - You're so right about 'what training comes with a prize?' - The prizes certainly have a motivating effect; but as any design challenge participant knows, you certainly put some hours in to earn them.

     

    My original goal was to create a line follower which seemed to be a perfect application for the FPGA, but the learning curve got in the way. I'm still poking at the MiniZed and the community has been great in helping out when I get stuck. I knew next to nothing about FPGAs when I began, and was still able to complete the training. Creating the project was a big challenge and I spent a lot of time working on Plans A, B, C, and D before settling on plan E which was pretty far from the original goal.

     

    Big thanks again to Xilinx, Avnet, and biggest thanks of all to rscasny and the E14 team for putting this together!

    • Cancel
    • Vote Up +4 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • aspork42
    aspork42 over 6 years ago in reply to dubbie

    Dubbie - It would be hard for someone to have less experience than me with FPGA's. I have only uploaded to them before for work but never actually done the programming. And starting with an SoC which includes a regular ARM processor certainly made this have a steeper learning curve. But the training materials were written well enough to get through and still learn a lot.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • brycewilkins
    brycewilkins over 6 years ago

    I missed the first Path to Programmable, but I'm excited to hear there is a next version coming that will be open to all members image  And, wow, it will be based on Ultra96 !!!  Some serious kit for learning -- steep learning curves ahead!  But looking forward to it!

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • 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