CalcProgrammer1

joined 4 years ago
MODERATOR OF
 

I've decided to move the official home of OpenRGB on Lemmy to a different instance. I started on lemmy.ml because it was hosted by the Lemmy developers, but this instance has a certain (rather negative) reputation across the greater Threadiverse. I also prefer the mlmym (old Reddit style) instance and lemmy.today has this (https://old.lemmy.today/c/OpenRGB).

I will be over there on my lemmy.today account. Please join this new community to continue our OpenRGB presence on Lemmy!

Edit: !OpenRGB@lemmy.today

1
submitted 4 months ago* (last edited 4 months ago) by CalcProgrammer1@lemmy.ml to c/openrgb@lemmy.ml
 

I was hesitant to update the Flatpak build to a release candidate, but 1.0rc2 is the build we're recommending on openrgb.org and a bunch of distros have packaged it. To be fair, if there were more digits between 0.9 and 1.0 these rcs would've been proper releases. With a lot of users having success with 1.0rc2 on other platforms, 1.0 still being a ways out do to some backend reworks and cleanups, and 0.9 being ancient now, I've gone ahead and updated the Flatpak release to 1.0rc2. You will still have to setup udev rules outside of Flatpak, as that is a limitation of Flatpak itself.

[–] CalcProgrammer1@lemmy.ml 1 points 5 months ago

There are a handful of mostly-older games that had native Linux ports by third-party porting houses which broke save compatibility between the Windows and Linux versions of the game. However, these old Linux native ports are generally absolute garbage and you're better off running the Windows version via Proton, which does have compatibility with your Windows saves as it is running the same exact game version. It seems most games with native Linux versions released by the actual developer are fine, it's just when they offload the Linux version to a porting house that it can get messy. Those old third-party ported games were typically from the original SteamOS/Steam on Linux era (2012-2015 or so) before Proton became a thing though.

 

I've tagged the second Release Candidate build for OpenRGB 1.0. This build has quite a few user interface improvements over the previous 1.0rc1 release candidate build as well as some new device support and bug fixes. However, the main reason for this release candidate is that Microsoft has started flagging the WinRing0 driver we use for low-level IO (SMBus, Super-IO, etc) as vulnerable and Windows Defender is now tampering with OpenRGB installations, deleting this driver and breaking access to RAM and motherboard RGB controls. We have been working to replace WinRing0 with a new driver called PawnIO (https://pawnio.eu/) which is more secure as it keeps all of the SMBus controller accessing code kernel-side in signed Pawn modules. Now that we've resolved all of the bugs with PawnIO, I've decided to make a release candidate both to sunset the old WinRing0 support as well as introduce the new PawnIO support. For this reason there are two 1.0rc2 versions for Windows - 1.0rc2wr0 (with WinRing0) and 1.0rc2 (with PawnIO). PawnIO has two major caveats compared to WinRing0 which is why I wanted to publish a final WinRing0 build - it doesn't support 32-bit and it requires Administrator access all the time. If you have a use case where you need a 32-bit OpenRGB build that can access SMBus, you're stuck with WinRing0. Going forward, the OpenRGB Windows Installer gives you the option to install OpenRGB as a system service, which gets around the Administrator requirement by running the OpenRGB backend as a service. The GUI can then be used as a normal user, it just connects to the service using the SDK protocol instead of connecting directly to hardware. However, there are some UI inconveniences that running as a service still has (settings changes only affect the local copy, not the service, so configuring manually added devices, disabling devices, etc. requires manual config tweaking for the service's copy of the settings files).

I still want to do one major rework before 1.0 final. This will focus on some plugin API changes and SDK protocol changes to hopefully make using OpenRGB in client/server mode a better experience.

I have also tagged 1.0rc2 builds for the OpenRGB plugins. These rc2 builds of the plugins will work with OpenRGB 1.0rc1 and 1.0rc2.

 

OpenRGB 1.0rc1 is the first release candidate build before the upcoming official 1.0 release. This build should be considered stable, but we're looking to track down any major last-minute bugs before release. The plugin API has been updated, so if you're upgrading from 0.9 you will need to upgrade your plugins to the latest pipeline versions.

Builds for 1.0rc1 have been posted on https://openrgb.org/ as well.

 

AMDGPU driver maintainer Alex Deucher posted patches for enabling the OEM I2C interface on AMD GPUs on Linux. This interface is necessary for OpenRGB to be able to communicate with and control RGB devices on the graphics card PCB and to this point has only been available to Windows users of OpenRGB. No changes should be necessary to OpenRGB itself, once you install an updated kernel with these changes then your supported AMD GPU should be detected! I have tested Alex's development branch and was able to control my ASUS TUF RX7800XT and Sapphire Nitro+ RX580 lighting.

[–] CalcProgrammer1@lemmy.ml 1 points 2 years ago* (last edited 2 years ago)

Hopefully Qualcomm takes the hint and takes this opportunity to develop a high performance RISC V core. Don't just give the extortionists more money, break free and use an open standard. Instruction sets shouldn't even require licensing to begin with if APIs aren't copyrightable. Why is it OK to make your own implentation of any software API (see Oracle vs. Google on the Java API, Wine implementing the Windows API, etc) but not OK to do the same thing with an instruction set (which is just a hardware API). Why is writing an ARM or x86 emulator fine but not making your own chip? Why are FPGA emulator systems legal if instruction sets are protected? It makes no sense.

