Purchase guides

I get asked quite often about e.g. which desktop PC components and laptops to purchase. These guides will hopefully give you a general idea. Before starting to look for devices, please ask yourself these questions:

  • What are you going to use the device for? Does your use case need lots or performance, or would a cheaper alternative be sufficient?
  • How long are you planning to use the device? Is it a better idea to buy a future-proofed device, or buy another after a few years? When the device will eventually be decommissioned, are you going to disassemble it for parts, or are you going to repurpose it as a whole? Some parts are worth future-proofing, whereas with some parts the additional features and performance are not worth the additional cost.
  • Does the device have to be new, or would a used one be sufficient?

Where to find good quality reviews

  • Gamers Nexus
  • Linus Tech Tips used to be a good source of reviews. As of 2023, not anymore, as their recent videos have had numerous issues with data and claims that are blatantly incorrect.

How to find good deals

  • Ebay is a good source for used enterprise networking hardware
  • FibreStore is a good source for new enterprise networking hardware
  • Geizhals is a good comparison site for Central Europe. It has extensive filtering tools and is therefore good for finding models with the features you want.
  • Hinta.fi and Hintaseuranta.fi are good price comparison sites for Finland.
  • Huuto.net and Tori.fi are good places to find used devices in Finland.
  • Huutokaupat.com is an auction site for professional sellers such as liquidations. You can find incredible deals on professional hardware, but those are quite rare.
  • IO-Tech BBS is comprehensive IT forum with a section for sales
  • First think carefully whether you actually need the device, and whether you need it right now or perhaps only after a few years. The electronics industry moves forward so rapidly that it’s rarely a good idea to purchase a device before you actually need it. If you have decided that you actually need the device, take your time to find the models that suit your needs. Then place price alerts on them on several comparison sites and wait for a discount season such as Black Friday. If the price goes below the limits you have set, buy the device. :D

Desktop PC components

If at all possible, buy your PC as components or as pre-assembled from individual components. Don’t buy fully pre-made PCs, as those have often proprietary form factors and power delivery solutions that make upgrading and finding replacement parts difficult or even impossible. Those also often have poor-quality components in their power delivery and bad airflow design in the case.

If you’re only using the computer for light tasks such as web browsing, consider buying a laptop and a Thunderbolt dock instead.

CPU

  • Geizhals lists: AMD, Intel
  • CPU is the most important component for professional workloads such as image and video editing and software development. For these workloads multi-core performance is the most important quantity.
  • For gaming single-core performance is the most important quantity.
  • Frequency is not a good indicator of performance. Look for benchmark results instead.
  • If you’re buying a used device
    • Ensure that the CPU is compatible with Windows 11
    • Try to buy the CPU and motherboard together, and possibly the RAM as well. If they don’t work, it’s easier to complain to one seller than multiple.

GPU

  • Geizhals list
  • GPU is the most important part for gaming.
  • Depending on the state of the cryptocurrency market, finding a GPU can be difficult, and the prices may be inflated. In those times finding a good deal can take a lot of work.
  • If you’re streaming or recording your monitor, look for a GPU with a good encoder. At the moment Nvidia’s NVENC is superior to the alternatives. However, many of the cheapest GPUs such as the MX series and the GTX 1600 series don’t include NVENC, so one should be careful when choosing the GPU.
  • At the moment GPUs are supported for about nine years after release. This is the maximum time you can expect the GPU to be compatible with the latest OS, both on Windows and on Linux. (For example the GTX 700 series is supported on Ubuntu 22.04 only with legacy drivers, which don’t support the latest CUDA libraries.)
  • New GPUs often have significant feature improvements such as video encoders and decoders and newer connector versions. Therefore, buying a lower-end model from a newer series instead of a higher-end model from older series may be worth the additional price, even when the raw performance would be similar.
  • AMD GPU drivers are included in the Linux kernel and therefore work out of the box, whereas Nvidia GPU drivers have to be installed separately and are compatible with new Linux distribution versions only as long as the GPU is officially supported by Nvidia. AMD GPUs should therefore have a longer lifespan on Linux than Nvidia GPUs. However, AMD scientific libraries have to be installed manually, and their support of new Linux distribution versions is notoriously poor. Therefore, if you want to do any GPU-accelerated computing, even OpenCL, you should get an Nvidia GPU instead.
  • Main differences between consumer (GTX, RTX, Radeon) and professional cards (Quadro, Tesla, Radeon Pro)
    • Professional cards have ECC memory and registers, whereas consumer cards often don’t (or have ECC only in the memory and not for the registers). ECC memory is highly useful for scientific simulations and other loads that require precision, but not for machine learning.
    • Professional cards use different drivers that have been optimized and tested for CAD instead of games.
  • GDDR6X has ECC-like error correction, but without error reporting.
  • RTX 4000 series and later GPUs use the new 12VHPWR power connector. If you’re planning to install one of these in a new build, you should get a PSU that also has the same connector, or one for which the manufacturer provides official adapter cables. Third-party adapters are a fire hazard when used with multi-rail PSUs or when plugged to ports with a too low power rating. The connector is also very fragile, so avoid bending the cables when doing cable management. Gamers Nexus, JayzTwoCents

