# [Project] Framework Laptop Hub PY Edition - A Python-based Control Center for Framework Laptops 16 & 13 šŸš€

Hey Framework Community! :star2:

Iā€™m thrilled to share the latest developments and improvements Iā€™ve been working on for our project. Your support and feedback have been invaluable, and I canā€™t wait for you to experience these enhancements. Hereā€™s a detailed look at whatā€™s new:

:hammer_and_wrench: Bug Fixes & Code Reorganization

  • Eliminating Freezes: Iā€™ve dedicated significant time to identifying and fixing bugs that caused unexpected freezes. This means a smoother, more reliable experience for everyone.
  • Cleaner Codebase: By reorganizing the code, Iā€™ve improved the overall stability and maintainability of the project, making future updates faster and more efficient.
  • Clean exit option: Now the program can be fully exited without crash using the red button.

:desktop_computer: Model Detection Overhaul

  • Smart Framework Laptop Recognition: Upon launching the program, it now intelligently detects your specific Framework Laptop model. This ensures that the appropriate settings and optimizations are applied automatically, providing a tailored experience right from the start.

:battery: Power Profiles Revamp

  • Preparing for Throttlestop Integration: Iā€™ve revamped the power profile management to seamlessly integrate Throttlestop for Intel CPUs in future updates. This will offer more granular control over CPU performance and power usage.
  • Enhanced Settings Menu: Due to the new detection system, direct editing of power profiles in the Settings menu is temporarily disabled. This is a necessary step to ensure compatibility and prevent conflicts as I finalize the integration.

:bar_chart: Adaptive Monitor Display

  • dGPU Detection: The monitor section now accurately detects whether your system has a dedicated GPU (dGPU). Based on this detection, it dynamically adjusts the displayed statistics, showing only the relevant information and eliminating unnecessary clutter.

:gear: New Startup & Resource Options

  • System Tray Launch Option: You can now choose to have the app start minimized in the system tray. This is perfect for those who prefer a cleaner desktop experience.
  • Adjustable Monitor Refresh Interval: To cater to users who want to minimize resource usage, thereā€™s a new option to change the update frequency of the monitor section. Lowering the refresh rate can help conserve system resources without sacrificing essential functionality.

:arrows_counterclockwise: Updates Manager: WinGet Only

  • Transitioning from Pip to WinGet: Based on your feedback, the ā€œUpdates Managerā€ has been completely redesigned to use WinGet exclusively. This change helps avoid package conflicts and ensures a more streamlined update process. If youā€™re using Pip, you can continue to manage your Python packages manually, maintaining full control over your environment.

:zap: Enhanced Windows 11 Power Plan Features

  • :mute: Silent Profile: This profile is optimized for maximum energy savings, perfect for extending battery life when you need it most.
  • :balance_scale: Balanced Profile: Strikes an ideal balance between battery life and performance, making it suitable for everyday tasks and general use.
  • :fire: Boost Profile: Maximizes performance without compromise, ideal for demanding applications and intensive tasks.

:test_tube: Final Testing & Bug Fixes

Iā€™m currently in the final stages of testing these updates to ensure everything runs smoothly. My focus is on ironing out any remaining bugs and ensuring that the update delivers the best possible experience for all users.

:pray: Thank You for Your Support!

Your patience and support have been incredible throughout this development process. Iā€™m committed to delivering a high-quality update that meets your needs and enhances your experience. Stay tuned for the beta and official release, and please keep your feedback comingā€”itā€™s essential for continuous improvement.

:sparkles: Together, weā€™re making something amazing!

ā€” John Dupuis

  1. :link: Stay Connected:

Feel free to reach out with any questions or suggestions. Letā€™s continue building something great together!

7 Likes

The update is available on github and Patreon Have fun and happy holidays to erveryone !

Some news for the Linux lovers :point_right: :penguin:Linux

Nice app. I like the French word in the English version of the app. ā€œACTUELā€

