CCIMXDesktop
 
Loading...
Searching...
No Matches
CCIMXDESKTOP ๐Ÿ–ฅ๏ธ

CCIMXDesktopLogo

QtOpenCVMuPDFQtVersion

๐Ÿ”Œ Hello! This is a collection of simple desktops and utilities that can be used in embedded devices with IMX6ULL LCD screens! This project can now be compiled with full C++17!

๐ŸŒ Before you begin, choose your language! ๐ŸŒ

๐Ÿ‡ฌ๐Ÿ‡ง English Version | ๐Ÿ‡จ๐Ÿ‡ณ Chinese

๐ŸŒŸ Project Overview ๐ŸŒŸ

i.MX6ULL

Embedded

CCIMXDesktop is a minimalist, lightweight and high-performance desktop environment framework based on Qt6.8.3, specially customized for embedded systems such as NXP i.MX6ULL platform (i.e. embedded systems that cannot run heavyweight desktop services but can run Qt programs). It provides a series of common Qt built-in tool packages, device management inheritance and built-in auxiliary applications, all of which are presented in a unified user interface. Let you use embedded devices with LCD easily and visually!

The project supports running on Windows, Linux host computers and ARM-Linux with a basic environment (complete root file system + Qt + C++ runtime environment)

Some running screenshots

0. Video Previewed (In Bilibili)

Tiny Desktop Written for IMX6ULL

1) Screen when starting loading (screenshot version: Release 2.0.0)

image-20250801101452056

2) Main interface: HOME interface (screenshot version: Release1.15.0)

f5059a311e8e70a7db9225de6fc79a98

2) BuiltinAPP display interface

image-202507061423571 34

3) ExternAPP third-party optional build configuration

image-20250623214716793

4) APP settings desktop interface

image-20250623214833847

๐Ÿ› ๏ธ Technologies used to build the foundation

Qt TSLIBTSLIBTSLIBTSLIBTSLIBTSLIB

Building this project requires that you have completed the porting of Qt6 (the basic necessary porting includes TSLib for interaction, QtCore QtWidget QtGui three-piece set, QtNetwork and at least QtMultiMedia component support for ALSA audio playback). Please check whether your build is sufficient to support the building of this desktop and third-party applications!

Tip: The full build takes about 10 minutes (16 threads). You can adjust it dynamically according to your needs. Please refer to the build document for details

‍๐Ÿ› ๏ธ How to build this project? (Supports X86 gcc, ARM-linux-gnueabihf-gcc and Windows GCC)

๐Ÿ› ๏ธ Full build of technologies

OpenCV

