SD card incompatibility and some other harsh feedback

I wonder whether just slowing the stack fan down would make it acceptable?

I haven’t tried that. I’ve got a 40mm Noctua fan mounted the same way the stock fan was but using just one of the screws. It’s very quiet, but doesn’t cool quite as well – but it’s completely not a problem. Idle temperature is 40-41 (with 21 ambient) and sustained max load gets it to 48-49.

My problem with the serial interface is that the connector is not attached very firmly to the motherboard and a little wiggling of the cable will pop it loose. I found someone who was able to solder it back on but attempting to carefully insert the micro-usb cable popped it loose again. So I’m limited in debugging an OS port.

What can be the problem? I am using Silicon Power NVMe disk without problems.

Some peripherals outside our list will work. Some won’t. Lots of things can go wrong, like driver bugs. The key point is that you should not assume anything that isn’t on our list will work. You are welcome to try other products. You just shouldn’t assume that they will work.

@jimw Regarding the baudrate: My point is that the shipped hardware seems to not have the weird (89856) baud rate but just half of 115200 (57600). Maybe this is due some differences of CPU frequency between earlier versions (used in testing/to write the documentation) and the final product? I noticed that the factor of 1.196GHz/1GHz is not too far off of the 33MHz/26MHz that you stated above (but clearly not the exact reason).

Regarding peripheral support: The “list” you mention are the devices that are explicitly mentioned in the SW Reference Guide, right? This is basically one single NVMe SSD and one single SD card. :)
Maybe we could organize a user-curated list of tested devices like many open-source projects do. For example, flashrom generates a list of the implemented hardware with test status. The easiest way to do something similar would be a sticky thread in this forum where people post the hardware they have tested. This is very unorganized but would not require any resources. A git(hub) repo where people can add devices via pull requests would be another way but that’s quite bureaucratic. A user-editable wiki (hosted by SiFive) would be much better from my PoV - not only for this but also other things like guides (e.g., to enable booting from SPI).

After all, it is not as bleak as one might think from the statements above. I could (almost) successfully boot from a SATA SSD attached to a PCIe controller card in the PCIe slot with U-Boot coming from SPI flash, i.e., w/o SD card. :) (It hangs at relocating the kernel ATM… that should be fixable). It needs some U-Boot customization but apart from the known SPI patches it is just configuration changes to enable the controller and SATA (yet).

I use Haiku that I ported mostly myself, so it is my responsibility. As long hardware is recognized and properly communicate, the rest can be solved in software.

Hardware might not be recognized is another problem. PCIe is a complex standard, and incompatibilities between vendors are common. The big guys spend a lot of time and money testing with other vendors. The little guys all test with Intel and AMD hardare. But neither of those applies to the SiFive Unmatched board. So if you try some random PCIe device with the board, you might be the first person in the world checking to see if they are compatible. With luck they are, but this isn’t guaranteed.

1 Like

These two clock rates are unrelated issues. The zsbl runs at the base clock rate. The fsbl sets the clock to the desired rate.

Perhaps the odd baud rate is close enough to 57600 that it works by accident.

I don’t think so - it’s too far off, and actually using 89856 does not work in my setup. Using 57600 I get the proper output of “Error 0x0000000000000005” (for MSEL 1011 w/o an SD card), but I get the following with 89856:

|��n���
       ~�
         �
          �
           �
            �
             �
              �
               �l�

I have not verified the exact baud rate via a logic analyzer but it looks rather clear to me.

1 Like

While I agree the hardware compatibility list is pathetically small I can live with that and think the unmatched is a vast improvement over unleashed for a developers board and I am happy with it overall. You have to start somewhere. I am sure V2 will improve on the lessons learned from the unmatched.

2 Likes

Because I am still struggling to get booting via a PCIe SATA controller to work, I will order the smaller NVMe SSD mentioned in the stated guide (without size). The model number of the 500GB drive has a typo: it should be MZ-V7S500 not 550. Also, the /AM suffix is apparently used for the American market (and just W for west Europe maybe), cf.

I presume they are technically identical.

As long as we’re wishing for things, the SD card slot is just a bit too close to the debug USB connector that you can’t use those cheap SD card ribbon cable extenders from Amazon/eBay. The extenders would let you move the card slot to a more accessible location, and also save a bit of wear and tear on the original connector.

2 Likes

Regarding the fan it would be nice if there was a sifive recommended way to solve this with good/detailed instructions on how to do it without damaging the cpu socket. The fan is really limiting the use of the board for me, the noise is simply so bad it’s a relieve every time i switch it off.

I completely agree. One SD Card slot broken as an experience.

I definitely have to agree here! I picked a silent power supply and GPU but the motherboard fan has this whining sound. Would be nice to have a more silent stock fan, or at least official, straightforward documentation on how to replace it with one.

SATA adapter for SiFive Unmatched

I use an IOCREST M.2 (A+E Key) to 2-Port SATA Card,IO-ADA58215 (M.2(A+E Key) to 2-Port SATA Card,IO-ADA58215 - M.2/Mini PCIe - Storage Products - My web) adapter to provide two SATA ports. You can buy it at Aliexpress for 15 USD + shipping.

U-Boot can boot from SATA using the following patch:
https://patchwork.ozlabs.org/project/uboot/patch/20210825162157.3942-1-heinrich.schuchardt@canonical.com/

I agree completely.
The silence / lack of response from the manufacturer speaks volumes - unfortunately.

It’s indeed disappointing there is no response from sifive at all. Not even “We agree, we need some time” or “Sorry, we don’t agree”.

The CPU fan header on my board was soldered to the board upside down and with the fan connected upside down. I only noticed after after comparing the colors of the wires with the images in the getting started guide. (Note, I forgot to take the picture before I cut the tab off.) I hope none of the other components have this issue but it’s likely impossible to tell, though everything I’ve tried so far works.

While I appreciate that compatibility is expensive/tedious to test, I hope that quality assurance improves so that issues like this can be avoided.

1 Like

Yep, the CPU fan header is soldered on backwards. That’s crazy, and good catch by you, I’m not sure I would have noticed. I just checked mine real quick to be sure, and it is fine but I wonder how many other people have this issue?