1 Like

Yeah i forgot this one :wink:

:penguin: The Journey to Fedora 41 Begins! :rocket:

Hey everyone,

Iā€™m beyond excited to announce that the Framework Hub PY Edition is officially being ported to Fedora 41! :tada: But let me tell youā€”itā€™s no small feat. This isnā€™t just about swapping a few lines of code or tweaking a config file. Itā€™s a full-scale adaptation of the entire project, and the journey is both exhilarating and massive.


:star2: Why Fedora 41?

Fedora isnā€™t just another Linux distroā€”itā€™s a powerhouse for developers, tech enthusiasts, and anyone who loves pushing boundaries. But with that power comes complexity. Every piece of this project, from the GUI to the hardware monitoring, needs to be meticulously reworked to integrate seamlessly with Fedoraā€™s ecosystem.

After testing several Linux distributions on my Framework Laptop 16, I found Fedora to be the most stable and reliable distro for the job. Its performance, driver compatibility, and overall experience make it the perfect fit for this ambitious port.


:fire: The Challenge

Adapting the project means rethinking every detail, ensuring that all the features you love work flawlessly in a completely different environment.

  • Windows tools like LibreHardwareMonitor and powercfg ? Gone. Replacing them with Linux-native solutions like lm-sensors , amdctl , and cpupower takes time and testing.
  • The GUI? Itā€™s getting a careful overhaul to maintain the same sleek, polished look while respecting Fedoraā€™s environment. Fonts, layouts, colorsā€”everything stays true to the original design. ( Donā€™t worry iā€™ll keep the Klingon Traduction :wink: )
  • Compatibility? Every moduleā€”hardware detection, power management, performance tuningā€”has to be rebuilt and tested from the ground up.

This isnā€™t just a simple port. Itā€™s an ambitious rebuild that touches every corner of the Framework Hub.


:hourglass_flowing_sand: Why Itā€™s Taking Time

Iā€™m investing countless hours into this because I want it done right. Fedora is powerful but also unique, and ensuring that this project feels just as smooth and intuitive as it does on Windows is a painstaking but rewarding process.


:star2: Whatā€™s Next?

  • Sneak peeks of the progressā€”youā€™ll get to see the Linux version come to life!
  • Detailed breakdowns of the technical hurdles and how Iā€™m overcoming them.
  • Early access builds for supporters who want to help shape the final product.

:sparkling_heart: Special Thanks

I want to extend a huge thank you to all my Patreons and this amazing community for their support. Every bit of encouragement, feedback, and help has made this journey possible.

A special shoutout to Nirav Patel, who will provide essential help for Intel CPUs in the Linux and Windows version.

Additionally, Iā€™m excited to share that the entire projectā€”both the Linux and Windows versionsā€”will remain completely open-source. You can follow the development, contribute, or just explore the code on GitHub:
:point_right: github.com/Oganoth/Framework-Hub-PY
Link to the original post for Windows 11 :point_right: Windows 11 post


:gift: Want to Support the Development?

If youā€™d like to help shape the future of the Framework Control Center and gain access to exclusive updates and early builds, consider supporting me on Patreon:
:point_right: patreon.com/Oganoth

Every contribution helps me dedicate more time and resources to making this project as perfect as it can be.

Thank you all for being part of this journey! Let me know in the comments what excites you most about seeing this project on Fedora 41, or share any must-have features youā€™d like to see!

Cheers,
John D.

6 Likes

Do you know of a way to implement this without enabling unsigned drivers?

Iā€™ve been tweaking a lot for this, at the moment the feature is disabled by default because i donā€™t like the idea of using test-signed or unsigned drivers (Security problems of course), Iā€™m waiting for the framework team to pull some changes for ectools made on the Github here.
That would enable the fonctionnality without the need of test-signed drivers :slight_smile:

2 Likes

