Skip to content

Commit e848d41

Browse files
committed
docs/psoc6: Bring in doc changes related ddepcraft.
Signed-off-by: NikhitaR-IFX <nikhita.rajasekhar@infineon.com>
1 parent fb4bb45 commit e848d41

8 files changed

Lines changed: 82 additions & 1 deletion
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
.. _psoc6_mpy_deepcraft_integration:
2+
3+
MicroPython - DEEPCRAFT™ Integration
4+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
5+
6+
`DEEPCRAFT™ <https://www.infineon.com/cms/en/design-support/software/deepcraft-edge-ai-solutions/>`_ is Infineon's comprehensive new Edge AI software & tools offering designed to fastrack edge machine learning
7+
application development.
8+
9+
`DEEPCRAFT™ Studio`_ is a development platform for AI on edge devices. It provides unique modeling capabilities
10+
to make custom edge AI models for PSOC-based hardware. Its integration with MicroPython allows an easy end-to-end
11+
application development and deployment journey.
12+
13+
Follow along to build your first edge Machine Learning (ML) application with MicroPython and DEEPCRAFT™ Studio. 🚀
14+
15+
Overview
16+
=========
17+
This solution follows a standard edge ML application workflow, consisting of two primary phases: training and inferencing.
18+
The training phase is efficiently managed within DEEPCRAFT™ Studio.
19+
20+
The diagrams below provide a detailed overview of the workflows for both phases, highlighting the tools and steps involved,
21+
from data acquisition to model deployment.
22+
23+
.. image:: img/training_phase.png
24+
:width: 1000
25+
26+
During the training phase, the edge device executes a MicroPython script that streams raw sensor data to a host machine. A capture server running on the host
27+
receives this data and stores it as timestamped files. These files are then imported into DEEPCRAFT™ Studio, where they undergo labeling, preprocessing,
28+
and are used to train a machine learning model tailored to the specific application. With MicroPython integration, the trained model can be effortlessly converted
29+
into a runtime-loadable format and deployed to the device's filesystem. This streamlined workflow, which supports iterative tuning for optimal accuracy,
30+
greatly simplifies the model conversion and deployment process.
31+
32+
33+
.. image:: img/inferencing_phase.png
34+
:width: 1000
35+
36+
After achieving satisfactory accuracy, the model is ready for deployment in the final application. During this phase, a MicroPython script stored on the edge device's filesystem
37+
manages sensor data acquisition and feeds it to the dynamically loaded model. The pre-trained model processes the input data and generates class probabilities based on the learned patterns.
38+
These outputs can then be utilized to trigger actions through peripherals (e.g., LEDs, buzzers) or transmitted to external interfaces, such as a web dashboard, for visualization.
39+
40+
With this streamlined development workflow, let's proceed to build a complete edge ML application step by step.
41+
42+
Pre-requisites
43+
================
44+
45+
Ensure the following tools are installed on your system:
46+
47+
1. `DEEPCRAFT™ Studio`_
48+
2. `Capture Server cloned in your local <https://bitbucket.org/imagimob/captureserver/src/master/>`_
49+
50+
Supported Boards
51+
==================
52+
- `CY8CKIT-062S2-AI <https://www.infineon.com/cms/en/product/evaluation-boards/cy8ckit-062s2-ai/>`_
53+
54+
1. Data Acquisition
55+
======================
56+
57+
This part is covered in the `data acquisition repository <https://github.com/Infineon/deepcraft-micropython-data-acquisition>`_, which provides
58+
instructions and examples for data acquisition using MicroPython.
59+
60+
2. Model Deployment
61+
=====================
62+
63+
This part is covered in the `model converter repository <https://github.com/Infineon/deepcraft-micropython-converter>`_, which provides instructions
64+
on how to convert a DEEPCRAFT™ model into a MicroPython-compatible format and deploy it on the PSOC board.
65+
66+
Example Projects
67+
==================
68+
- `Edge AI-based baby cry detector with Home Assistant integration <https://www.hackster.io/Infineon_Team/ai-baby-cry-detector-with-home-assistant-integration-05576f>`_
69+
70+
.. _DEEPCRAFT™ Studio: https://softwaretools.infineon.com/tools/com.ifx.tb.tool.deepcraftstudio
1.28 MB
Loading
71 KB
Loading
24 KB
Loading
18.7 KB
Loading
17.8 KB
Loading
98.3 KB
Loading

docs/psoc6/quickref.rst

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,16 @@ working with this port it may be useful to get an overview of the microcontrolle
2121
installation.rst
2222
mpy-usage.rst
2323

24+
And if you are already familiar with MicroPython enablement for PSoC6 and want to try it's integrations
25+
in other application domains, check below:
26+
27+
.. toctree::
28+
:maxdepth: 1
29+
:includehidden:
30+
31+
integrations/deepcraft_integration.rst
32+
33+
2434
.. note::
2535

2636
The PSoC6™ port is now a mature port and is expected any MicroPython built-in
@@ -1006,4 +1016,5 @@ The NeoPixel driver can be used as follows (see the :mod:`neopixel` for more det
10061016
.. note::
10071017
- The timing parameter can be used in the `NeoPixel()` constructor with timing tuples supported by the `machine.bitstream()` module. The timing parameter is optional and by default set to 1 which is the default timing [400, 850, 800, 450] for WS2812B LEDs at 800kHz.
10081018
- Use timing = 0 for WS2812B LEDs at 400kHz ie, [800, 1700, 1600, 900].
1009-
- Use timing = [300, 900, 600, 600] for SK6812 LEDs.
1019+
- Use timing = [300, 900, 600, 600] for SK6812 LEDs.
1020+

0 commit comments

Comments
 (0)