element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Benefits of Membership
    • Achievement Levels
    • Members Area
    • Personal Blogs
    • Feedback and Support
    • What's New on element14
  • Learn
    Learn
    • Learning Center
    • eBooks
    • STEM Academy
    • Webinars, Training and Events
    • More
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • More
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • More
  • Products
    Products
    • Arduino
    • Dev Tools
    • Manufacturers
    • Raspberry Pi
    • RoadTests & Reviews
    • Avnet Boards Community
    • More
  • 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
Low Power IoT Design Challenge
  • Challenges & Projects
  • Design Challenges
  • Low Power IoT Design Challenge
  • More
  • Cancel
Low Power IoT Design Challenge
Blog Low Power IoT Design Challenge - Getting Started
  • Blog
  • Forum
  • Documents
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Blog Post Actions
  • Subscribe by email
  • More
  • Cancel
  • Share
  • Subscribe by email
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: ralphjy
  • Date Created: 7 Sep 2021 3:17 AM Date Created
  • Views 289 views
  • Likes 11 likes
  • Comments 7 comments
  • infineon
  • low_power_iot
  • cy8ckit-028-epd
  • cy8ckit-psoc62s2-43012
  • cypress modus toolbox 2.3
Related
Recommended

Low Power IoT Design Challenge - Getting Started

ralphjy
ralphjy
7 Sep 2021

I just received my Challenge Kit (PSoCTm 6S2 + AIROCTm Wi-Fi/Bluetooth Pioneer Kit) via UPS yesterday (9/2) - thanks danzima .  I commented to my wife that the box seemed a bit heavy for a small dev-board.  I was pleasantly surprised to find extra goodies that Infineon had provided .  Thanks Infineon for the lab notebook, pen and Hydro Flask insulated bottle.

 

I've decided to create this intro post "on the fly", so I probably won't publish it for a few days.  I'd like to be able to get the toolchain installed and a few examples working first.

 

Toolchain Installation

Application development for the PSoC 62S2 kit is supported currently by the ModusToolbox and Mbed OS tool environments.  This challenge requires that we use the ModusToobox, so I'll start by downloading the latest available version (2.3 plus 2.31 patch).  The Windows Installer made the install easy, but took quite a few minutes and installed about 3GB of files.

 

ModusToolbox runs with either a graphical user interface (GUI) or a command-line interface (CLI).  To get started I am going to use the Eclipse-based IDE (GUI).

 

 

mtw - Eclipse IDE for ModusToolbox

The IDE has a "Quick Panel" that provides easy access to frequently used tools to create, build and run application programs.

 

The Project Creator tool is invoked by selecting "New Application" in the Quick Panel.  Project Creator uses a Board Support Package (BSP) to generate all the necessary configuration files for the IDE.  It makes it extremely easy to switch between different boards for different projects.  In this case I selected the CY8CKIT-062S2-43012.

 

Once the BSP is selected, you have access to an Application Directory that contains sample applications that are available for that board configuration.  Selecting a sample application will create a project with all the required files for that project (source code, makefile, dependent libraries, etc).  If you build an application from scratch, there is a Library Manager that will allow you to add required libraries.  As usual, to test the installation and the tool pipeline, a good place to start is the "Hello World" project.

 

Hello World is the standard "blink the LED" demo.  In this case you can pause the blinking over the serial link.  Here is a quick demo with the board superimposed on the putty serial window, so you can see the serial response and the LED reaction..

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

 

 

E-Ink Display Shield

I'll get into the description of my project in the next post, but one item that I definitely wanted to include was a display.  There are two Arduino format display shields available for this board.  The CY8CKIT-028-TFT board has a 2.4" Color TFT 320x240 display.  The CY8CKIT-028-EPD E-INK board has a 2.7" Monochrome E-Paper 264x176 display.  Both shields also have single PDM microphones and a motion sensor.  Since this is a "low power" challenge, I opted for the E-INK shield.

 