RAM

  • Geizhals list
  • 8 GB is sufficient for basic tasks, but I recommend 16 GB, especially for gaming. 32 GB is worth considering for professional workloads and virtual desktops. Higher amounts of RAM are only necessary for specific use cases such as virtual machines and scientific computing.
  • Frequency is not a good indicator of performance, as the latency matters a lot. In addition to the frequency, look for the absolute latency in nanoseconds. It’s the latency number divided by the frequency, and lower is better. You should also check the maximum frequency supported by your CPU and motherboard.
  • ECC memory is worth considering for professional use that requires reliability. On AMD this is unofficially supported by most CPUs and some consumer motherboards, whereas on Intel this is found only on professional hardware.

Motherboard

  • Geizhals lists: AMD AM5, Intel Socket 1700
  • Think carefully what features you actually need, as additional features can crank up the price quite quickly.
  • For compatibility with Windows 11, the CPU+Motherboard combination must have TPM 2.0 support, either in the firmware or as a physical chip.
  • Read reviews about the VRM temperatures and quality for reliability and overclocking headroom. A good motherboard with a low number of VRM phases can be as good as one with a higher number of phases.
  • There tend to never be enough USB ports, but more can be added with a PCIe x1 add-on card.
  • If you have a NAS, an integrated 10 Gb Ethernet controller is worth considering. When installed as an add-on card, 10 Gb Ethernet controllers tend to need a longer than x1 PCIe slot, requiring installation in one of the x16 slots on the motherboard. Many motherboards split the lanes between the x16 slots to e.g. x8 per slot when multiple cards are installed, so installing a separate Ethernet controller may halve the bandwidth of your GPU. However, a used add-on card is usually the cheaper option.
  • Ensure that you have enough PCIe slots and lanes, especially if you’re building a server. Installing multiple network cards and SATA controllers will easily consume the most of your PCIe slots.
    • On many consumer boards several features (PCIe ports, Thunderbolt, SATA etc.) are connected to the same PCIe lanes, and cannot be enabled simultaneously. Carefully read the manual of the motherboard before purchasing to ensure, that you can simultaneously enable all the features you need.
  • With a Thunderbolt port you can have a Thunderbolt dock that makes it a lot easier to manage the cables, especially if you have an electric standing desk. With optical cables you can even install the computer in another room and have complete silence in your room!
  • Wired network connectivity should be preferred over wireless whenever possible. However, if wired networking is not possible, you should use a Wi-Fi adapter that is either included in the motherboard or connected over PCIe. A well-positioned external antenna is necessary for a fast and reliable connection.

SSD

  • Geizhals list
  • The operating system should be installed on an M.2 form factor SSD with PCIe connectivity (NVME). Those can be quite expensive especially at the larger sizes, so files should be stored on separate drives such as SATA SSDs. If you have lots of large files such as movies, it’s preferable to build a separate server (NAS) for them.
  • Throughput is only one of the important characteristics. IOPS is also important, and largely determined by the controller.
  • Avoid QLC except for separate game drives, as it has bad write speeds and wears out quickly. Prefer TLC instead.
  • Games take a lot of space. For gaming, 1 TB is the minimum size, and 2 TB is worth considering.
  • If you need encryption, look for an SSD with OPAL support. Other protocols are often proprietary and poorly implemented.
  • As of 2022, PCIe 4.0 may not be worth the additional price.

