Showing posts with label ASRock. Show all posts
Showing posts with label ASRock. Show all posts

2022-05-28

2021 (and beyond) in review

This article is incredibly late this year, thus it touches some events from the first half  of 2022 as well. The blog was quite dormant last year due to personal factors, however, they were few interesting developments in hardware/software side, including new purchases.

HP Color LaserJet Pro MFP M183fw

The need for the printer was getting more and more difficult to ignore, because of this I finally decided to buy one last year. Since, I got burned by the inkjet printers in the past, I have been looking for the laser one this time. Preferably, I wanted a multi-function device with a scanner, with options for network connection, including WiFi support. Colour support was a must too. Despite having pretty clear requirements, it proved to be pretty challenging to find one with all those features available. Laser printers tend to be business oriented, and they tend to be big, heavy, as well as expensive. In addition to previous expectations, I was also was trying to ensure that printer supplies will be readily available at least in the near future. There were some attractive options until I have checked availability of toners' cartridges. Eventually I ended up choosing HP Color LaserJet Pro MFP M183fw multi-functional printer/fax for around ~300 euros at the time of purchase. I definitely don't need fax, but other than that, it had all the points covered above. It even has Web UI interface for management. The biggest disadvantage is an old style physical printer management panel with the small screen. It is a bit cumbersome to use, but the dimensions are relatively compact, just slightly bigger than a typical ink-jet multi-functional devices. Windows and Linux were quite well supported, I could print and scan using network connection, however scanning quality on Linux was disappointing, forcing me to use Windows, if detailed scanning is needed. Printing is fine in both OSes though. I didn't manage to make it work in NetBSD (using network), however it was not essential for my case, thus I didn't try too hard. It's neat feature is it's ability to print from the Android phone, however it requires to create and use an HP account, which is honestly in my opinion, an unnecessary prerequisite. What is more, the HP app has issues with login operation, which redirects to the browser first, doesn't authenticate upon returning to the app. Eventually, I found out that only Opera mobile browser allows me to perform the operation. Multiple application updates didn't resolve the issue as of today. In conclusion, I am quite satisfied with the printer despite all the oddities, but some peculiarities can be a show-stopper for others, especially for Linux users. Finding cartridges may also be more difficult than I would like to, but supplies are available to buy the last time I have checked. The device is also affected by CVE-2022-3942 vulnerability without any patches available except recommendation to disable LLMNR feature, which I followed myself.

QNAP Dual-port SFP+ 10GbE network

Last year I bought one more 10Gbit network card. This time it was QNAP QXG-10G2SF-CX4 dual port SFP+ PCIe Gen3 x8 card for around 180 euros at the time of purchase. It is based on Mellanox ConnectX-4 Lx (now Nvidia) network controller, which attracted me to purchase it. This controller is supported by NetBSD and gives me an opportunity  to migrate my NAS server to this OS, as it was originally intended a decade ago :). Not sure if it will really happen soon, but the network card was the major missing piece in the puzzle. I may do some trials this year, but the final decision depends on various performance, stability and compatibility factors. On NetBSD I hit an issue that it wasn't working on current branch (future NetBSD 10 release), though it did on netbsd-9 one. After some investigation, it appeared to be due to my CPU core count, which was not a a power of 2  (6/12 cores/threads). RQ Table size was based on number of cores, though controller requires it to be a power of 2 by reference manual. Thus the patch was applied to ensure the correct number. Currently the network card is not actively used, but I am planning to swap it soon. Dell QLogic 57810 network card will go to a well deserved rest or will be sold/donated.

QNAP QXG-10G2SF-CX4
QNAP QXG-10G2SF-CX4 network controller

WD Blue SSD SN550 NVMe 1TB

The final significant purchase was made early this year in the form of WD Blue SN550 NVMe M.2 SSD.  I bought it for around ~100 euros. SSD doesn't have the most modern specs, nevertheless it is considerably faster than my SATA based SSD, at least on paper. I also preferred bigger capacity over more modern specifications. It is currently used as a major storage for my desktop NetBSD installation and I didn't have any visible issues with it so far. I haven't performed any speed tests though, thus I can't provide any numbers for comparison unfortunately.

WD SN550 NVMe SSD