Modus Toolbox has an emWin E-Ink FreeRTOS application example that I used to check out the board.

 

Here is a short video of the emWin graphics demo.

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

 

 

And the requisite hack to start off the challenge adventure .

 

 

Looking forward to seeing what everyone implements!

Anonymous

Top Comments

  • javagoza
    javagoza 8 months ago +4

    I'm so envious, Ralph, ha ha  . It seems to be a very interesting board. Any clues about what your project is about?

  • maxpowerr
    maxpowerr 8 months ago +3

    Good start. I will root for your project.

  • ralphjy
    ralphjy 8 months ago in reply to javagoza +3

    This summer I've been focused on trying tinyML with different development hardware and software. I hope to use ModusToolbox Machine Learning with audio and vision processing.  There appears to only…

  • ralphjy
    ralphjy 8 months ago in reply to vlasov01

    vlasov01 thanks for the link.  It probably makes sense to use a lower resolution camera and I don't need a high frame rate.  I think I'll try an OV7670 VGA camera (0.3MP).  The Arduino BLE Sense example uses a similar OV7675 (sensor is somewhat smaller but resolution is the same).  I chose the OV7670 because I can get one this week from Amazon .   I should be able to leverage the Edge Impulse example.  The interface is also simpler than my 2MP Arducam (still uses I2C for configuration, but parallel data rather than SPI).  I need to verify I have enough pins available when using the EPD shield.

    • Cancel
    • Up +2 Down
    • Reply
    • More
    • Cancel
  • vlasov01
    vlasov01 8 months ago in reply to ralphjy

    ralphjy it may be a bit tricky to deal with images due memory, processing power and  energy consumption. But it depends on several parameters like image size, number of colors, expected processing time per frame. They have pretty good documentation on image processing.

    The PSoC 62S2 kit comes with 150-MHz ArmRegistered CortexRegistered-M4 and 100-MHz Arm Cortex-M0+ cores, 2MB of Flash, 1MB of SRAM.

    They support Arduino BLE Sense for image processing. And it has FPU, but much less memory compare to the PSoC 62S2. And it clock slower too.

    Edge Impulse has a very active community. I suggest to post questions on their forum.

    • Cancel
    • Up +2 Down
    • Reply
    • More
    • Cancel
  • ralphjy
    ralphjy 8 months ago in reply to vlasov01

    Thanks vlasov01 , I've seen that project.  Hopefully, I can implement something similar using MTB ML.  I think I'll try the gesture recognition example first just for fun and then try keyword spotting.

     

    It appears that all of the project files are on github, so I'll also verify that it will run on my setup before trying model generation with MTB ML.

     

    I haven't found any vision examples.  Have you seen any?  Not sure what camera I would use.  I have an Arducam 2MP with a SPI interface.

    • Cancel
    • Up +3 Down
    • Reply
    • More
    • Cancel
  • vlasov01
    vlasov01 8 months ago in reply to ralphjy

    Hi ralphjy

    Someone was able to deploy an Edge Impulse voice model to PSoC 62 https://www.electromaker.io/project/view/voice-recognition-at-the-edge .

    • Cancel
    • Up +3 Down
    • Reply
    • More
    • Cancel
  • ralphjy
    ralphjy 8 months ago in reply to javagoza

    This summer I've been focused on trying tinyML with different development hardware and software. I hope to use ModusToolbox Machine Learning with audio and vision processing.  There appears to only be one end-to-end MTB ML example that is deployed to hardware and that's using the motion sensor.  My plan is to use the PDM microphone on the EPD shield and also a camera (yet to be determined) for detection and recognition.  I always stub my toe on deploying to hardware , so we'll have to see if I need to change plans.  That's where it's nice to have services like Edge Impulse and SensiML where you can generally find a lot of examples for supported hardware.

    • Cancel
    • Up +3 Down
    • Reply
    • More
    • Cancel
>
Element14

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 © 2022 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

  • Facebook
  • Twitter
  • linkedin
  • YouTube