Power supply (PSU)

  • Geizhals list
  • Aim for at least 80 Plus Gold certification. This is also an indicator of build quality.
  • Look for a semi-passive model. This means that the fan should stop spinning with low loads. It will reduce the noise and extend the lifetime of the fan.
  • If you pay for your electricity yourself and have the computer on for the most of the time for e.g. cryptocurrency mining or scientific computing, higher efficiencies are worth considering, as they will pay for themselves in the long run.
  • Newer GPUs tend to have higher power consumption, so it’s a good idea to leave some headroom in the power budget.

Cooling

  • The best air coolers are sufficient almost any CPU if you’re not overclocking. For the average user the choice between an air cooler and a closed-loop water cooler should be based on aesthetics and reliability.
  • The largest Noctua coolers are among the best air coolers.
  • With both closed and custom water cooling, radiator surface area is the most important factor for performance. For a CPU the radiator should be at least 2x 120 mm but preferably 2x 140 mm. If you have a GPU in the same loop, the radiator should be at least 3x 120 mm but preferably 3x 140 mm or a thick 3x 120 mm.
  • 140 mm fans can move larger amounts of air with the same noise level as 120 mm fans. 2x 140 mm is about as performant as 3x 120 mm but can be more quiet.
  • The closed-loop water cooling systems often come with bad fans that you should replace to reduce the noise.
  • Custom water cooling is expensive and requires a lot of work. If you end up building one, be prepared to spend at least a full week assembling the computer, and a full day or two each year flushing and cleaning the loop. For the most complex loops you may have to modify the case with metalworking tools. Don’t build a custom loop unless you have multiple GPUs or are especially concerned about aesthetics or noise.
  • The CPU socket orientation varies on server motherboards. If you have one, ensure that you get a CPU cooler with the correct orientation for the best airflow.

Fans

  • Noctua is a good choice.
  • If you want RGB, consider the Corsair ML series, as on low RPMs it’s about as quiet as Noctua fans thanks to its maglev bearing. Don’t confuse the ML series with the more noisy but better-lighted LL series. The LEDs use the standard WS2818B protocol at 5 V and can therefore be controlled with an Arduino by attaching the control pin from the splitter box to the Arduino and having a common ground. Be careful with the pin connections, though, as wrong connections can easily burn out the LEDs.

Case

  • Geizhals list
  • Consider a 19” rack case, as then you can install all your equipment nicely in a rack below your desk, or take the computer with you to e.g. a LAN party in a rack carrying case.
    • 5U and higher cases are difficult to find, so you may have to go with a 4U one. However, this significantly limits the maximum height of the CPU cooler. Therefore, an all-in-one (AIO) water cooler will probably be the best option for high-performance cooling.
    • Some manufacturers:
  • If you want a larger case, you should consider installing a regular PC case that is small enough to be put on a 19” rack shelf. The width of the space in a 19” rack is 17.75” = 450.85 mm, so any case with a total height smaller than this should fit. Depending on how close the side panels of your rack are, you should also include the legs of the case in your estimates. This kind of mounting puts the side panel on top. Therefore, a glass side panel is very easy to break by dropping something on it, and a solid side panel should be preferred.
  • Good cases that probably don’t fit in a rack, unless you put them in through a side panel
  • The case should have a USB-c port in the front for attaching e.g. a phone or a USB-c FIDO2 security key.
  • Optical drives are no longer worth it, so there is no need to have space for them. Use an external drive instead.

Expansion cards

  • PCIe USB controllers are the best way to add more USB ports.
  • PCIe SATA controllers
    • If you have PCIe slot that can hold an x8 card, get a used enterprise card on eBay, e.g. PERC H200 or PERC H310.
    • Avoid cards that have port expanders in them! (e.g. JMB5XX.) If one of the drives connected to a port multiplier fails, it may interrupt connectivity for the rest of the drives, causing irrecoverable damage to a RAID array. There are also various driver issues. (Forum post)
    • If you have only a PCIe x1 or x4 slot, an ASM1166-based 6-port card is an OK choice. The cards with more ports are based on port expanders and should be avoided. However, please note that the cards with PCIe x4 ports are actually only x2.
    • Performance comparison of various controllers
    • List of controllers compatible with Unraid

Laptops

  • The ThinkPad T-series is built to last. If you don’t need high gaming performance, get one if you can afford it. They have:
    • High build quality
    • UEFI & ME security patches for years
    • Various features that are difficult to find on consumer laptops: integrated LTE/5G modems, privacy filters on monitors, fingerprint readers, identity card readers, NFC etc.
    • Good Linux support from the community
  • The Framework laptop has great upgradeability and repairability, which give it a long lifespan and therefore good value for money.
  • For the CPU, GPU, RAM and SSD, please see the desktop tips
  • Laptop performance is affected a lot by cooling, and therefore performance test results for the individual components may not correspond to actual performance of the particular laptop model.

Connectivity

  • Thunderbolt is a must-have, if you want to connect the laptop to a high-resolution monitor or multiple monitors. If you’re gaming only at home and at LAN parties and have an external monitor, consider purchasing an external GPU to get desktop-level gaming performance out of your laptop.
  • USB-c charging makes it a lot easier to charge the laptop with docks, portable charges and power banks.
  • 4K 60 Hz output requires HDMI 2.0 or later, which is quite rare on older laptops.

Battery

  • Most laptops have either lithium-ion (Li-ion) or lithium polymer (LiPo) batteries.
  • The lifetime expectancy of both battery types is about three years. Around this time the batteries have lost a significant fraction of their capacity, and LiPo batteries also tend to puff over time, especially when exposed to the heat from the laptop. The latter will cause a fire hazard and physical damage to the laptop from the pressure they create when expanding. I’ve seen several laptops where the thickness of the battery has more than doubled over time, cracking the laptop open. Therefore, Li-ion batteries should be preferred over LiPo batteries. Often user-replaceable batteries, especially the thick ones, are Li-ion, and the internal batteries are LiPo.
  • Internal batteries can also be replaced on most laptops, but the availability of replacement batteries is worse.

Monitor

  • For good eyes, 1080p is the optimal resolution for 14”. For older eyes, 1080p and 15” is a good combination.
  • Higher resolutions require the use of scaling to make text large enough to be readable. This may cause problems with older software, and on Linux the use of multiple monitors with different scaling levels requires Wayland.

LTE/5G modem (WWAN)

  • If you can somehow get a multi-SIM cell phone plan or data plan or can afford the extra data plan, having an integrated modem in the laptop is a lot easier and more reliable than sharing internet from a phone.
  • This feature is often found only on business laptops such as ThinkPads.
  • 3G network will be shut down in a few years, so the modems on older laptops will then become pretty much useless.

External GPUs

  • eGPU.io
  • Geizhals list
  • Prefer an enclosure with a standard ATX power supply, as you can then replace it in the case of a failure.
  • Thunderbolt 3 and 4 bandwidth is limited to PCIe 3.0 x4, whereas on desktops GPUs are usually connected by PCIe 3.0 x16 or higher. This significantly limits the bandwidth between the CPU and GPU, and results in slightly worse performance than on a desktop. Therefore, mid-range cards will provide the best value for money.
    • Some laptops provide only PCIe 3.0 x2 over Thunderbolt, which limits the performance further.
  • If you need more than 1 Gbps networking or multiple peripherals, those should be provided by a separate dock, so that they don’t compete with the GPU for Thunderbolt bandwidth.
  • Mantiz eGPUs are good choices
  • Razer Core X Chroma is buggy on Linux

Monitors and TVs

Panel technology

  • Avoid TN panels, unless you’re a gaming professional and absolutely need the fastest refresh rates possible.
    • They have bad viewing angles and color space
  • Avoid OLED panels if the monitor/TV is connected to a computer
    • Any static objects on the screen such as the taskbar will be permanently burned in within months of active use
  • VA and IPS are good panel technologies

Sizing

  • For desktop monitors, 27” and 1440p has the best price-to-performance ratio as of 2022.
  • For older eyes, ~31” and 1440p may be preferred due to the larger default text size.
  • Higher pixel densities are barely noticeable but require a lot more powerful hardware for gaming.
  • 34” 3440x1440 ultrawide is the optimal size for professional use. You can easily fit two large documents or your code and the documentation on the screen at the same time.
  • A 4K display should be ~40” or larger. If you install them on a monitor arm and plan your apartment properly, you can also use them as your TV.
  • Gaming on 4K requires a very powerful computer (RX 6000 or RTX 3000 series or later GPU).