The other acceptable outcome here is a Qualcomm vs. ARM lawsuit that sets a precedence that instruction sets are not protected. If they want to copyright their own cores and sell the core design fine, but Qualcomm is making their own in house designs here.

 

I did a video tutorial and demonstration showing the Steam, FEX Emulator, and Distrobox setup I documented on the postmarketOS wiki here:

https://wiki.postmarketos.org/wiki/Steam

I go through the setup process for the Ubuntu container, FEX emulator, Steam, and then install and test two games - Half Life 2: Lost Coast and Tomb Raider (2013) to demonstrate gaming performance on an ARM device (in this case a Xiaomi Pad 5 Pro with Qualcomm Snapdragon 870 chip).

 

I managed to get Steam installed on my OnePlus 6T and Xiaomi Pad 5 Pro, both running postmarketOS, using Distrobox to create an Ubuntu 24.04 container and then installing FEX-Emu inside of it. I wrote up a guide on the postmarketOS wiki on how to do it, some issues I ran into, some tips on how to get around those issues, and a list of games I've tested. Feel free to expand upon this list if you try it out. Older games such as Half Life 2 are quite playable, especially if your device supports keyboard and mouse input. I have not yet tested using a controller.

 

I have added support for system-wide plugin installations in Linux for the upcoming 1.0 release. The plugin files can be installed system-wide to the /usr/lib/openrgb/plugins path, which allows them to be provided by distribution packages rather than manually downloading them.

I have created AUR packages for the following plugins and they have been picked up by the Chaotic AUR repository if you want binary builds.

  • openrgb-plugin-e131-receiver-git
  • openrgb-plugin-effects-git
  • openrgb-plugin-hardware-sync-git
  • openrgb-plugin-visual-map-git

I plan to update the rest of the plugins on https://gitlab.com/OpenRGBDevelopers and get them into the AUR as well before 1.0 releases. Until that happens, you will need to use the openrgb-git AUR package to utilize these new plugin packages. The current 0.9 release in the main repository does not support system-wide plugin installation.

 

I made a 3D printed, Arduino-powered desk fan based around a 120mm Corsair QL120 ARGB fan after seeing Noctua's desk fan. I wanted something similar but with RGB. It is based around CorsairLightingProtocol so it syncs with OpenRGB but also has a knob to adjust fan speed and LED brightness directly. I made a video showing it off but if you prefer to read about it, I have project documentation and files (code, assembly instructions, and 3D models) on GitLab here:

https://gitlab.com/CalcProgrammer1/OpenRGBDeskFan

The 3D models are also on Thingiverse:

https://www.thingiverse.com/thing:6655697

[–] CalcProgrammer1@lemmy.ml 0 points 2 years ago (2 children)

I don't disagree, but today the blame lies with CrowdStrike, not Windows. As much as I hate defending Windows.

[–] CalcProgrammer1@lemmy.ml 2 points 2 years ago* (last edited 2 years ago) (2 children)

The only mistake Billy made is giving anything to AdBlock Plus, the people who have sided WITH the ads, instead of uBlock Origin, the true MVPs of the ad blocking world. I guess uBlock doesn't accept donations unfortunately, but still, ABP is shady and I would not support them.

[–] CalcProgrammer1@lemmy.ml 0 points 2 years ago (1 children)

It was mlmym but then mlmym.org shut down. Too bad lemmy.ml doesn't run it under the old.lemmy.ml like some other instances do. I don't want to move instances and lose my history to get it back and I don't want to trust random third party ones. Maybe I should self host it at some point.

[–] CalcProgrammer1@lemmy.ml 0 points 2 years ago

I have a ROG Ally and a Steam Deck. The Steam Deck experience is miles ahead. Windows is such a limitation on these handheld devices (and dare I say PC gaming in general). SteamOS is the real MVP behind the Steam Deck, it makes everything feel seamless.

The Ally feels like a crappy ASUS launcher stapled on top of an unoptimized Windows desktop, since that's exactly what it is.

Also, the ASUS ROG Ally controls are nowhere near as nice as the Deck's. The Deck sticks feel better. The touchpads allow for mouse control.

Get the Deck.

[–] CalcProgrammer1@lemmy.ml 0 points 2 years ago

The Deck can output up to 4K 60Hz with the right dock, so the picture quality is not going to be limited by the supported resolution of the Deck. What will limit the picture quality is that SteamOS by default runs games at 1280x800 or 1280x720 for 16:9 external screens, regardless of the actual selected resolution. It will upscale games rendered at 720p to whatever the actual output resolution (1080p or 4K) is. There is an option in the per-game settings in the SteamOS UI to set the resolution for each game. If you pick Native, it will allow the game to render up to the screen's native resolution for a full-quality image, no different than you would get on a normal PC. However, the Steam Deck's GPU isn't very powerful compared to a desktop PC so you aren't going to be able to push most games that high. A lot of older titles and 2D games can run fine at native 1080p on the Deck though.

[–] CalcProgrammer1@lemmy.ml 0 points 2 years ago

I like the moon in the background and I like that it is stylistically similar to the Firefox icon. My only complaint is the eye, not really a fan of the swoosh effect on the eye.

[–] CalcProgrammer1@lemmy.ml 0 points 2 years ago

Linux supports more controllers out of the box than Windows in my experience. For example, the original Xbox controllers with an adapter cable to give them a normal USB-A connector work great in Linux but require third party drivers in Windows.