MuPDF

  • OpenCV for camera support and image transform processing (if you don't use OpenCV image processing and any support for video streaming, you can leave out the library, but all related apps will be set to not build!)
  • MuPDF (for PDF rendering) (These are used for the mupdf-based PDF reader. If you don't want to build, you can ignore the MuPDF dependency and all related apps will be set to not build!)

What's here?

Now, CCIMXDesktop supports one-click building including:

Desktop main body function ๐Ÿ’ป

  • ๐Ÿ“ฆ Basic application host + dynamic APP launchโšก
  • ๐Ÿ–ผ๏ธ Wallpaper animation, hosting function๐ŸŒ€
  • ๐Ÿ› ๏ธ Basic built-in auxiliary APP (cannot be uninstalled๐Ÿ”’)
  • ๐Ÿ“œ Log management system, add a log system to CCIMXDesktop to facilitate debugging๐Ÿ” and observation๐Ÿ‘€
  • ๐Ÿ“‚ Initially stable desktop private folder system
  • โ„น Initially built service system (message notification system)
  • ๐Ÿ”Œ Initially built Widget plug-in system (currently only HOME card group can be plug-inized)
  • ๐Ÿ‘จ The most basic user information system
  • โฌ‡๏ธ a quick setting channel for the drop-down menu (WIP: Add more functionalities like network status display)
  • ๐Ÿ—ƒ๏ธ Silky sliding card system
  • โœจThe automatic reduction of brightness after a long period of no response and the brightness enhancement setting when clicking

Currently registered built-in card types ๐Ÿ“ฆ:

  • ๐Ÿ“… Calendar card
  • ๐Ÿ—“๏ธ Date card
  • ๐Ÿ’พ Hard storage information system
  • ๐Ÿ’พ Memory information system
  • ๐Ÿ‘จDefault user information card display

Note that you can also register your inbuild card, Please refer to How to build your own cards and insert them dynamically?

Project includes

(Note: the standard minimum dependencies are: TSLib for interaction ๐Ÿ“, QtCore ๐Ÿ”ง QtWidget ๐Ÿ–ผ๏ธ QtGui ๐ŸŽจ QtNetwork ๐ŸŒ basic support for the four-piece set)

Function / Application Name Dependency Conditions or Remarks Is it a built-in program Description Interface Display
๐Ÿ  CCIMX_Desktop Body Standard Minimum Dependency Yes Core Framework, Body f5059a311e8e70a7db9225de6fc79a98
โ„น About App Standard Minimum Dependency Yes Briefly introduce the basic situation of the desktop of this project image-20250614231912157
โœ๏ธ CCNoter (Notepad) Standard minimum dependencies Yes Super lightweight notepad image-20250614231754881
๐Ÿ“…CCCalendar (Calendar APP) Standard minimum dependencies Yes Super lightweight calendar APP image-20250706142207503
๐ŸŽจ SimpleDrawer (Drawing) Standard minimum dependencies Yes Super lightweight drawing, similar to Windows' "Paint" image-20250614232836661
๐Ÿ’ฌ Chat room Standard minimum dependencies Optional similar to QQ, P2P communication, can be used to communicate with the outside world CCIMXCommunicator
โ˜€๏ธ WeatherAPP (weather application) The device needs to have Internet access (network connection) Optional Get the weather forecast for the city. The API currently used is Mind Weather's image-20250614232722896
๐Ÿ“„ pdfReader (PDF reader) MuPDF dependency library Optional The most basic PDF browser, supporting chapter jump and viewing functions image-20250614232706288
๐Ÿ“ FileRamber (file browser) Standard minimum dependency Yes File management basics (file browser, with basic file navigation, Tiny version of Windows Explorer.exe) image-20250614232241212
๐Ÿ“ท GeneralLocalCamera (camera) OpenCV support required Optional Can take pictures image-20250614232213554
๐Ÿ“Š SystemState (system status view) Standard minimum dependency Yes View the CPU status, memory capacity status and process list of the running machine image-20250614232050420
๐ŸŽต MediaPlayer (audio and video player) QMediaPlayer supports ALSA or other audio, and video requires OpenCV support Optional NetEase Cloud style audio and video player, which can play both audio and video, and displays the NetEase Cloud style interface when playing audio! image-20250614232017544
๐Ÿ’ก LEDController App (light control) Platform LED driver Optional Hardware support required (light switch APP, Platform LED driver needs to be enabled) image-20250614231942332
๐ŸŒก๏ธ Environment App (environmental monitoring) AP3216C sensor driver Optional Hardware support required (AP3216C driver needs to be mounted and driven normally) image-20250614232559945
๐Ÿƒ SportHealth App (Sports Health) ICM20608 driver Optional Hardware support required (ICM20608 driver needs to be mounted and driven normally) image-20250614232631305
๐Ÿ–ผ๏ธ ImageWalker (Image Browser) Standard minimum dependency Yes The most basic image information browser, equivalent to the Windows image browser for the poor version image-20250614232520438
โœ๏ธ Markdown Reader Standard minimum dependency Yes Lightweight Markdown editing and preview (the most basic Markdown editing + preview function, supporting drafts / Load and save Markdown and basic shortcut functions) image-20250614232450028
๐Ÿ›œ CCNetHelper (network tool) Requires the network card to have network connection capability (network card driver is normal) Optional Supports network card information viewing, IP port scanning and basic test IP connection capability image-20250614231832285
๐Ÿฆ– Dinasour Game (mini game) Standard minimum dependency Optional Yes, it is the Google Dinasour Game, the version implemented with Qt6 Widgets :) image-20250614231727977
๐Ÿงฎ Calculator (Calculator) Standard minimum dependencies Yes Basic tools (standard calculator) image-20250614231703148
๐Ÿค– ImageProcessor (Image processing and reasoning) OpenCV, reasoning library (if any) Optional OpenCV support and reasoning support are required image-20250614232427874
โš™ Settings (Settings interface) Standard minimum dependencies Yes Desktop wallpaper, brightness and desktop application style settings image-20250614232323164
๐Ÿš€ Dynamic Application Launcher Standard minimum dependencies Yes Third-party application operation and management image-20250614232401883

๐Ÿงฉ Developer Reference


๐Ÿ“šProject Documentation

GCC

ARM

If you are interested in the project production process and development documents, please refer to the Documentations folder. For the build process and customization, please refer to the build manual:

‍๐Ÿ› ๏ธ How to build this project? (Supports X86 gcc, ARM-linux-gnueabihf-gcc and Windows GCC)

The document has been automatically deployed via GitHub Actions, visit: CCIMXDesktop: Main Page

๐Ÿ’ก WIP and Plans

๐Ÿš€ Planned optimization of the desktop body:

  • Added a desktop refresh function for buttons (wait for the next version to update the button driver, press the button to force return to the HOME interface)
  • Developed a to-do/reminder application that is deeply integrated with the desktop. Supports displaying upcoming reminders in the status bar and important reminders on the lock screen. (The plug-in system already supports)
  • Plan to add lock screen
  • Added remote app updates and downloads to support further desktop expansion
  • Added OTA-based hot updates

๐Ÿš€ Plan to write and provide more external basic programs:

  • โฐ Alarm clock APP
  • ๐Ÿ”Œ Serial port assistant
  • โœ… Task list

๐Ÿš€ Document plan

  • Further and more clearly improve the design document part of the project, and expand the relevant document auxiliary instructions for the gradual configuration of the desktop

๐Ÿ“ License

License

This project is based on the MIT license, and you are welcome to transplant, modify and use it at will!