ClockworkPi DevTerm

One of the most anticipated devices last year was a DevTerm computer. I bought the A04 model by the end of 2020, but this specific configuration appeared to be the last one to be ready for shipment. While RPi CM3 or A06 based models were shipped starting August/September of the last year, A04 shipments started around late 2021, even making some people anxious about that. I received mine in the beginning of this year. However, the whole process didn't turn out perfectly as I wanted it, starting from incorrect tracking info to a broken screen upon arrival. Moreover, I also damaged the WiFi antenna during assembly. Luckily, ClockworkPi team sent me replacements promptly without additional charge! Though I needed to wait again, I finally managed to fully assemble it as a complete working device by the end of January. A04 model is based on AllWinner H6 SoC and comes with pre-installed Clockwork OS (Armbian) Linux distribution. The device is really cute and nice, screen seems to be a bit small, but keyboard is surprisingly usable. I was hoping to use it pretty frequently, however it is not the case as of now. I did a one time attempt to boot NetBSD as well, however unsuccessfully. Likely it should be possible to run (considering that SoC is supported), but probably requires some work on boot configuration and properties, as it is the case for various specific ARM devices. Pre-installed Linux also had some peculiarities, for example, not all cores are enabled by default. It requires small script to enable them. I didn't manage to make HDMI work yet, but I believe this issue was discussed extensively in ClockworkPi forums and possibly solvable. Also I needed to install an app (or script) to change screen brightness with a simple shortcut, otherwise it was usually too low by default. Sound works OK. Battery life with moderate usage is quite short unfortunately, but it can be partially resolved by having at least two pairs of batteries, which can be easily replaced even on the fly. I hope to utilize it more in the future, but only time will tell.

ClockworkPi DevTerm
ClockworkPi DevTerm

Biostar FX9830M NAS

At the end of 2020 I upgraded my NAS server to Biostar FX9830M motherboard and throughout the year it served me pretty well. I feel that it is bit too noisy, however, changing the CPU fan is a bit challenging because of an unusual pin connector. Nevertheless, I would like to find some solution to address the problem in the future. Few solutions are in my head, from a bigger computer case to improve airflow to even fan-less solutions. Some of those would need a few creative approach on how to install them. 