Connectivity

  • If you want to connect several devices to the same monitor, ensure that it has a sufficient number of connections that can drive the monitor at its full refresh rate. Desktop monitors often have a too old HDMI version, and TVs can have the latest HDMI version on only some of their ports.
  • HDMI 2.0 is required for 4K 60 Hz, and HDMI 2.1 for 4K 120 Hz and variable refresh rate. However, with HDMI 2.1 most features such as the aforementioned are optional and their presence has to be verified manually.

Refresh rate

  • High refresh rate is more important than variable refresh rate such as FreeSync or G-Sync, as the latter require specific support from software. Therefore, look for monitors with a 120 Hz or higher refresh rate. Having a high refresh rate also affects the smoothness of all desktop applications and movies. Most movies are shot in 24 or 25 FPS, and therefore they lag a lot on 60 Hz monitors where every other frame has to be shown once and every other twice to match the monitor refresh rate. This effect is a lot smaller on high refresh rate monitors. On Linux variable refresh rate is not supported if you have multiple monitors.
  • Some TVs already have 120 Hz refresh rates

HDR

  • On Windows HDR is supported with consumer GPUs only on fullscreen applications such as games. The support for HDR photos and videos is very limited.
  • Properly displaying HDR content requires a high maximum brightness such as 1000 nits, aka. HDR1000. Especially HDR400 is not worth it, unless you want to test the HDR compatibility of various sofware.

Smart features

  • Prefer Android TV over manufacturer-specific proprietary implementations
    • For compatibility and good image quality with future streaming services, ensure that the TV has the AV1 hardware decoder and Android TV 10 or later.
    • For compatibility with the photos of future cameras, ensure that the TV has Android TV 12 or later, as it includes support for the AVIF image format.
  • To have easy access to your media, a smart TV should be compatible with Plex or Jellyfin, preferably both.
    • Plex compatibility list
      • Note that unlocking the full features of Plex costs money, whereas Jellyfin is free.
    • Jellyfin compatibility list
      • There is also some support for Samsung Tizen TVs, but it’s rather complicated to set up (as of 2023). GitHub, Reddit
    • Android TV is compatible with both Plex and Jellyfin, and this is yet another reason to choose Android TV over manufacturer-specific proprietary implementations.

Misc

  • VESA mounting support is a must-have, as monitor arms save a lot of desk space, and you may want to install them later.
  • For TVs, bigger is better, but you should think on how to mount them. Many TV stands have quite a small maximum size.

Phones

  • Phone manufacturers often provide security patches for only 1-2 years after the model is released. If you want to use the phone for longer, look for a phone that is supported by an alternative Android version such as LineageOS.
  • RAM: at least 6 GB
    • Having less RAM will result in sluggishness.
  • Storage: at least 128 GB
    • Apps take a horrible amount of space these days.
  • Camera
    • 4K 60 Hz video recording. 60 Hz video is a lot smoother than the 30 Hz video that most phones record.
    • Camera2 API support for RAW photography and manual control of various features such as focus, white balance, ISO and shutter speed. You can test this with the Manual Camera Compatibility test app and the Open Camera app.
  • Modem: 5G with support for at least the n78 band, which is the primary 5G band in Finland
    • n28 band is for longer ranges with lower speeds, and n258 is the mmWave band for short-range connectivity for mass events such as concerts and festivals
  • NFC
    • The tags are cheap on AliExpress and can be used for various purposes
    • Makes the use of a physical security key such as a YubiKey a lot easier
  • Android version: at least 12 (as of 2022), preferably the latest available
  • Devices with the aforementioned features
  • Security: StrongBox secure element (SE)
    • Enables secure hardware-backed storage of credentials. (Most other credential stores on Android are based on software or firmware and can be broken.)
    • Only available on some devices with Android 9 and later
    • Its presence can be verified with the Key Attestation Demo app.
  • Google Pixel

Media boxes

Networking

