From 3bc4cadbb8aa3a9c59098a58b4be8fd9f610d681 Mon Sep 17 00:00:00 2001 From: Aryan <nandaaryan823@gmail.com> Date: Mon, 27 Jan 2025 22:57:45 +0530 Subject: [PATCH 01/10] Moved GSoC2024 proposals to archieved folder Signed-off-by: Aryan <nandaaryan823@gmail.com> --- _static/images/PRU_Connections.png | Bin 59310 -> 0 bytes proposals/index.rst | 30 +++------------ proposals/{ => old/2024}/Assets/Figure1.png | Bin proposals/{ => old/2024}/Assets/Figure2.png | Bin proposals/{ => old/2024}/Assets/Figure3.png | Bin proposals/{ => old/2024}/Assets/Figure4.png | Bin proposals/{ => old/2024}/Assets/Figure5.png | Bin proposals/{ => old/2024}/Assets/Figure6.png | Bin .../old/2024/Assets}/PRU_diagram.png | Bin .../old/2024/Assets}/architecture-diagram.png | Bin proposals/{ => old/2024/Assets}/artifact.png | Bin .../old/2024/Assets}/logic-gates-fix.png | Bin .../old/2024/Assets}/perceptron.png | Bin .../2024}/RISC-V_CPU_core_in_FPGA_fabric.rst | 2 +- proposals/{ => old/2024}/alecdenny.rst | 2 +- .../workflow_image_processing.png | Bin .../2024}/assets_drone_cape/workflow_pwm.png | Bin .../commercial_detection_and_replacement.rst | 0 .../2024}/drone_cape_for_beagle-v-fire.rst | 0 proposals/{ => old/2024}/himanshuk.rst | 0 proposals/{ => old/2024}/ijc.rst | 0 .../images_support/BeaeglV-fire_gateware.png | Bin .../2024}/images_support/Device_tree.png | Bin proposals/old/2024/index.rst | 36 ++++++++++++++++++ proposals/{ => old/2024}/matt-davison.rst | 0 proposals/{ => old/2024}/mc.rst | 4 +- proposals/{ => old/2024}/melta101.rst | 0 .../{ => old/2024}/melta101_static/RPMSG.png | Bin .../{ => old/2024}/melta101_static/TI-SCI.png | Bin .../2024}/melta101_static/Test_OpenAMP.png | Bin .../2024}/melta101_static/systemarch.png | Bin proposals/{ => old/2024}/suraj-sonawane.rst | 0 .../2024}/upstream_zephyr_bbai64_r5.rst | 0 proposals/old/index.rst | 10 +++++ 34 files changed, 55 insertions(+), 29 deletions(-) delete mode 100644 _static/images/PRU_Connections.png rename proposals/{ => old/2024}/Assets/Figure1.png (100%) rename proposals/{ => old/2024}/Assets/Figure2.png (100%) rename proposals/{ => old/2024}/Assets/Figure3.png (100%) rename proposals/{ => old/2024}/Assets/Figure4.png (100%) rename proposals/{ => old/2024}/Assets/Figure5.png (100%) rename proposals/{ => old/2024}/Assets/Figure6.png (100%) rename {_static/images => proposals/old/2024/Assets}/PRU_diagram.png (100%) rename {_static/images => proposals/old/2024/Assets}/architecture-diagram.png (100%) rename proposals/{ => old/2024/Assets}/artifact.png (100%) rename {_static/images => proposals/old/2024/Assets}/logic-gates-fix.png (100%) rename {_static/images => proposals/old/2024/Assets}/perceptron.png (100%) rename proposals/{ => old/2024}/RISC-V_CPU_core_in_FPGA_fabric.rst (99%) rename proposals/{ => old/2024}/alecdenny.rst (99%) rename proposals/{ => old/2024}/assets_drone_cape/workflow_image_processing.png (100%) rename proposals/{ => old/2024}/assets_drone_cape/workflow_pwm.png (100%) rename proposals/{ => old/2024}/commercial_detection_and_replacement.rst (100%) rename proposals/{ => old/2024}/drone_cape_for_beagle-v-fire.rst (100%) rename proposals/{ => old/2024}/himanshuk.rst (100%) rename proposals/{ => old/2024}/ijc.rst (100%) rename proposals/{ => old/2024}/images_support/BeaeglV-fire_gateware.png (100%) rename proposals/{ => old/2024}/images_support/Device_tree.png (100%) create mode 100644 proposals/old/2024/index.rst rename proposals/{ => old/2024}/matt-davison.rst (100%) rename proposals/{ => old/2024}/mc.rst (99%) rename proposals/{ => old/2024}/melta101.rst (100%) rename proposals/{ => old/2024}/melta101_static/RPMSG.png (100%) rename proposals/{ => old/2024}/melta101_static/TI-SCI.png (100%) rename proposals/{ => old/2024}/melta101_static/Test_OpenAMP.png (100%) rename proposals/{ => old/2024}/melta101_static/systemarch.png (100%) rename proposals/{ => old/2024}/suraj-sonawane.rst (100%) rename proposals/{ => old/2024}/upstream_zephyr_bbai64_r5.rst (100%) create mode 100644 proposals/old/index.rst diff --git a/_static/images/PRU_Connections.png b/_static/images/PRU_Connections.png deleted file mode 100644 index df9079648fbfab2ea0955808af62a217fd87f21b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59310 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 diff --git a/proposals/index.rst b/proposals/index.rst index 59e49b5..efab4af 100644 --- a/proposals/index.rst +++ b/proposals/index.rst @@ -1,38 +1,18 @@ -.. _gsoc-proposals: - Proposals ######### .. tip:: - Checkout :ref:`gsoc-project-ideas` page to explore ideas and :ref:`gsoc-proposal-guide` page to write your own proposal. + Checkout :ref:`gsoc-project-ideas` page to explore ideas and :ref:`old-gsoc-proposals` page to write your own proposal. You can also refer to :ref:`old-gsoc-proposals` to view old proposals submitted for GSoC. .. toctree:: :maxdepth: 1 - :caption: Accepted proposals - - - melta101 - - ijc - - commercial_detection_and_replacement - RISC-V_CPU_core_in_FPGA_fabric - -.. toctree:: - :maxdepth: 1 - :caption: Rejected Proposals + :caption: Proposal template - suraj-sonawane - upstream_zephyr_bbai64_r5 - alecdenny - matt-davison - mc - himanshuk - drone_cape_for_beagle-v-fire + template .. toctree:: :maxdepth: 1 - :caption: Proposal template + :caption: Old Proposals - template \ No newline at end of file + old/index \ No newline at end of file diff --git a/proposals/Assets/Figure1.png b/proposals/old/2024/Assets/Figure1.png similarity index 100% rename from proposals/Assets/Figure1.png rename to proposals/old/2024/Assets/Figure1.png diff --git a/proposals/Assets/Figure2.png b/proposals/old/2024/Assets/Figure2.png similarity index 100% rename from proposals/Assets/Figure2.png rename to proposals/old/2024/Assets/Figure2.png diff --git a/proposals/Assets/Figure3.png b/proposals/old/2024/Assets/Figure3.png similarity index 100% rename from proposals/Assets/Figure3.png rename to proposals/old/2024/Assets/Figure3.png diff --git a/proposals/Assets/Figure4.png b/proposals/old/2024/Assets/Figure4.png similarity index 100% rename from proposals/Assets/Figure4.png rename to proposals/old/2024/Assets/Figure4.png diff --git a/proposals/Assets/Figure5.png b/proposals/old/2024/Assets/Figure5.png similarity index 100% rename from proposals/Assets/Figure5.png rename to proposals/old/2024/Assets/Figure5.png diff --git a/proposals/Assets/Figure6.png b/proposals/old/2024/Assets/Figure6.png similarity index 100% rename from proposals/Assets/Figure6.png rename to proposals/old/2024/Assets/Figure6.png diff --git a/_static/images/PRU_diagram.png b/proposals/old/2024/Assets/PRU_diagram.png similarity index 100% rename from _static/images/PRU_diagram.png rename to proposals/old/2024/Assets/PRU_diagram.png diff --git a/_static/images/architecture-diagram.png b/proposals/old/2024/Assets/architecture-diagram.png similarity index 100% rename from _static/images/architecture-diagram.png rename to proposals/old/2024/Assets/architecture-diagram.png diff --git a/proposals/artifact.png b/proposals/old/2024/Assets/artifact.png similarity index 100% rename from proposals/artifact.png rename to proposals/old/2024/Assets/artifact.png diff --git a/_static/images/logic-gates-fix.png b/proposals/old/2024/Assets/logic-gates-fix.png similarity index 100% rename from _static/images/logic-gates-fix.png rename to proposals/old/2024/Assets/logic-gates-fix.png diff --git a/_static/images/perceptron.png b/proposals/old/2024/Assets/perceptron.png similarity index 100% rename from _static/images/perceptron.png rename to proposals/old/2024/Assets/perceptron.png diff --git a/proposals/RISC-V_CPU_core_in_FPGA_fabric.rst b/proposals/old/2024/RISC-V_CPU_core_in_FPGA_fabric.rst similarity index 99% rename from proposals/RISC-V_CPU_core_in_FPGA_fabric.rst rename to proposals/old/2024/RISC-V_CPU_core_in_FPGA_fabric.rst index fbd773b..7d31a75 100644 --- a/proposals/RISC-V_CPU_core_in_FPGA_fabric.rst +++ b/proposals/old/2024/RISC-V_CPU_core_in_FPGA_fabric.rst @@ -59,7 +59,7 @@ The main aim of this project is to deploy a soft core subsystem on BeagleV-Fire The programmable nature of the PRU, along with its access to pins, events, and all SoC resources, provides flexibility in implementing fast real-time responses, specialised data handling operations, custom peripheral interfaces, and in offloading tasks from the main processor cores of the system-on-chip (SoC). -.. image:: ../_static/images/PRU_diagram.png +.. image:: ./Assets/PRU_diagram.png Based on the requirements of the project, it is most efficient to use PicoRV (an open source RISC-V based processor) as a base and modify it to perform high speed I/O operations. The PicoRV possesses excellent compiler support and diverse instruction set but lacks I/O support and single-cycle execution for some instructions. diff --git a/proposals/alecdenny.rst b/proposals/old/2024/alecdenny.rst similarity index 99% rename from proposals/alecdenny.rst rename to proposals/old/2024/alecdenny.rst index 9080409..77fbb4d 100644 --- a/proposals/alecdenny.rst +++ b/proposals/old/2024/alecdenny.rst @@ -53,7 +53,7 @@ Output representation will be similar to `thermometer format <https://en.wikiped In order to feed the model enough data, vocal data will be analyzed and connected to its most similar timbral points in the sample using algorithms found in concatenative synthesis. This synthetic data can be used to condition the network for vocal inputs. Ideally the inclusion of this synthetic data will allow for vocal interaction from the user to navigate the granular synthesis engine. By synthetic data, I am not referring to synthesized vocal sounds, but rather vocal sounds that have been prepared in the format of MFCCs, and tied to their most similar grain in the target sample. Concatenative synthesis hosts a family of techniques by which individual grains of audio can be analyzed, compared and connected to each other based on similarity [2]. Training the model to replicate this process for inputs with features far outside those of the target sample could allow for an instrument that is better conditioned for any user input, but here I think focusing on vocal inputs would be most relevant. -.. image:: artifact.png +.. image:: ./Assets/artifact.png :width: 400 :alt: Alternative text diff --git a/proposals/assets_drone_cape/workflow_image_processing.png b/proposals/old/2024/assets_drone_cape/workflow_image_processing.png similarity index 100% rename from proposals/assets_drone_cape/workflow_image_processing.png rename to proposals/old/2024/assets_drone_cape/workflow_image_processing.png diff --git a/proposals/assets_drone_cape/workflow_pwm.png b/proposals/old/2024/assets_drone_cape/workflow_pwm.png similarity index 100% rename from proposals/assets_drone_cape/workflow_pwm.png rename to proposals/old/2024/assets_drone_cape/workflow_pwm.png diff --git a/proposals/commercial_detection_and_replacement.rst b/proposals/old/2024/commercial_detection_and_replacement.rst similarity index 100% rename from proposals/commercial_detection_and_replacement.rst rename to proposals/old/2024/commercial_detection_and_replacement.rst diff --git a/proposals/drone_cape_for_beagle-v-fire.rst b/proposals/old/2024/drone_cape_for_beagle-v-fire.rst similarity index 100% rename from proposals/drone_cape_for_beagle-v-fire.rst rename to proposals/old/2024/drone_cape_for_beagle-v-fire.rst diff --git a/proposals/himanshuk.rst b/proposals/old/2024/himanshuk.rst similarity index 100% rename from proposals/himanshuk.rst rename to proposals/old/2024/himanshuk.rst diff --git a/proposals/ijc.rst b/proposals/old/2024/ijc.rst similarity index 100% rename from proposals/ijc.rst rename to proposals/old/2024/ijc.rst diff --git a/proposals/images_support/BeaeglV-fire_gateware.png b/proposals/old/2024/images_support/BeaeglV-fire_gateware.png similarity index 100% rename from proposals/images_support/BeaeglV-fire_gateware.png rename to proposals/old/2024/images_support/BeaeglV-fire_gateware.png diff --git a/proposals/images_support/Device_tree.png b/proposals/old/2024/images_support/Device_tree.png similarity index 100% rename from proposals/images_support/Device_tree.png rename to proposals/old/2024/images_support/Device_tree.png diff --git a/proposals/old/2024/index.rst b/proposals/old/2024/index.rst new file mode 100644 index 0000000..dc1f8c2 --- /dev/null +++ b/proposals/old/2024/index.rst @@ -0,0 +1,36 @@ +.. _2024-gsoc-proposals: + +2024 Archived Proposals +######################## + +This directory contains archived proposals and related assets from 2024. + +.. toctree:: + :maxdepth: 1 + :caption: Accepted Proposals + + melta101 + ijc + commercial_detection_and_replacement + RISC-V_CPU_core_in_FPGA_fabric + +.. toctree:: + :maxdepth: 1 + :caption: Rejected Proposals + + suraj-sonawane + upstream_zephyr_bbai64_r5 + alecdenny + matt-davison + mc + himanshuk + drone_cape_for_beagle-v-fire + +.. toctree:: + :maxdepth: 1 + :caption: Additional Files + + Assets/ + assets_drone_cape/ + images_support/ + melta101_static/ diff --git a/proposals/matt-davison.rst b/proposals/old/2024/matt-davison.rst similarity index 100% rename from proposals/matt-davison.rst rename to proposals/old/2024/matt-davison.rst diff --git a/proposals/mc.rst b/proposals/old/2024/mc.rst similarity index 99% rename from proposals/mc.rst rename to proposals/old/2024/mc.rst index 1eda2c4..97bdef5 100644 --- a/proposals/mc.rst +++ b/proposals/old/2024/mc.rst @@ -70,12 +70,12 @@ A standard neural network uses a perceptron, which is a binary linear classifier The following image illustrates the steps of the perceptron. -.. image:: ../_static/images/perceptron.png +.. image:: ./Assets/perceptron.png :alt: An image of a perceptron describing each stage A logic gate is similar to a perceptron in that it also can be used as a binary linear classifier. With XOR, it takes on the implementation of a multi-layer perceptron, but the main concept within leveraging logic gates as perceptrons is that they both function as binary linear classifiers as demonstrated below: -.. image:: ../_static/images/logic-gates-fix.png +.. image:: ./Assets/logic-gates-fix.png :alt: An image of logic gates acting as linear classifiers A table of key differences between the network architectures follows: diff --git a/proposals/melta101.rst b/proposals/old/2024/melta101.rst similarity index 100% rename from proposals/melta101.rst rename to proposals/old/2024/melta101.rst diff --git a/proposals/melta101_static/RPMSG.png b/proposals/old/2024/melta101_static/RPMSG.png similarity index 100% rename from proposals/melta101_static/RPMSG.png rename to proposals/old/2024/melta101_static/RPMSG.png diff --git a/proposals/melta101_static/TI-SCI.png b/proposals/old/2024/melta101_static/TI-SCI.png similarity index 100% rename from proposals/melta101_static/TI-SCI.png rename to proposals/old/2024/melta101_static/TI-SCI.png diff --git a/proposals/melta101_static/Test_OpenAMP.png b/proposals/old/2024/melta101_static/Test_OpenAMP.png similarity index 100% rename from proposals/melta101_static/Test_OpenAMP.png rename to proposals/old/2024/melta101_static/Test_OpenAMP.png diff --git a/proposals/melta101_static/systemarch.png b/proposals/old/2024/melta101_static/systemarch.png similarity index 100% rename from proposals/melta101_static/systemarch.png rename to proposals/old/2024/melta101_static/systemarch.png diff --git a/proposals/suraj-sonawane.rst b/proposals/old/2024/suraj-sonawane.rst similarity index 100% rename from proposals/suraj-sonawane.rst rename to proposals/old/2024/suraj-sonawane.rst diff --git a/proposals/upstream_zephyr_bbai64_r5.rst b/proposals/old/2024/upstream_zephyr_bbai64_r5.rst similarity index 100% rename from proposals/upstream_zephyr_bbai64_r5.rst rename to proposals/old/2024/upstream_zephyr_bbai64_r5.rst diff --git a/proposals/old/index.rst b/proposals/old/index.rst new file mode 100644 index 0000000..af940ad --- /dev/null +++ b/proposals/old/index.rst @@ -0,0 +1,10 @@ +.. _old-gsoc-proposals: + +Old Proposals +################### + +.. toctree:: + :maxdepth: 1 + :caption: Years + + 2024/index -- GitLab From f75ab5e27d7b10c56e3294f41d5c4a5adfb1f02b Mon Sep 17 00:00:00 2001 From: Aryan <nandaaryan823@gmail.com> Date: Mon, 27 Jan 2025 22:58:59 +0530 Subject: [PATCH 02/10] Moved GSoC 2024 completed projects to past projects list 2024 Signed-off-by: Aryan <nandaaryan823@gmail.com> --- projects/2024.rst | 107 +++++++++++++++++++++++++++++++++++++++++++++ projects/index.rst | 10 ++++- 2 files changed, 115 insertions(+), 2 deletions(-) create mode 100644 projects/2024.rst diff --git a/projects/2024.rst b/projects/2024.rst new file mode 100644 index 0000000..c715094 --- /dev/null +++ b/projects/2024.rst @@ -0,0 +1,107 @@ +.. _gsoc-2024-projects: + +:far:`calendar-days` 2024 +########################## + + +Enhanced Media Experience with AI-Powered Commercial Detection and Replacement +******************************************************************************** + +.. youtube:: Kagg8JycOfo + :width: 100% + +| **Summary:** Leveraging the capabilities of BeagleBoard’s powerful processing units, the project will focus on creating a real-time, efficient solution that enhances media consumption experiences by seamlessly integrating custom audio streams during commercial breaks. + +- Develop a neural network model: Combine Convolutional Neural Networks (CNNs) and Recurrent Neural Networks (RNNs) to analyze video and audio data, accurately identifying commercial segments within video streams. +- Implement a real-time pipeline: Create a real-time pipeline for BeagleBoard that utilizes the trained model to detect commercials in real-time and replace them with alternative content or obfuscate them, alongside replacing the audio with predefined streams. +- Optimize for BeagleBoard: Ensure the entire system is optimized for real-time performance on BeagleBoard hardware, taking into account its unique computational capabilities and constraints. + + +**Contributor:** Aryan Nanda + +**Mentors:** `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_, `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, Kumar Abhishek + +.. grid:: 2 2 2 2 + + .. grid-item:: + + .. button-link:: https://summerofcode.withgoogle.com/archive/2024/projects/UOX7iDEU + :color: info + :shadow: + :expand: + + :fab:`google;pst-color-light` - GSoC Registry + + .. grid-item:: + + .. button-link:: https://gsoc.beagleboard.io/proposals/old/2024/commercial_detection_and_replacement.html + :color: primary + :shadow: + :expand: + + Proposal + + +Low-latency I/O RISC-V CPU core in FPGA fabric +************************************************ + +.. youtube:: ic0RRK6d3hg + :width: 100% + +| **Summary:** Implementation of PRU subsystem on BeagleV-Fire’s FPGA fabric, resulting in a real-time microcontroller system working alongside the main CPU, providing low-latency access to I/O. + +**Contributor:** Atharva Kashalkar + +**Mentors:** `Cyril Jean <https://forum.beagleboard.org/u/vauban>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_, Vedant Paranjape, Kumar Abhishek + +.. grid:: 2 2 2 2 + + .. grid-item:: + + .. button-link:: https://summerofcode.withgoogle.com/archive/2024/projects/KjUoFlg2 + :color: info + :shadow: + :expand: + + :fab:`google;pst-color-light` - GSoC Registry + + .. grid-item:: + + .. button-link:: https://gsoc.beagleboard.io/proposals/old/2024/RISC-V_CPU_core_in_FPGA_fabric.html + :color: primary + :shadow: + :expand: + + Proposal + +Differentiable Logic for Interactive Systems and Generative Music - Ian Clester +************************************************ + +.. youtube:: NvHxMCF8sAQ + :width: 100% + +| **Summary:** Developing an embedded machine learning system on BeagleBoard that leverages Differentiable Logic (DiffLogic) for real-time interactive music creation and environment sensing. The system will enable on-device learning, fine-tuning, and efficient processing for applications in new interfaces for musical expression. + +**Contributor:** Ian Clester + +**Mentors:** `Jack Armitage <https://forum.beagleboard.org/u/jarm/summary>`_, Chris Kiefer + +.. grid:: 2 2 2 2 + + .. grid-item:: + + .. button-link:: https://summerofcode.withgoogle.com/archive/2024/projects/FBk0MM8g + :color: info + :shadow: + :expand: + + :fab:`google;pst-color-light` - GSoC Registry + + .. grid-item:: + + .. button-link:: https://gsoc.beagleboard.io/proposals/old/2024/ijc.html + :color: primary + :shadow: + :expand: + + Proposal \ No newline at end of file diff --git a/projects/index.rst b/projects/index.rst index 1d3b473..c0e0ae1 100644 --- a/projects/index.rst +++ b/projects/index.rst @@ -14,6 +14,11 @@ GSoC over the previous years is given in the section that follows. :margin: 4 4 0 0 :gutter: 4 + .. grid-item-card:: :far:`calendar-days` 2024 + :text-align: center + :link: gsoc-2024-projects + :link-type: ref + .. grid-item-card:: :far:`calendar-days` 2023 :text-align: center :link: gsoc-2023-projects @@ -82,7 +87,8 @@ GSoC over the previous years is given in the section that follows. .. toctree:: :maxdepth: 1 :hidden: - + + 2024 2023 2022 2021 @@ -94,4 +100,4 @@ GSoC over the previous years is given in the section that follows. 2015 2014 2013 - 2010 + 2010 \ No newline at end of file -- GitLab From ca44c1857245e6f58616f7d543c0a91db8dfa885 Mon Sep 17 00:00:00 2001 From: Aryan <nandaaryan823@gmail.com> Date: Mon, 27 Jan 2025 23:00:40 +0530 Subject: [PATCH 03/10] Moved GSoC 2024 ideas not implemented to 'old ideas' for future reference Signed-off-by: Aryan <nandaaryan823@gmail.com> --- ideas/old/automation-and-industrial-io.rst | 44 ++++++-- ideas/old/index.rst | 2 +- ideas/old/linux-kernel-improvements.rst | 112 ++++++++++++++++++-- ideas/old/rtos-microkernel-improvements.rst | 39 +++++-- 4 files changed, 170 insertions(+), 27 deletions(-) diff --git a/ideas/old/automation-and-industrial-io.rst b/ideas/old/automation-and-industrial-io.rst index 218f92f..a5be945 100644 --- a/ideas/old/automation-and-industrial-io.rst +++ b/ideas/old/automation-and-industrial-io.rst @@ -13,7 +13,33 @@ into professional automation tasks, is strongly desired. .. card:: - :fas:`wand-sparkles;pst-color-secondary` **librobotcontrol support for BeagleBone AI/AI-64 and Robotics Cape** + :fas:`wand-sparkles;pst-color-danger` ``librobotcontrol`` support for newer boards :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` + ^^^^ + + Preliminary librobotcontrol support for BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire has been drafted, but it + needs to be cleaned up. We can also work on support for Raspberry Pi if UCSD releases their Hat for it. + + - **Goal:** Update librobotcontrol for Robotics Cape on BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire + - **Hardware Skills:** `basic wiring`_, `motors`_ + - **Software Skills:** `C`_, `Linux`_ + - **Possible Mentors:** `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ + - **Expected Size of Project:** 175 hrs + - **Rating:** Medium + - **Upstream Repository:** `BeagleBoard.org / librobotcontrol · GitLab <https://openbeagle.org/beagleboard/librobotcontrol>`_ + - **References:** + - `Robotics Control Library — BeagleBoard Documentation <https://docs.beagleboard.org/projects/librobotcontrol/docs/index.html>`_ + - `Robot Control Library: Main Page <https://old.beagleboard.org/static/librobotcontrol/>`_ + ++++ + + .. button-link:: https://forum.beagleboard.org/t/librobotcontrol-support-for-newer-boards/37187 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + +.. card:: + + :fas:`wand-sparkles;pst-color-secondary` **librobotcontrol support for BeagleBone AI/AI-64 and Robotics Cape** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` ^^^^ - **Goal:** Complete implementation of librobotcontrol on BeagleBone AI/AI-64. @@ -26,13 +52,9 @@ into professional automation tasks, is strongly desired. - **References:** - http://www.strawsondesign.com/docs/librobotcontrol/index.html - ++++ - - :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` - .. card:: - :fas:`wand-sparkles;pst-color-secondary` **Makecode Arcade for PocketBeagle GamePup** + :fas:`wand-sparkles;pst-color-secondary` **Makecode Arcade for PocketBeagle GamePup** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` ^^^^ Makecode is a framework for creating special-purpose programming experiences for @@ -55,8 +77,14 @@ into professional automation tasks, is strongly desired. - https://github.com/microsoft/uf2-linux - https://beagleboard.org/capes - ++++ +.. _basic wiring: + https://docs.beagle.cc/ - :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` +.. _C: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/c.html +.. _Linux: + https://docs.beagleboard.org/intro/beagle101/linux.html +.. _motors: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/motors.html \ No newline at end of file diff --git a/ideas/old/index.rst b/ideas/old/index.rst index d61e4d2..ce046fa 100644 --- a/ideas/old/index.rst +++ b/ideas/old/index.rst @@ -1,6 +1,6 @@ :orphan: -.. _gsoc-old-ideas: +.. _GSoC-old-ideas: Old GSoC Ideas ############## diff --git a/ideas/old/linux-kernel-improvements.rst b/ideas/old/linux-kernel-improvements.rst index 72b335b..6852efb 100644 --- a/ideas/old/linux-kernel-improvements.rst +++ b/ideas/old/linux-kernel-improvements.rst @@ -5,6 +5,63 @@ Linux kernel improvements Below are the projects that comes under linux kernel improvements category. +.. card:: + + :fab:`linux;pst-color-primary` **Update beagle-tester for mainline testing** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` + ^^^^ + + Utilize the ``beagle-tester`` application and ``Buildroot`` along with device-tree and udev symlink concepts within + the OpenBeagle continuous integration server context to create a regression test suite for the Linux kernel + and device-tree overlays on various Beagle computers. + + - **Goal:** Execution on Beagle test farm with over 30 mikroBUS boards testing all mikroBUS enabled cape interfaces (PWM, ADC, UART, I2C, SPI, GPIO and interrupt) performing weekly mainline Linux regression verification + - **Hardware Skills:** `basic wiring`_, `embedded serial interfaces`_ + - **Software Skills:** `device-tree`_, `Linux <https://docs.beagleboard.org/intro/beagle101/linux.html>`_, `C`_, `OpenBeagle CI`_, `Buildroot`_ + - **Possible Mentors:** `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, `Anuj Deshpande <https://forum.beagleboard.org/u/Anuj_Deshpande>`_, `Dhruva Gole <https://forum.beagleboard.org/u/dhruvag2000>`_ + - **Expected Size of Project:** 350 hrs + - **Rating: Medium** + - **Upstream Repository:** `Jason Kridner/Beagle Tester · GitLab <https://openbeagle.org/jkridner/beagle-tester>`_ + - **References:** + - `beagle-tester-issue <https://openbeagle.org/jkridner/beagle-tester/-/issues>`_ + + ++++ + + .. button-link:: https://forum.beagleboard.org/t/update-beagle-tester-for-cape-mikrobus-new-board-and-upstream-testing/37279 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + +.. card:: + + :fab:`linux;pst-color-primary` **Upstream wpanusb and bcfserial** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Medium size` + ^^^^ + + These are the drivers that are used to enable Linux to use a BeagleConnect Freedom as a SubGHz IEEE802.15.4 radio (gateway). + They need to be part of upstream Linux to simplify on-going support. There are several gaps that are known before they are + acceptable upstream. + + - **Goal:** Add functional gaps, submit upstream patches for these drivers and respond to feedback + - **Hardware Skills:** `wireless communications`_ + - **Software Skills:** `C`_, `Linux <https://docs.beagleboard.org/intro/beagle101/linux.html>`_ + - **Possible Mentors:** `Ayush Singh <https://forum.beagleboard.org/u/ayush1325>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ + - **Expected Size of Project:** 175 hrs + - **Rating: Medium** + - **Upstream Repository:** `Linux <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git>`_ + - **References:** + - `Submitting patches: the essential guide to getting your code into the kernel — The Linux Kernel documentation <https://www.kernel.org/doc/html/latest/process/submitting-patches.html>`_ + - `BeagleConnect · GitLab <https://openbeagle.org/beagleconnect>`_ + - `BeagleConnect / Linux / wpanusb · GitLab <https://openbeagle.org/beagleconnect/linux/wpanusb>`_ + - `BeagleConnect / Linux / bcfserial · GitLab <https://openbeagle.org/beagleconnect/linux/bcfserial>`_ + + ++++ + + .. button-link:: https://forum.beagleboard.org/t/upstream-wpanusb-and-bcfserial/37186 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + .. card:: :fab:`linux;pst-color-secondary` **BeagleBone Cape (add-on board) compatibility layer (BB-CCL)** :bdg-danger:`High priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` @@ -26,14 +83,14 @@ Below are the projects that comes under linux kernel improvements category. ++++ .. button-link:: https://example.com - :color: secondary + :color: danger :expand: :fab:`gitlab;pst-color-light` Discuss on forum .. card:: - :fab:`linux;pst-color-secondary` **Xenomai vs Preempt-RT** + :fab:`linux;pst-color-secondary` **Xenomai vs Preempt-RT** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` ^^^^ In the growing market of embedded Linux audio devices, engineers more and more face the @@ -55,13 +112,9 @@ Below are the projects that comes under linux kernel improvements category. - **Rating:** Medium - **Upstream Repository:** https://xenomai.org - ++++ - - :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` - .. card:: - :fab:`linux;pst-color-secondary` **Xenomai kernel for most recent BB boards** + :fab:`linux;pst-color-secondary` **Xenomai kernel for most recent BB boards** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` ^^^^ `Xenomai <http://xenomai.org/>`_ is a co-kernel for Linux that allows selected threads on @@ -88,6 +141,47 @@ Below are the projects that comes under linux kernel improvements category. - **References:** - `Paper: How fast is fast enough? <https://picture.iczhiku.com/resource/paper/WyIEpzspsLtjRXnc.pdf>`_ - ++++ +.. _C: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/c.html + +.. _Assembly: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/assembly.html + +.. _Verilog: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/verilog.html + +.. _Zephyr: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/zephyr.html + +.. _Linux: + https://docs.beagleboard.org/intro/beagle101/linux.html + +.. _device-tree: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/device-tree.html + +.. _FPGA: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/fpga.html + +.. _basic wiring: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/basic-wiring.html + +.. _motors: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/motors.html + +.. _embedded serial interfaces: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/embedded-serial.html + +.. _OpenBeagle CI: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/openbeagle-ci.html + +.. _verification: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/verification.html + +.. _wireless communications: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/wireless-communications.html + +.. _Buildroot: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/buildroot.html - :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` \ No newline at end of file +.. _RISC-V ISA: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/riscv.html \ No newline at end of file diff --git a/ideas/old/rtos-microkernel-improvements.rst b/ideas/old/rtos-microkernel-improvements.rst index 5d73e6e..0708961 100644 --- a/ideas/old/rtos-microkernel-improvements.rst +++ b/ideas/old/rtos-microkernel-improvements.rst @@ -8,9 +8,35 @@ specific focus on better understanding of computer systems and co-processing in a heterogeneous, asymmetrical multiprocessor system where Linux is the typical kernel used on the system coordination portion of the system. +.. card:: Upstream Zephyr Support on BBAI-64 R5 + + :fas:`timeline;pst-color-secondary` RTOS/microkernel imporvements :bdg-success:`Medium complexity` :bdg-danger-line:`350 hours` + + ^^^^ + + Incorporating Zephyr RTOS support onto the Cortex-R5 cores of the TDA4VM SoC along with Linux operation on the A72 core. The objective is to harness the combined capabilities of both systems + to support BeagleBone AI-64. + + - **Goal:** submit upstream patches to support BeagleBone AI-64 and respond to feedback + - **Hardware Skills:** Familiarity with ARM Cortex R5 + - **Software Skills:** `C`_, `RTOS <https://docs.zephyrproject.org/latest/develop/getting_started/index.html>`_ + - **Possible Mentors:** `Dhruva Gole <https://forum.beagleboard.org/u/dhruvag2000>`_, `Nishanth Menon <https://forum.beagleboard.org/u/nishanth_menon>`_ + - **Upstream Repository:** `The primary repository for Zephyr Project <https://github.com/zephyrproject-rtos/zephyr>`_ + - **Expected Size of Project:** 350 hrs + - **Rating:** Medium + - **References:** + - `J721E TRM <http://www.ti.com/lit/pdf/spruil1>`_ + ++++ + + .. button-link:: https://forum.beagleboard.org/t/upstream-zephyr-support-on-bbai-64-r5/37294/1 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + .. card:: - :fas:`timeline;pst-color-secondary` **RTEMS on RISC-V** + :fas:`timeline;pst-color-secondary` **RTEMS on RISC-V** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` ^^^^ - **Goal:** Add RISC-V-based PolarFire SoC support to RTEMS RTOS @@ -23,13 +49,9 @@ typical kernel used on the system coordination portion of the system. - **References:** - `Issue on RTEMS tracker <https://devel.rtems.org/ticket/4626>`_ - ++++ - - :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` - .. card:: - :fas:`timeline;pst-color-secondary` **Zephyr on R5/M4F (K3)** + :fas:`timeline;pst-color-secondary` **Zephyr on R5/M4F (K3)** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` ^^^^ - **Goal:** Add Zephyr RTOS support to the R5/M4F cores in the J721E/AM62 SoC @@ -43,6 +65,5 @@ typical kernel used on the system coordination portion of the system. - `J721E TRM <http://www.ti.com/lit/pdf/spruil1>`_ - `AM62 TRM <https://www.ti.com/lit/pdf/spruiv7>`_ - ++++ - - :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` \ No newline at end of file +.. _C: + https://jkridner.beagleboard.io/docs/latest/intro/beagle101/c.html \ No newline at end of file -- GitLab From 4492796c4d24a9002888ef26c68818e25ebe3889 Mon Sep 17 00:00:00 2001 From: Aryan <nandaaryan823@gmail.com> Date: Mon, 27 Jan 2025 23:01:10 +0530 Subject: [PATCH 04/10] Removed old ideas and added a demo idea template Signed-off-by: Aryan <nandaaryan823@gmail.com> --- ideas/index.rst | 149 ++++-------------------------------------------- 1 file changed, 10 insertions(+), 139 deletions(-) diff --git a/ideas/index.rst b/ideas/index.rst index aa66125..6be44da 100644 --- a/ideas/index.rst +++ b/ideas/index.rst @@ -28,152 +28,23 @@ Ideas | :bdg-info:`Low complexity` | :bdg-info-line:`90 hours` | +------------------------------------+-------------------------------+ -.. card:: Low-latency I/O RISC-V CPU core in FPGA fabric +.. card:: - :fas:`microchip;pst-color-primary` FPGA gateware improvements :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` + :fas:`microchip;pst-color-primary` Demo project idea (Topic of project here. Refer `this <https://gsoc.beagleboard.io/ideas/old/index.html#gsoc-old-ideas>`_) :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` (update these tags accordingly) ^^^^ + **Project heading** - BeagleV-Fire features RISC-V 64-bit CPU cores and FPGA fabric. In that FPGA fabric, we'd like to - implement a RISC-V 32-bit CPU core with operations optimized for low-latency GPIO. This is similar - to the programmable real-time unit (PRU) RISC cores popularized on BeagleBone Black. + Project Description here - | **Goal:** RISC-V-based CPU on BeagleV-Fire FPGA fabric with GPIO - | **Hardware Skills:** `Verilog`_, `verification`_, `FPGA`_ - | **Software Skills:** `RISC-V ISA`_, `assembly`_, `Linux`_ - | **Possible Mentors:** `Cyril Jean <https://forum.beagleboard.org/u/vauban>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ + | **Goal:** Goal of your project here + | **Hardware Skills:** eg. `Verilog`_, `verification`_, `FPGA`_ + | **Software Skills:** eg. `RISC-V ISA`_, `assembly`_, `Linux`_ + | **Possible Mentors:** eg. `Cyril Jean <https://forum.beagleboard.org/u/vauban>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ ++++ - .. button-link:: https://forum.beagleboard.org/t/low-latency-risc-v-i-o-cpu-core/37156 - :color: danger - :expand: - - :fab:`discourse;pst-color-light` Discuss on forum - - -.. card:: Update beagle-tester for mainline testing - - :fab:`linux;pst-color-primary` Linux kernel improvements :bdg-success:`Medium complexity` :bdg-danger-line:`350 hours` - - ^^^^ - - Utilize the ``beagle-tester`` application and ``Buildroot`` along with device-tree and udev symlink concepts within - the OpenBeagle continuous integration server context to create a regression test suite for the Linux kernel - and device-tree overlays on various Beagle computers. - - | **Goal:** Execution on Beagle test farm with over 30 mikroBUS boards testing all mikroBUS enabled cape interfaces (PWM, ADC, UART, I2C, SPI, GPIO and interrupt) performing weekly mainline Linux regression verification - | **Hardware Skills:** `basic wiring`_, `embedded serial interfaces`_ - | **Software Skills:** `device-tree`_, `Linux`_, `C`_, `OpenBeagle CI`_, `Buildroot`_ - | **Possible Mentors:** `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, `Anuj Deshpande <https://forum.beagleboard.org/u/Anuj_Deshpande>`_, `Dhruva Gole <https://forum.beagleboard.org/u/dhruvag2000>`_ - - ++++ - - .. button-link:: https://forum.beagleboard.org/t/update-beagle-tester-for-cape-mikrobus-new-board-and-upstream-testing/37279 - :color: danger - :expand: - - :fab:`discourse;pst-color-light` Discuss on forum - -.. card:: Upstream wpanusb and bcfserial - - :fab:`linux;pst-color-primary` Linux kernel improvements :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` - - ^^^^ - - These are the drivers that are used to enable Linux to use a BeagleConnect Freedom as a SubGHz IEEE802.15.4 radio (gateway). - They need to be part of upstream Linux to simplify on-going support. There are several gaps that are known before they are - acceptable upstream. - - | **Goal:** Add functional gaps, submit upstream patches for these drivers and respond to feedback - | **Hardware Skills:** `wireless communications`_ - | **Software Skills:** `C`_, `Linux`_ - | **Possible Mentors:** `Ayush Singh <https://forum.beagleboard.org/u/ayush1325>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ - - ++++ - - .. button-link:: https://forum.beagleboard.org/t/upstream-wpanusb-and-bcfserial/37186 - :color: danger - :expand: - - :fab:`discourse;pst-color-light` Discuss on forum - -.. card:: ``librobotcontrol`` support for newer boards - - :fas:`wand-sparkles;pst-color-danger` Automation and industrial I/O :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` - - ^^^^ - - Preliminary librobotcontrol support for BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire has been drafted, but it - needs to be cleaned up. We can also work on support for Raspberry Pi if UCSD releases their Hat for it. - - | **Goal:** Update librobotcontrol for Robotics Cape on BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire - | **Hardware Skills:** `basic wiring`_, `motors`_ - | **Software Skills:** `C`_, `Linux`_ - | **Possible Mentors:** `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ - - ++++ - - .. button-link:: https://forum.beagleboard.org/t/librobotcontrol-support-for-newer-boards/37187 - :color: danger - :expand: - - :fab:`discourse;pst-color-light` Discuss on forum - -.. card:: Upstream Zephyr Support on BBAI-64 R5 - - :fas:`timeline;pst-color-secondary` RTOS/microkernel imporvements :bdg-success:`Medium complexity` :bdg-danger-line:`350 hours` - - ^^^^ - - Incorporating Zephyr RTOS support onto the Cortex-R5 cores of the TDA4VM SoC along with Linux operation on the A72 core. The objective is to harness the combined capabilities of both systems - to support BeagleBone AI-64. - - | **Goal:** submit upstream patches to support BeagleBone AI-64 and respond to feedback - | **Hardware Skills:** Familiarity with ARM Cortex R5 - | **Software Skills:** `C`_, `RTOS <https://docs.zephyrproject.org/latest/develop/getting_started/index.html>`_ - | **Possible Mentors:** `Dhruva Gole <https://forum.beagleboard.org/u/dhruvag2000>`_, `Nishanth Menon <https://forum.beagleboard.org/u/nishanth_menon>`_ - | **Upstream Repository:** `The primary repository for Zephyr Project <https://github.com/zephyrproject-rtos/zephyr>`_ - - ++++ - - .. button-link:: https://forum.beagleboard.org/t/upstream-zephyr-support-on-bbai-64-r5/37294/1 - :color: danger - :expand: - - :fab:`discourse;pst-color-light` Discuss on forum - -.. card:: Enhanced Media Experience with AI-Powered Commercial Detection and Replacement - - :fas:`brain;pst-color-secondary` Deep Learning :bdg-success:`Medium complexity` :bdg-danger-line:`350 hours` - - ^^^^ - - Leveraging the capabilities of BeagleBoard’s powerful processing units, the project will focus on creating a real-time, efficient solution that enhances media consumption experiences by seamlessly integrating custom audio streams during commercial breaks. - - | **Goal:** Build a deep learning model, training data set, training scripts, and a runtime for detection and modification of the video stream. - | **Hardware Skills:** Ability to capture and display video streams using `BeagleBone AI-64 <https://www.beagleboard.org/boards/beaglebone-ai-64>`_ - | **Software Skills:** `Python <https://www.python.org/>`_, `TensorFlow <https://www.tensorflow.org/>`_, `TFlite <https://www.tensorflow.org/lite>`_, `Keras <https://www.tensorflow.org/guide/keras>`_, `GStreamer <https://gstreamer.freedesktop.org/>`_, `OpenCV <https://opencv.org/>`_ - | **Possible Mentors:** `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_, `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_ - - ++++ - -.. card:: Embedded differentiable logic gate networks for real-time interactive and creative applications - - :fas:`brain;pst-color-secondary` Creative AI :bdg-success:`Medium complexity` :bdg-danger-line:`350 hours` - - ^^^^ - - This project seeks to explore the potential of creative embedded AI, specifically using `Differentiable Logic (DiffLogic) <https://github.com/Felix-Petersen/difflogic>`_, by creating a system that can perform tasks like machine listening, sensor processing, sound and gesture classification, and generative AI. - - | **Goal:** Develop an embedded machine learning system on BeagleBone that leverages `Differentiable Logic (DiffLogic) <https://github.com/Felix-Petersen/difflogic>`_ for real-time interactive music creation and environment sensing. - | **Hardware Skills:** Audio and sensor IO with `Bela.io <http://bela.io>`_ - | **Software Skills:** Machine learning, deep learning, BeagleBone Programmable Real Time Unit (PRU) programming (see `PRU Cookbook <https://docs.beagleboard.org/latest/books/pru-cookbook/index.html>`_). - | **Possible Mentors:** `Jack Armitage <https://forum.beagleboard.org/u/jarm>`_, `Chris Kiefer <https://forum.beagleboard.org/u/luuma>`_ - - ++++ - - .. button-link:: https://forum.beagleboard.org/t/enhanced-media-experience-with-ai-powered-commercial-detection-and-replacement/37358 + .. button-link:: Link to project discussion forum thread here :color: danger :expand: @@ -189,7 +60,7 @@ Ideas .. tip:: - You can also check our our :ref:`gsoc-old-ideas` and :ref:`Past_Projects` for inspiration. + You can also check our :ref:`GSoC-old-ideas` and :ref:`Past_Projects` for inspiration. .. _C: https://jkridner.beagleboard.io/docs/latest/intro/beagle101/c.html -- GitLab From 3f37cd3b60c9c357e1b56e05cc356c4394e92afd Mon Sep 17 00:00:00 2001 From: Aryan <nandaaryan823@gmail.com> Date: Tue, 28 Jan 2025 19:06:55 +0530 Subject: [PATCH 05/10] Removed abbreviation of BeagleBone AI-64 Signed-off-by: Aryan <nandaaryan823@gmail.com> --- ideas/old/rtos-microkernel-improvements.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ideas/old/rtos-microkernel-improvements.rst b/ideas/old/rtos-microkernel-improvements.rst index 0708961..7a6a52a 100644 --- a/ideas/old/rtos-microkernel-improvements.rst +++ b/ideas/old/rtos-microkernel-improvements.rst @@ -8,7 +8,7 @@ specific focus on better understanding of computer systems and co-processing in a heterogeneous, asymmetrical multiprocessor system where Linux is the typical kernel used on the system coordination portion of the system. -.. card:: Upstream Zephyr Support on BBAI-64 R5 +.. card:: Upstream Zephyr Support on BeagleBone AI-64 R5 :fas:`timeline;pst-color-secondary` RTOS/microkernel imporvements :bdg-success:`Medium complexity` :bdg-danger-line:`350 hours` -- GitLab From 85ad9dfa04dcfb112ac66e759bd471248d5a0274 Mon Sep 17 00:00:00 2001 From: Aryan <nandaaryan823@gmail.com> Date: Tue, 28 Jan 2025 19:50:21 +0530 Subject: [PATCH 06/10] updated reference within the site Signed-off-by: Aryan <nandaaryan823@gmail.com> --- ideas/index.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ideas/index.rst b/ideas/index.rst index 6be44da..5ced72c 100644 --- a/ideas/index.rst +++ b/ideas/index.rst @@ -30,7 +30,7 @@ Ideas .. card:: - :fas:`microchip;pst-color-primary` Demo project idea (Topic of project here. Refer `this <https://gsoc.beagleboard.io/ideas/old/index.html#gsoc-old-ideas>`_) :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` (update these tags accordingly) + :fas:`microchip;pst-color-primary` Demo project idea (Topic of project here. Refer :ref:`GSoC-old-ideas`) :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` (update these tags accordingly) ^^^^ **Project heading** -- GitLab From 5f604899f5825376e66f4aa4ab06692a3470fe49 Mon Sep 17 00:00:00 2001 From: Jason Kridner <jkridner@beagleboard.org> Date: Mon, 10 Feb 2025 13:48:50 -0500 Subject: [PATCH 07/10] Clean up move of proposals to old/2024 See feedback at https://openbeagle.org/gsoc/gsoc.beagleboard.io/-/merge_requests/52/diffs?commit_id=3bc4cadbb8aa3a9c59098a58b4be8fd9f610d681 --- proposals/index.rst | 4 ++-- proposals/old/2024/index.rst | 11 +---------- proposals/old/2024/mc.rst | 4 ++-- 3 files changed, 5 insertions(+), 14 deletions(-) diff --git a/proposals/index.rst b/proposals/index.rst index efab4af..4779f23 100644 --- a/proposals/index.rst +++ b/proposals/index.rst @@ -3,7 +3,7 @@ Proposals .. tip:: - Checkout :ref:`gsoc-project-ideas` page to explore ideas and :ref:`old-gsoc-proposals` page to write your own proposal. You can also refer to :ref:`old-gsoc-proposals` to view old proposals submitted for GSoC. + Checkout :ref:`gsoc-project-ideas` page to explore ideas and :ref:`gsoc-proposal-guide` page to write your own proposal. You can also refer to :ref:`old-gsoc-proposals` to view old proposals submitted for GSoC. .. toctree:: :maxdepth: 1 @@ -15,4 +15,4 @@ Proposals :maxdepth: 1 :caption: Old Proposals - old/index \ No newline at end of file + old diff --git a/proposals/old/2024/index.rst b/proposals/old/2024/index.rst index dc1f8c2..8e6db83 100644 --- a/proposals/old/2024/index.rst +++ b/proposals/old/2024/index.rst @@ -16,7 +16,7 @@ This directory contains archived proposals and related assets from 2024. .. toctree:: :maxdepth: 1 - :caption: Rejected Proposals + :caption: Other Proposals suraj-sonawane upstream_zephyr_bbai64_r5 @@ -25,12 +25,3 @@ This directory contains archived proposals and related assets from 2024. mc himanshuk drone_cape_for_beagle-v-fire - -.. toctree:: - :maxdepth: 1 - :caption: Additional Files - - Assets/ - assets_drone_cape/ - images_support/ - melta101_static/ diff --git a/proposals/old/2024/mc.rst b/proposals/old/2024/mc.rst index 97bdef5..6ff4762 100644 --- a/proposals/old/2024/mc.rst +++ b/proposals/old/2024/mc.rst @@ -70,12 +70,12 @@ A standard neural network uses a perceptron, which is a binary linear classifier The following image illustrates the steps of the perceptron. -.. image:: ./Assets/perceptron.png +.. image:: Assets/perceptron.png :alt: An image of a perceptron describing each stage A logic gate is similar to a perceptron in that it also can be used as a binary linear classifier. With XOR, it takes on the implementation of a multi-layer perceptron, but the main concept within leveraging logic gates as perceptrons is that they both function as binary linear classifiers as demonstrated below: -.. image:: ./Assets/logic-gates-fix.png +.. image:: Assets/logic-gates-fix.png :alt: An image of logic gates acting as linear classifiers A table of key differences between the network architectures follows: -- GitLab From 2eb50365d66adfb9154471f727e92005fd65a377 Mon Sep 17 00:00:00 2001 From: Jason Kridner <jkridner@beagleboard.org> Date: Mon, 10 Feb 2025 13:58:54 -0500 Subject: [PATCH 08/10] Partial fixes to old ideas See https://openbeagle.org/gsoc/gsoc.beagleboard.io/-/merge_requests/52/diffs?commit_id=ca44c1857245e6f58616f7d543c0a91db8dfa885 --- ideas/old/automation-and-industrial-io.rst | 26 +++++----------------- ideas/old/index.rst | 2 +- 2 files changed, 7 insertions(+), 21 deletions(-) diff --git a/ideas/old/automation-and-industrial-io.rst b/ideas/old/automation-and-industrial-io.rst index a5be945..487454a 100644 --- a/ideas/old/automation-and-industrial-io.rst +++ b/ideas/old/automation-and-industrial-io.rst @@ -27,8 +27,9 @@ into professional automation tasks, is strongly desired. - **Rating:** Medium - **Upstream Repository:** `BeagleBoard.org / librobotcontrol · GitLab <https://openbeagle.org/beagleboard/librobotcontrol>`_ - **References:** - - `Robotics Control Library — BeagleBoard Documentation <https://docs.beagleboard.org/projects/librobotcontrol/docs/index.html>`_ + - `Robotics Control Library — BeagleBoard Documentation <https://docs.beagle.cc/projects/librobotcontrol/docs/index.html>`_ - `Robot Control Library: Main Page <https://old.beagleboard.org/static/librobotcontrol/>`_ + - http://www.strawsondesign.com/docs/librobotcontrol/index.html ++++ .. button-link:: https://forum.beagleboard.org/t/librobotcontrol-support-for-newer-boards/37187 @@ -37,21 +38,6 @@ into professional automation tasks, is strongly desired. :fab:`discourse;pst-color-light` Discuss on forum -.. card:: - - :fas:`wand-sparkles;pst-color-secondary` **librobotcontrol support for BeagleBone AI/AI-64 and Robotics Cape** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` - ^^^^ - - - **Goal:** Complete implementation of librobotcontrol on BeagleBone AI/AI-64. - - **Hardware Skills:** Basic wiring - - **Software Skills:** C, Linux - - **Possible Mentors:** jkridner, lorforlinux - - **Expected Size of Project:** 350 hrs - - **Rating:** Medium - - **Upstream Repository:** https://github.com/jadonk/librobotcontrol/tree/bbai - - **References:** - - http://www.strawsondesign.com/docs/librobotcontrol/index.html - .. card:: :fas:`wand-sparkles;pst-color-secondary` **Makecode Arcade for PocketBeagle GamePup** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` @@ -78,13 +64,13 @@ into professional automation tasks, is strongly desired. - https://beagleboard.org/capes .. _basic wiring: - https://docs.beagle.cc/ + https://docs.beagle.cc/intro/beagle101/basic-wiring.html .. _C: - https://jkridner.beagleboard.io/docs/latest/intro/beagle101/c.html + https://docs.beagle.cc/intro/beagle101/c.html .. _Linux: - https://docs.beagleboard.org/intro/beagle101/linux.html + https://docs.beagle.cc/intro/beagle101/linux.html .. _motors: - https://jkridner.beagleboard.io/docs/latest/intro/beagle101/motors.html \ No newline at end of file + https://docs.beagle.cc/intro/beagle101/motors.html diff --git a/ideas/old/index.rst b/ideas/old/index.rst index ce046fa..d61e4d2 100644 --- a/ideas/old/index.rst +++ b/ideas/old/index.rst @@ -1,6 +1,6 @@ :orphan: -.. _GSoC-old-ideas: +.. _gsoc-old-ideas: Old GSoC Ideas ############## -- GitLab From 9099f6378bcece39249b92c9f20ca33fbc297704 Mon Sep 17 00:00:00 2001 From: Aryan <nandaaryan823@gmail.com> Date: Thu, 13 Feb 2025 15:30:47 +0530 Subject: [PATCH 09/10] Ideas added for GSoC 2025 Signed-off-by: Aryan <nandaaryan823@gmail.com> --- ideas/index.rst | 64 +++++++++++++++++----- ideas/old/automation-and-industrial-io.rst | 27 --------- ideas/old/linux-kernel-improvements.rst | 26 --------- 3 files changed, 50 insertions(+), 67 deletions(-) diff --git a/ideas/index.rst b/ideas/index.rst index 5ced72c..b4751c2 100644 --- a/ideas/index.rst +++ b/ideas/index.rst @@ -28,35 +28,71 @@ Ideas | :bdg-info:`Low complexity` | :bdg-info-line:`90 hours` | +------------------------------------+-------------------------------+ -.. card:: +.. card:: ``librobotcontrol`` support for newer boards - :fas:`microchip;pst-color-primary` Demo project idea (Topic of project here. Refer :ref:`GSoC-old-ideas`) :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` (update these tags accordingly) + :fas:`wand-sparkles;pst-color-danger` Automation and industrial I/O :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` ^^^^ - **Project heading** - Project Description here + Preliminary librobotcontrol support for BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire has been drafted, but it + needs to be cleaned up. We can also work on support for Raspberry Pi if UCSD releases their Hat for it. - | **Goal:** Goal of your project here - | **Hardware Skills:** eg. `Verilog`_, `verification`_, `FPGA`_ - | **Software Skills:** eg. `RISC-V ISA`_, `assembly`_, `Linux`_ - | **Possible Mentors:** eg. `Cyril Jean <https://forum.beagleboard.org/u/vauban>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ + | **Goal:** Update librobotcontrol for Robotics Cape on BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire + | **Hardware Skills:** `basic wiring`_, `motors`_ + | **Software Skills:** `C`_, `Linux`_ + | **Possible Mentors:** `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ + + ++++ + + .. button-link:: https://forum.beagleboard.org/t/librobotcontrol-support-for-newer-boards/37187 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + +.. card:: Update beagle-tester for mainline testing + + :fab:`linux;pst-color-primary` Linux kernel improvements :bdg-success:`Medium complexity` :bdg-danger-line:`350 hours` + + ^^^^ + + Utilize the ``beagle-tester`` application and ``Buildroot`` along with device-tree and udev symlink concepts within + the OpenBeagle continuous integration server context to create a regression test suite for the Linux kernel + and device-tree overlays on various Beagle computers. + + | **Goal:** Execution on Beagle test farm with over 30 mikroBUS boards testing all mikroBUS enabled cape interfaces (PWM, ADC, UART, I2C, SPI, GPIO and interrupt) performing weekly mainline Linux regression verification + | **Hardware Skills:** `basic wiring`_, `embedded serial interfaces`_ + | **Software Skills:** `device-tree`_, `Linux`_, `C`_, `OpenBeagle CI`_, `Buildroot`_ + | **Possible Mentors:** `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, `Anuj Deshpande <https://forum.beagleboard.org/u/Anuj_Deshpande>`_, `Dhruva Gole <https://forum.beagleboard.org/u/dhruvag2000>`_ ++++ - .. button-link:: Link to project discussion forum thread here + .. button-link:: https://forum.beagleboard.org/t/update-beagle-tester-for-cape-mikrobus-new-board-and-upstream-testing/37279 :color: danger :expand: :fab:`discourse;pst-color-light` Discuss on forum -.. button-link:: https://forum.beagleboard.org/tag/gsoc-ideas - :color: danger - :expand: - :outline: +.. card:: A Conversational AI Assistant for BeagleBoard using RAG and Fine-tuning + + :fas:`brain;pst-color-secondary` Deep Learning :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` + + ^^^^ - :fab:`discourse;pst-color-light` Visit our forum to see newer ideas being discussed! + BeagleBoard currently lacks an AI-powered assistant to help users troubleshoot errors. This project aims to address that need while also streamlining the onboarding process for new contributors, enabling them to get started more quickly. + | **Goal:** Develop a domain-specific chatbot for BeagleBoard using a combination of RAG and fine-tuning of an open-source LLM (like Llama 3, Mixtral, or Gemma). This chatbot will assist users with troubleshooting, provide information about BeagleBoard products, and streamline the onboarding process for new contributors. + | **Hardware Skills:** Ability to test applications on BeagleBone AI-64/BeagleY-AI and optimize for performance using quantization techniques. + | **Software Skills:** Python, RAG, Scraping techniques, Fine tuning LLMs, Gradio, Hugging Face Inference Endpoints, NLTK/spaCy, Git + | **Possible Mentors:** `Aryan Nanda <https://forum.beagleboard.org/u/aryan_nanda/>`_ + + ++++ + + .. button-link:: https://forum.beagleboard.org/t/beaglemind/40806 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum .. tip:: diff --git a/ideas/old/automation-and-industrial-io.rst b/ideas/old/automation-and-industrial-io.rst index 487454a..f7bd2ad 100644 --- a/ideas/old/automation-and-industrial-io.rst +++ b/ideas/old/automation-and-industrial-io.rst @@ -11,33 +11,6 @@ into professional automation tasks, is strongly desired. - learning tools like BlockyTalky3 and Makecode, but with a focus on making automation easy - open source PLC software -.. card:: - - :fas:`wand-sparkles;pst-color-danger` ``librobotcontrol`` support for newer boards :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` - ^^^^ - - Preliminary librobotcontrol support for BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire has been drafted, but it - needs to be cleaned up. We can also work on support for Raspberry Pi if UCSD releases their Hat for it. - - - **Goal:** Update librobotcontrol for Robotics Cape on BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire - - **Hardware Skills:** `basic wiring`_, `motors`_ - - **Software Skills:** `C`_, `Linux`_ - - **Possible Mentors:** `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ - - **Expected Size of Project:** 175 hrs - - **Rating:** Medium - - **Upstream Repository:** `BeagleBoard.org / librobotcontrol · GitLab <https://openbeagle.org/beagleboard/librobotcontrol>`_ - - **References:** - - `Robotics Control Library — BeagleBoard Documentation <https://docs.beagle.cc/projects/librobotcontrol/docs/index.html>`_ - - `Robot Control Library: Main Page <https://old.beagleboard.org/static/librobotcontrol/>`_ - - http://www.strawsondesign.com/docs/librobotcontrol/index.html - ++++ - - .. button-link:: https://forum.beagleboard.org/t/librobotcontrol-support-for-newer-boards/37187 - :color: danger - :expand: - - :fab:`discourse;pst-color-light` Discuss on forum - .. card:: :fas:`wand-sparkles;pst-color-secondary` **Makecode Arcade for PocketBeagle GamePup** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` diff --git a/ideas/old/linux-kernel-improvements.rst b/ideas/old/linux-kernel-improvements.rst index 6852efb..488102d 100644 --- a/ideas/old/linux-kernel-improvements.rst +++ b/ideas/old/linux-kernel-improvements.rst @@ -5,32 +5,6 @@ Linux kernel improvements Below are the projects that comes under linux kernel improvements category. -.. card:: - - :fab:`linux;pst-color-primary` **Update beagle-tester for mainline testing** :bdg-success:`Medium priority` :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` - ^^^^ - - Utilize the ``beagle-tester`` application and ``Buildroot`` along with device-tree and udev symlink concepts within - the OpenBeagle continuous integration server context to create a regression test suite for the Linux kernel - and device-tree overlays on various Beagle computers. - - - **Goal:** Execution on Beagle test farm with over 30 mikroBUS boards testing all mikroBUS enabled cape interfaces (PWM, ADC, UART, I2C, SPI, GPIO and interrupt) performing weekly mainline Linux regression verification - - **Hardware Skills:** `basic wiring`_, `embedded serial interfaces`_ - - **Software Skills:** `device-tree`_, `Linux <https://docs.beagleboard.org/intro/beagle101/linux.html>`_, `C`_, `OpenBeagle CI`_, `Buildroot`_ - - **Possible Mentors:** `Deepak Khatri <https://forum.beagleboard.org/u/lorforlinux>`_, `Anuj Deshpande <https://forum.beagleboard.org/u/Anuj_Deshpande>`_, `Dhruva Gole <https://forum.beagleboard.org/u/dhruvag2000>`_ - - **Expected Size of Project:** 350 hrs - - **Rating: Medium** - - **Upstream Repository:** `Jason Kridner/Beagle Tester · GitLab <https://openbeagle.org/jkridner/beagle-tester>`_ - - **References:** - - `beagle-tester-issue <https://openbeagle.org/jkridner/beagle-tester/-/issues>`_ - - ++++ - - .. button-link:: https://forum.beagleboard.org/t/update-beagle-tester-for-cape-mikrobus-new-board-and-upstream-testing/37279 - :color: danger - :expand: - - :fab:`discourse;pst-color-light` Discuss on forum .. card:: -- GitLab From 2f5816dbf99cd4726d50e50501cbb96045fbed74 Mon Sep 17 00:00:00 2001 From: Aryan <nandaaryan823@gmail.com> Date: Thu, 13 Feb 2025 22:33:41 +0530 Subject: [PATCH 10/10] Idea Upstream wpanusb and bcfserial idea added Signed-off-by: Aryan <nandaaryan823@gmail.com> --- ideas/index.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/ideas/index.rst b/ideas/index.rst index b4751c2..5cdc0ee 100644 --- a/ideas/index.rst +++ b/ideas/index.rst @@ -94,6 +94,29 @@ Ideas :fab:`discourse;pst-color-light` Discuss on forum +.. card:: Upstream wpanusb and bcfserial + + :fab:`linux;pst-color-primary` Linux kernel improvements :bdg-success:`Medium complexity` :bdg-success-line:`175 hours` + + ^^^^ + + These are the drivers that are used to enable Linux to use a BeagleConnect Freedom as a SubGHz IEEE802.15.4 radio (gateway). + They need to be part of upstream Linux to simplify on-going support. There are several gaps that are known before they are + acceptable upstream. + + | **Goal:** Add functional gaps, submit upstream patches for these drivers and respond to feedback + | **Hardware Skills:** `wireless communications`_ + | **Software Skills:** `C`_, `Linux`_ + | **Possible Mentors:** `Ayush Singh <https://forum.beagleboard.org/u/ayush1325>`_, `Jason Kridner <https://forum.beagleboard.org/u/jkridner>`_ + + ++++ + + .. button-link:: https://forum.beagleboard.org/t/upstream-wpanusb-and-bcfserial/37186 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + .. tip:: You can also check our :ref:`GSoC-old-ideas` and :ref:`Past_Projects` for inspiration. -- GitLab