Software wise Artix Linux proves to be pretty stable with a major issue being abrupt Linux kernel changes at times. The network interfaces were renamed twice for an unknown reason over a year or so, which was rendering my network aggregation configuration to fail, since it was relying on those names. Another more mysterious issue is likely related to dhcpcd or OpenRC init system in the a way that IP address is not assigned at boot, which is only solved by rerunning dhcpcd service manually (even reboot doesn't help). After that it usually works OK on subsequent reboots (happened twice or three times over a year and half). Finally, once it stopped working because of missing firmware. The solution was to install a separate linux-firmware-bnx2x package, though it wasn't required before. I guess these issues can be partially attributed to rolling release distribution approach with the most up to date kernel and software.

Akasa Cyper SPX case

This year I acquired Akasa Cyper SPX case to accommodate my ICOP VEX2-6427-5C4NE board. This case has openings to install 4 serial ports, which seemed a pretty good choice for me (considering my board has exactly 4 serial headers), but it ended up to be a bit of a disappointment. The inside design has a piece of plastic sticking out, which prevented me from installing serial ports with rectangle shaped frames in the far left and right openings. Thus, I ended up utilizing only the two middle ones. Something more lean and rounded is needed for the edge openings, which I hope to either find them or modify the ones I own in the future. Unfortunately, the Akasa page does not provide a compatibility list or requirements and their customer support is unresponsive.

The board itself is not Mini-ITX, but a much smaller 3.5'' single-board design, because of this I tried to utilize board pads and some glue with limited success. Though I managed to position it successfully, the board is not very firm, making attachment of USB devices a bit challenging.

ICOP VEX2-6427 board placed inside Akasa Cyper SPX case
ICOP VEX2-6427 board placed inside Akasa Cyper SPX case

Other devices 

I did mention some devices on the last review like Pocketbook InkPad Color 7.8 and AsRock DeskMini X300, however I didn't have enough time to do any useful review about them. Pocketbook is quite a nice e-reader device, but little slow, especially with big PDF files which are usually available in colours, limiting its usage. It feels like such devices should have stronger hardware, however it likely brings challenge to keep long battery usage and increases the price. 

DeskMini X300 is definitely a good choice for the mini computer, if limited expansion options are not an issue. CPU support was extended to Ryzen 5000G series over the time, thus it can opt very performant models. In my case, Athlon 200GE CPU is installed and it is virtually silent. Probably major limitation was that initial configuration didn't have WiFi, side USBs and audio jack at back (only at the front). ASRock provides its own sets for all, but they are pretty expensive and hard to get. For side USB/WiFi though third party options can be adapted.

Other than that, I had some smaller purchases, but those were usually required to facilitate certain setup, like mini-PCIe SATA controller with the flat ports instead of 90 degrees ones or more silent Cherry G80-3000N mechanical keyboard.

ASRock X300M-STX
ASRock X300M-STX board inside DeskMini X300

Work on NetBSD

Last year I was honoured to become an official NetBSD developer, which gave an ability to contribute to the project directly! At the time of writing this review, I already did over 200 commits, however those were mainly non functional changes like misspelling fixes. Nevertheless, I did some bug fixes too. Likely the main achievement was to finally identify why R6040 MAC was failing to work on Vortex86DX3 SoC. It took me countless hours in the span of around three years of debugging, including temporarily acquiring on more DX2 based system, but I managed to find out that it was related to certain speed control register (MDC) being restored to wrong value after reset action. This issue appeared to be the same not only across all BSDs but in Linux as well. Despite the fact, that interface was working up to 5.3 kernel version by luck, it was because Linux didn't check BMCR register on identifying the link state. That changed starting 5.3, thus R6040 MAC stopped working in Linux as well. Fortunately solution was just to restore MDC value back to original value leading to restored functionality. Just recently this change was applied to OpenBSD and FreeBSD as well, thus R6040 should should work properly on VortexDX3 SoC in all BSDs and Linux (I guess FreeBSD driver will be synced to Haiku OS code at some point). It was the first fix, which was actually reapplied to all major operating systems and motivates me to continue on such efforts. Other than that, I did few other fixes, mainly in drivers, I also did various testing/investigation work, wrote some missing documentation. Unfortunately, time constraints prevent me to work on some drivers more seriously, but I still have few projects in my mind, hopefully over the time I will manage to implement them. Nevertheless, I plan to stay an active member.
 
Future developments

I do not plan any major hardware purchases this year, however some upgrades and changes are possible. The main focus will likely to stay on the NetBSD project, which comes closer to branching netbsd-10. This may lead to more testing and debugging work and potentially some help in different areas. I am still trying to debug interrupt issue on Vortex86DX3 systems. On the other hand, I still dream to dig up and revive at least one of my Alpha machines. Hopefully, DevTerm will find more usage as well. Though I don't expect much articles in the next 6 months, I will make an effort not to be completely silent and share more interesting developments.


2020-01-27

Beware of QAFF CPU on X79 platform

This article is probably not very relevant anymore, considering the age of the platform and rarity of the CPU, but nevertheless, it can be useful for historical purposes or if someone happens to have the CPU mentioned below. Back in 2012 I bought X79-based Sandy Bridge-EP platform (based on ASRock X79 Extreme4-M motherboard) together with the engineering sample CPU having a QAFF S-Spec (supposedly 4-way Xeon E5 which doesn't have corresponding production item). Though the CPU was recognized by the motherboard and system initialized successfully, over time however, it proved to be quite unstable and stressful to use. Two main issues were:
  • Initial system boot and even reboot process could randomly freeze with a different number of BIOS beeps or motherboard boot status codes (Extreme-4M has a specific LED indicator for them). Probably the most common final code before freeze was 0x67 - CPU DXE initialization (CPU module specific). I believe it could have been RAM detection/initialization issues. Unfortunately, I couldn't find any pattern to reproduce the failure consistently.
  • PCI-E graphics cards with v3.0 specification (possibly v2.0 as well) lead to the failure of the OS boot process into graphical environment (Windows 7, Gnome on Manjaro Linux, etc). Reducing PCI-E mode to version 1 in BIOS settings was partially solving the issue by stabilizing the boot process. In this case however, the system had an occasional performance degradation and/or random lockouts. I was using Radeon RX460 graphics card, but I found a MSI forum thread confirming the similar issue with different graphics cards (including AMD and Nvidia models).
The first issue is hard to investigate because of its inconsistent behaviour, however, the system usually worked better with two RAM modules instead of four, in my experience. Shuffling RAM modules between slots occasionally was solving the issue, but temporarily only.

The second problem was easier to identify since the problems started soon after I replaced older Radeon 2400PRO based graphics card with more modern Radeon RX460 one. Windows boot process locked out immediately on first reboot after AMD drivers were installed. Linux boot process froze as well on loading display server (X.Org). In both cases, the only way to continue was to reset the system. By default, BIOS was selecting PCI-E v2 for the graphics card. Reducing PCI-E to version 1 helped to load the desktop environment in Linux but system performance was unstable up to complete system lock out. Windows was still crashing regardless of the PCI-E mode set in BIOS. Explicitly setting PCI-E v3.0 in BIOS was rendering system unbootable until CMOS was cleared. It seems v3 was either not supported by CPU at all or it didn't work in combination with my motherboard.

X79-based systems are already considered legacy since long ago and it is not very likely that someone will decide to build it these days, especially with a quite rare engineering sample CPU. In this case though, my recommendation is to avoid QAFF S-Spec CPU and choose many other options supported by the motherboard.

2013-01-05

2013 and up

Happy new year everyone. I am not the most active blogger in the world but I still don't plan to be silent this year too. As usual this blog will be focused on activities with my own hardware and software. I hope some information will be useful for my blog readers too.

There are some plans this year which I can divide into several categories and probably the most of blog posts will be around these topics.

Hardware:
  • I plan to change my NAS server which uses Jetway JNF76 mainboard into real NAS device. I think device will fall into the cheap NAS category (something like ZyXEL NSA325). The main point of the change is easier management. I don't have time and motivation to configure Linux to my all needs. NAS devices usually have simple web interface for most cases I need (power management, more versatile back-up, torrent, RAID). They use much less power too.
  • My main desktop computer should be the same sandy bridge-ep platform I had bought last year. I have already upgraded memory to 16GB (4x4GB quad channel). I am not sure what I'll upgrade in it (maybe nothing) but the strongest candidates are GPU (to R4xxx series) and hard drive (to SSD).
  • Microway Streamer PC164 has memory problems once again with new RAM sticks. Though I can install and boot NetBSD still. This system is almost unused. I just try to install the newer NetBSD version from time to time. Another DEC Alpha motherboard is unused too and I don't plan even to boot it in near future.
  •  VIA VT-310DP is still good and healthy. And I use it often as my main testing platform. NetBSD support is greatly improved on it. 6 branch (probably will end up into 6.1 release) and current branch (7.0) doesn't have any problems at all. The fix for the freeze on second CPU detection was pulled up to 5, 6 branches (6.0 and 5.2 official releases has this fix). There are ACPI problems with SATA and USB devices on all official releases but current and 6 branches have already applied patches that addressed those problems too.
  • VIA EPIA-M900 should remain the main desktop platform for my other family members. HDD was upgraded to Kingston V+200 120GB SSD last year. It greatly improved loading times of Windows and some applications (Starcraft II especially). CPU is the biggest bottleneck right now. I don't plan any big upgrades (I would like to have some small changes but there are difficult to implement). Maybe I'll write one more review on usage advantages and shortcomings some day.
  • There is a possibility that I'll get some netbook (which are declared dead :D) or small laptop.
Software (operating systems):
  • My main setup is Fedora Linux and NetBSD. Fedora plans to release 18 version soon. I'll upgrade as soon as possible of course. NetBSD released a major release (6.0) and some minors (6.0.1 and 5.2) last year. I expect that this year won't be major releases but 6.1 (with some new features and bug/security fixes) can be released. 6 release is ok for me so I probably won't need to switch to current branch I needed before 6 branch had appeared. I currently use 6.0.1 with patched kernel to support my integrated broadcom NIC (I applied patch from current branch into 6.0.1 source code). VT-310DP will use current branch.
  • Haiku OS released Alpha 4.1. I still haven't tried it but I expect to do this (or newer build) sometime this year.
  • Syllable development quite stalled right now (or very slow). It even was forked into Pyro OS because of this however no actual releases have been done yet by this forked project. I haven't used Syllable for years but I plan to look into it some time this year depending on situation.
  • I hope to try DragonFly BSD just for curiosity at first.
Other activities:
  • I will attend at FOSDEM'13. This is the first such conference for me but I hope to enjoy it.
  • There are lots of great new CPUs in my CPU collection which I haven't placed to photo gallery yet. They will end up there eventually. I hope to spend some to provide more information on them but the result won't be noticeable this year I think. I am not sure how many new ones I'll buy this year but my focus switched to more rear ones so quantity won't be big.
  • I dream to buy QNX based Blackberry 10 platform mobile phone (devices are planned to release on 31 January). 
  •  I plan more actively to participate in NetBSD community.

2012-07-30

Just update about my activities (NetBSD, CPU collection)

There are no new blog posts for some time now. This time however I actually don't have anything to write. There are no hardware changes recently. Though I plan to increase total RAM to 16GB (4x4GB) an make my system to use quad channel memory instead of dual channel one next week. NetBSD developers didn't find fast answer why integrated NIC doesn't work (on ASRock X79 Extreme4-M). I wasn't successful too despite the fact all other major BSDs (Free and Open) works ok with it. Because of this I also plan to insert some chip 1GBit PCI-E network card (most likely D-Link DGE-560T with marvell NIC). I hope that it will be a temporary solution until solution to enable correct operation of integrated one will be found. I also changed NVIDIA GeForce GTS450 graphics card to fanless ATI Radeon 2400XT. The main reason was a good NetBSD support but downside was higher power usage at idle (yes, GTS450 ate noticeably less energy on idle). Finally, there are problems with USB devices in NetBSD, I always need to reconnect mouse or keyboard after system is booted...

NetBSD reached 6.0 Beta 2 stage at current point and heading towards first release candidate. When we can expect release I still can't even predict. If I remember correctly  5.1 was released about 6 months after first RC release... Nevertheless you can download updated 5.1.2 version or use 6 daily branch. What is more, VT-310DP second CPU bug is finally  fixed on version 6 branch. It was VIA Eden CPU specific problem that it hid cmpxchg8b instruction support because of some Windows NT(!) bug. The worst thing that there was no BIOS entry to change that too (I saw such option on some Jetway VIA based motherboards). Fortunately, you can expose support for this instruction using software methods (some assembly). Despite this fix there are still some ACPI problems with VIA chipsets, because of this you still need to use -2 parameter (disable ACPI) at boot. There is a patch to this problem too and the system will boot correctly with ACPI enabled but you will see a constant interrupt storm in CPU activity. Because of this patch is not very suitable for production use. Maybe something will change in distant future :).

Finally, I updated my CPU collection photo album. It is difficult for me to list all new items as they came at different time but there are some new interesting ones. I bought new camera (Olympus SP-610UZ) so you can expect a little bit better photos in the future. Some of them I have already refreshed. The main new CPUs include Integraph Clipper C300 (new architecture and rare, hard to find item), HP PA-RISC 8800 (dual core, Itanium socket), HP Alpha 21364 1300 MHz (if wikipedia is not wrong it is the fastest Alpha), Zilog Z380 32-bit MPU, set of 6 Kendall Square Research supercomputer chips, Infineon MIPS CPU (new company in the list). So that is all for now.

2012-04-08

Sandy Bridge-EP platform

While Intel's Ivy Bridge CPUs are on the horizon I happened to get Sandy Bridge-E sample on my hands. It is Sandy Bridge-EP 4S more precisely. This CPU will become a member of Xeon E5-4600 series when they will be released and they are primarily intended for 4-way servers. My sample is packed into 2011-land FC-LGA package and works on LGA 2011 socket.  Despite its intended purpose to be a server CPU it can be used on desktop perfectly too. My sample's s-spec is QAFF and its specifications are as follows:
  •  3GHz frequency (30x multiplier), max 3.3 GHz on turbo boost
  • 10 MB L3 cache
  • 4 cores, 8 threads
  • 32 nm 
  • 130W TDP (not confirmed)
  • support for AVX, SSE4.2 and other modern instructions and features like in most sandy bridge cpus.
So I would call it "low-end" or "mainstream" CPU on targeted platform and it is comparable to Core i7 3820 desktop CPU by specs but has much less frequency (3820 clocked at 3.6 GHz by default). CPU multiplier is locked. 

There is always a risk if you buy engineering sample CPU. Firstly, no motherboard will support it officially and you need to find at least some information on supported ones (mostly you need to know at least one supported motherboard from specific manufacturer and then compare their motherboard specifications, BIOS and CPU support to make decision if you are not satisfied this the one you found as compatible). In the worst case you probably will be able to sell incompatible motherboard for some little loss (of course, if you don't live in the small country like me). Secondly, you won't have any warranty. If CPU will die, nobody will replace it. Finally, you can't write a lot about it until official CPUs are released (Intel doesn't like leaked CPUs and can take actions on sellers and on even on bloggers). Nevertheless this CPU has more or less the same core as other Sandy Bridge-E(P) CPUs so you can always imagine performance by reading articles on similar items. When you consider all these factors and still decide to buy a CPU you should be ready to lost the money in the worst case. However, it is still aren't very risky decision in my experience. CPU is probably one of the most reliable parts compared to other computer parts. If you spend enough time to check motherboard compatibility and have enough sources to prove your decision this move becomes even less risky. On the bright side ES CPU can be purchased for less money than production chip (not applicable for first samples of new architecture or platform or very rare collectible old items).

Personally it is my second engineering sample CPU (used for actual computer, not for collection purposes). First one was Xeon E5540 ES Q1E2 Nehalem CPU. Unfortunately, X58 platform wasn't very satisfactory for my purposes and I replaced it with Athlon II X2 235E on AMD 780G platform. It was great platform until Jetway JNC81 motherboard died. Jetway replaced it with JNC84-E but it wasn't so friendly with NetBSD. What is more, I wanted more performance for compiling, folding and other tasks. Though, I still didn't plan to change computer initially in the near future but I bought Sandy Bridge-EP CPU at a reasonable price and decided build the platform on it.

I wanted to go as cheaply as possible because of this I bought relatively cheap ASRock Extreme4-M motherboard, Thermaltake Contac39 CPU cooler and reused some parts from retired mother's Phenom II X2 555 computer (like RAM and graphics card) and my computer (HDD). I plan to add two more RAM modules to make them work on 4 channel mode but currently system works on 2 channel mode. I also would like to get less powerful and more power efficient graphics card (GeForce GTS450 now) but it depends on how successfully I will sell my parts on second hand market. Nevertheless the platform still cost quite a lot as X79 motherboards are pricey and even the cheapest one cost about double of what I spent on one motherboard typically. Extreme-4M wasn't the cheapest one but Intel boards didn't have enough sources to prove compatibility (ironically) and Extreme-4M was more appealing for me than Extreme-3 which one was the cheapest solution from ASRock line.

So my current setup is:
System setup went without big problems. CPU was recognized as GenuineIntel 3GHz. It works on 1.2GHz on idle. Motherboard uses modern UEFI BIOS. I needed to set 1600 MHz for RAM manually as they worked as 1333MHz by default. No other big changes were needed. Fedora 16 booted without visible problems and worked perfectly. NetBSD wasn't so good. It booted better than on JNC84-E platform (it typically didn't load on first try and needed repeated boot command in the bootloader. This problem disappeared by surprise for me), but NIC (Broadcom BCM57781) didn't work correctly (as result no internet and network), GTS450 graphics card wasn't supported too (X.org failed to start). Keyboard needed reconnect on the first boot but problem didn't reoccur on other times.  So currently I need to solve these issues somehow. On the other hand I expected more worse situation as platform was relatively new. These two problems are quite small and solvable. Of course, USB3.0 is not supported on NetBSD but I don't have any devices anyway. The whole platform uses 86-92W on idle and ~160W on full CPU load (by folding@home). For comparison unlocked 4 core Phenom II X2 555 used around 200W and more with the same graphics card and RAM.

QAFF ES 3.0 GHz