Network architecture

  • Don’t spend extra money for a motherboard with integrated 10 Gbps Ethernet, unless you’re running out of PCIe lanes. If you have free PCIe slots left, install a separate network card instead.
  • 10 Gbps switches are expensive and noisy. For a home network it’s more cost-effective to install a direct 10 Gbps or 40 Gbps connection between the computer and the server.
  • PoE is very handy if you’re going to install multiple Wi-Fi access points or security cameras. However, PoE switches are more noisy than the non-PoE versions.

Wi-Fi routers / access points / firewalls

To be specific, the so-called “Wi-Fi routers” are not usually routers, as they have only one connection to the internet. True routers have multiple connections to the internet and decide, to which physical connection each packet should be sent. Instead, “Wi-Fi routers” are a combination of a firewall and a Wi-Fi access point (AP), that runs some additional services such as DHCP and DNS. However, they are often called routers for simplicity.

Most manufacturers are notoriously poor in providing security updates for their devices, and if they do, it’s often only for a few years. If a router no longer receives security updates, you should not connect it to the internet! Depending on the latest security updates it received, you may be able to repurpose it as e.g. an additional Wi-Fi AP, though. Many devices also lack important settings and features such as 802.11w management frame protection that protects from deauth jamming, and countermeasures for the KRACK attacks. However, it should be noted that old devices may not be compatible with these protections. If you are still using such devices, you should create a separate Wi-Fi SSID for them so that you don’t have to reduce the security for the rest of your devices.

If you’re buying an enterprise device, and especially a used one, ensure that you have access to the firmware updates! Various manufacturers only provide firmware downloads for registered enterprise customers. The firmware updates may also require an expensive yearly license. At least these are known to be problematic:

  • Huawei
  • WatchGuard

OpenWRT is perhaps the most feature-rich and well-maintained custom firmware, and it’s also open source. Therefore, you should prefer devices that are compatible with OpenWRT. If you have an existing device, you should install a custom firmware on it as well. If your device is not compatible with OpenWRT, you should use some other notable custom firmware, such as:

Features to look for, in the order of importance

  • OpenWRT compatibility
  • Enough flash (8 MB) and RAM (64 MB) for OpenWRT to work properly, preferably at least 16 MB flash and 128 MB RAM
  • WPA3
    • For WPA3-enterprise, also look for 192-bit encryption support
  • Wi-Fi 6
  • High-speed ports (> 1 Gbps Ethernet, SFP+)

Wi-Fi routers / access points

  • Xiaomi Mi Router 3G v1
    • I’m using one of these
    • No longer available
    • AliExpress
    • OpenWRT
    • v2 is a completely different device with a lot worse hardware!
    • Wi-Fi 5 (802.11ac)
    • Flashable over serial
  • ASUS RT-AX58U
    • I don’t have one, but have received positive feedback from friends and relatives who have these.
    • Now that there are finally devices compatible with both OpenWRT and Wi-Fi 6, you should get one of those instead.
    • Hinta.fi
    • Geizhals
    • Asuswrt-Merlin
    • Wi-Fi 6 (802.11ax)
  • Banana Pi
  • Ubiquiti UniFi
    • If you need multiple access points for enterprise use with centralized management, UniFi access points are a cost-effective option with their default firmware. If you have only a few access points (such as in home use), you should use OpenWRT instead, as many UniFi access points are compatible with OpenWRT.

“Routers” / firewalls

  • Huawei AR1200E
    • Serial console password can be reset from the BootROM menu (Ctrl+B)
    • The mini-USB console may not be enabled by default, and you may have to use a USB-RJ45 serial console cable instead.
    • Default BootROM password is Admin@huawei
    • Internal flash can only be formatted from the BootROM menu (Ctrl+B)
      • Formatting the internal flash also deletes the firmware from the device. Therefore, copy the existing firmware file from the internal flash to a USB drive before formatting
    • Default console username is admin and password is Admin@huawei
    • The firmware is based on Wind River Linux
    • Firmware download
      • Unfortunately this requires registering the device, which is only possible for devices that have been purchased by individual client companies, not carriers.
    • How to fully reset the device and update the firmware
      • First ensure that you have access to the firmware file
      • Copy the firmware file from the internal flash to a USB stick using the console
      • Format internal flash from the BootROM menu
      • Insert a USB stick which has the firmware file at its root folder, and boot the device
      • The device should automatically boot from the USB device
      • Wait for the firmware to start
      • Copy the new firmware file to the root folder of the internal flash using the serial console
      • Disconnect the USB stick and reboot the device
      • The device should now boot the updated firmware from its internal flash
  • NanoPi