Iā€™m not really an expert with Linux (I just use it, and am relatively new to it still), would a port to Fedora mean that it would work on other distros? Or would they need to be ported separately? Sorry if it seems like a silly question.

1 Like

I plan to make a ā€œuniversalā€ package later, but at the moment i focus on the Fedora 41 port and integration with GNOME :slight_smile:

This is pretty cool, thanks!

2 Likes

Fixed some bugs and UI problems in the Python version for Windows 11 Github
Fixed some bugs and Windows problem with pythonnet for the .exe Patreon

Have a nice day everyone !

2 Likes

Some news about a new option a LOT of people asked for : Did you say COLORS?!

Power Plans Enhancement for Framework Hub, Github updated : Changelog :battery:

More updates : Changelogs, Happy New year ! :tada:

Hey everyone,
Iā€™m looking for help about ADLX integration inside Framework Hub.
If you have any knowledge about AMD ADLX and know a bit of Python, python .net, ctype and want to help, please do so in the Experimental Branch i just created or contact me :pray: Github

Bugfixes for python version on github : Changelog :smiling_face:
Compiled .exe version with latest update : Be my Patreon :heart:

1 Like

Wow this is amazing! I am working on building a GUI for the ryzenadj in rust and your app is so much more polished!

I am on Pop OS though, so I will wait till you have your linux version ready.

My app is more intended to allow me to manually change the power limits to whichever amounts i want but I have already encountered some issues you may have / want to consider on your linux build:

  1. On my 7640u, the STAPM limit is bound to the fast limit. Looking at the Ryzenadj docs, this is the case for Zen 2 / 3 unless you specifically disable STTv2. Not sure if you figured out how to override this? Source

  2. On my 7640u, the max I could set fast was 53W and slow limit was 43W. The lowest was 4 W for both

  3. Iā€™ve been trying to figure out how to track actual power consumption on linux when on power but i havenā€™t been able to figure it out yet. USB C interfaces only show negotiated values and not actual value of voltage/amperage/power received. Iā€™m not sure if you or anyone in this forum is aware of how to get this information?

Iā€™m still trying to work through pkexec (instead of sudo), packaging and also tray icons / background execution, so itā€™s quite a challenge getting an app up on linux.

Lastly, you may want to consider something like appimage for cross-distro support(though I have to admit I have not yet tried my own appā€™s appimage on other distros).

1 Like

Hi ! So nice to see someone struggling with RyzenADJ like I did. :joy:

I tried a lot of things on Fedora 41 (I even tried a GSE but Iā€™m not comfortable with it atm so I stick to python) but yeah I had more issues with RyzenADJ on Linux than with Windows 11 (strange I know, maybe Iā€™m getting old )

Youā€™re correct about the STAPM/Fast limit binding issue. I havenā€™t yet implemented STTv2 disabling, but itā€™s something I should consider. My 13_AMD power profiles are currently defined with these limitations in mind.
Since I only have a 7840hs, I need more feedback for U series, but from what I saw, those max/lowest watt limits are typical for the 7640U. Ryzenadj generally enforces them per CPU constraints.

For real-time power tracking on Linux, youā€™ll need to rely on sensors like hwmon, powercap, sensors or ACPI power readings; USB PD only shows negotiated power, not actual draw, so direct voltage/current measurement isnā€™t readily exposed without additional hardware.

Iā€™d love to collaborate on your Linux version, especially since youā€™re working with Pop OS! Iā€™d be happy to contribute if you have a GitHub repository. Alternatively, I could create a dedicated Linux branch in my repository that you could modify as you see fit.

While Iā€™m currently focused on optimizing the Windows 11 version and fixing some bugs, I believe your Linux expertise would be invaluable. Your experience with Pop OS would help ensure we build something that works great for the Linux community.

Would either of these collaboration approaches interest you? Feel free to let me know what works best for you!

Hey everyone !

Can you tell me what you would like me to focus on here : Framework Hub next features

Thanks for your help :heart: