User Tools

Site Tools


gsoc:2025-gsoc-zephyr

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
gsoc:2025-gsoc-zephyr [2025/02/11 16:37]
IulianaProdan
gsoc:2025-gsoc-zephyr [2025/03/19 07:06] (current)
dbaluta [Project 2: Port CUPS and Printer Applications to Zephyr]
Line 29: Line 29:
 ===== Project 1: Running Open-Source ML Models on HiFi4 DSP with Zephyr RTOS ===== ===== Project 1: Running Open-Source ML Models on HiFi4 DSP with Zephyr RTOS =====
  
 +**Machine-Learning-related project**
  
 //1 contributor medium-size (175 hours)// //1 contributor medium-size (175 hours)//
Line 52: Line 53:
  
 **Skills Required:** **Skills Required:**
-  * C/C++ programming ​+  * %%C/C++%% programming ​
   * Embedded systems and real-time operating systems (Zephyr)   * Embedded systems and real-time operating systems (Zephyr)
   * Familiarity with TensorFlow Lite Micro or similar lightweight ML frameworks   * Familiarity with TensorFlow Lite Micro or similar lightweight ML frameworks
Line 58: Line 59:
  
 **Mentors:​** **Mentors:​**
-  * Iuliana Prodan ​iuliana.prodan@nxp.com +  * Iuliana Prodan ​<iuliana.prodan@nxp.com> 
-  * George Stefan ​george.stefan@nxp.com+  * George Stefan ​<george.stefan@nxp.com
 +  * Daniel Baluta <​daniel.baluta@gmail.com>​ 
 +  * Laurentiu Mihalcea <​laurentiu.mihalcea@nxp.com>​ 
 + 
 +===== Project 2: Port CUPS and Printer Applications to Zephyr===== 
 + 
 +//1 contributor full-size (350 hours)// 
 + 
 +//Level of difficulty//:​ Intermediate 
 + 
 +Probably many of you have already thought about that one can take an SBC, install Linux and [[https://​openprinting.github.io/​cups|CUPS]] or a Printer Application on it, and connect this to an old printer which is still mechanically perfect but needs a driver which is not available any more for some operating systems. Suddenly the printer turns into a modern, driverless IPP printer which can be used with any operating system. 
 + 
 +But it is a little awkward having a little box dangling behind the printer which also occupies a power outlet. Also one can perhaps also make use of much cheaper SBC. 
 + 
 +Imagine you could buy a tiny board for a few dollars and put it somewhere inside the printer and grab its power from the printer'​s power supply. 
 + 
 +Such tiny boards are often not powerful enough to run Linux, but there is also the much more lightweight [[https://​www.zephyrproject.org/​|Zephyr]] operating system. This is a system for IoT applications on low-footprint hardware. 
 + 
 +And this scenario does not only serve for cheap DIY solutions to save old printers, it also can be a base for cost-effective printer firmware development. 
 + 
 +This project is about investigating whether one could run the components of the free software printing stack, as [[https://​openprinting.github.io/​cups|CUPS]],​ [[https://​github.com/​michaelrsweet/​pappl/​|PAPPL]],​ [[https://​github.com/​OpenPrinting/​libcupsfilters|libcupsfilters]],​ ... under the Zephyr operating system, and actually let this tiny print server execute printer drivers and print on legacy printers. Also the handling of print data and the need of resources here needs to be investigated. Can we hold several pages? Can we use [[https://​ghostscript.com/​|Ghostscript]]?​ Or do we have to stream raster print data from the client to the printer? 
 + 
 +Most desirable is to do this with PAPPL (Printer APPlication Library), as it is designed to emulate a driverless IPP printer in software, including the so-called "​Gadget"​ mode to appear as an IPP-over-USB device when connecting the power supply USB port of the SBC with the client computer'​s USB. 
 + 
 +Code License: Apache 2.0, MIT (licenses of the OpenPrinting projects) 
 + 
 +**Skills Required:​** 
 +  * %%C/C++%% programming  
 +  * Embedded systems and real-time operating systems (Zephyr) 
 +  * Familiarity with version control systems (e.g., Git) 
 + 
 +**Mentors:​** 
 +  * Till Kamppeter <​till@linux.com>​ (Project lead [[https://​www.openprinting.org/​|OpenPrinting]]) 
 +  * Iuliana Prodan <​iuliana.prodan@nxp.com>​ 
 +  * Zephyr Developers TBD
  
gsoc/2025-gsoc-zephyr.1739291859.txt.gz · Last modified: 2025/02/11 16:37 by IulianaProdan