VDSL2 modems

Cable modems (DOCSIS)

  • The operator-provided modems often have ancient firmware with security issues and poor performance. As of 2023, there are no cable modems with OpenWRT support. Therefore, I recommend the AVM FRITZ!Box modems.
  • Geizhals list

Network cards

Switches

Transceivers

Racks

  • Various Ikea tables and shelves are compatible with 19” rack hardware. The most famous ones are the Lack tables, also known as LackRacks.
  • Racks with cover panels are damn difficult to find in Finland at even remotely reasonable prices. Most stores only sell to business customers.

UPS devices

USB flash drives

  • The drive should have USB 3.0 or later.
  • Prefer a fully metallic casing. Plastic ones will eventually break if stored in a pocket.
  • Prefer one without a detachable protector, as those tend to loosen and eventually get lost over time.
  • If you get one with a rotating holder mechanism, ensure that it’s tight enough and won’t loosen over time.
  • Test the drive with f3 immediately after purchasing to ensure that it’s not a fake and that it’s reliable.

Headphones

  • Read reviews and go to a store to test the headphones yourself to determine the audio quality.
  • The headphones should have good audio quality without the installation of any additional software.

Bluetooth

  • Bluetooth audio codecs are a mess
    • Comparison of various codecs
    • AAC
    • aptX
      • Proprietary
      • There are several variations with varying quality. In general, they are not much better than SBC.
    • CVSD
      • With microphone support. Horrible quality. Use mSBC instead.
    • LC3
      • Successor of SBC for Bluetooth 5.2 and Android 13 ->. Use this if you can.
    • LDAC
      • The encoder is open source, but the decoder is proprietary and available only for Sony devices.
    • LHDC
      • Supported by Android 10 ->
    • LLAC
      • Low latency verison of LHDC, aka. LHDC LL
    • mSBC
      • SBC with microphone support. Horrible quality, but much better than CVSD.
    • SBC
      • Basic codec. Support is mandatory for all stereo Bluetooth audio devices.
    • SBC-XQ
      • SBC with a higher bitrate, resulting in quality comparable to aptX HD. Supported by LineageOS 15 -> and PipeWire (Ubuntu 22.10 ->)
  • Standard Bluetooth does not support stereo audio output and mic input at the same time. If you enable the microphone, the audio will be mono and of horrible quality. This is a fundamental limitation of the Bluetooth protocol.

Headphones / headsets

  • Very few headsets have a good microphone. Especially wireless headsets are limited by the wireless bandwidth. Therefore, for the best audio quality you should use an external microphone such as a Modmic that you can attach to the headset.

Wireless earplugs

  • Active noise cancellation is a highly useful feature
  • Geizhals list

Accessories

Keyboards

A good keyboard should have

  • ISO or ANSI layout depending on your preference
  • Hot-swappable mechanical switches
  • QMK or VIA firmware support
  • Wired connectivity
  • Detachable cable with USB-c
  • Wireless connectivity is a plus, but be mindful of security. There should be a way to turn the wireless connectivity off.

Some good keyboards

Mice

There are significant difference in the accuracy of mice, and price is not an indicator of good quality. Please see this guide for details, and this list for good mice.

I’m using Logitech G502 and Logitech PowerPlay, and am very happy with those.

Linux support for gaming mice, keyboards and headphones is provided by Piper and libratbag.

Bluetooth adapters

The documentation of the Home Assistant Bluetooth integration has a list of known good adapters.

Adapters

Cables

Other

  • Battery chargers
  • Bike lamp
    • Problem: The USB-c port does not negotiate properly, and cannot therefore be charged from a USB-c PD negotiating port, but only with a USB-a <-> USB-c adapter cable from a port that does not require negotiation to provide power.
  • Car charger
  • KVM switch (USB 3.0)
    • Problem: Client ports are USB-A, not USB-B
  • Multi-charger
    • Not compatible with the USB-c - micro-USB adapters I have tested