VIMS proposal (VIM3 NAS/server variant)

As already suggested here I would like to propose a VIM3 variant focused on server/NAS use cases (VIMS for server)

S922X has one Gen2 PCIe lane with decent speeds and as such the perfect companions would be either an ASM1061 PCIe to SATA controller (that’s the thing on Pine64’s SATA card for RockPro64) for two SATA ports or a Marvell 88SE9215 for up to 4 SATA ports (the 88SE9215 is the SATA controller on FriendlyELEC’s SATA HAT I suggested last year).

This would allow for a really decent but still inexpensive ARM SoC to be combined with 2 or 4 SATA disks without all the annoying USB3 storage hassles. All the fancy stuff that increases BOM costs in the various VIMs is not needed at all (no Wi-Fi, no eMMC, no USB PD, no sensors and all the other Android focused stuff) since such a device can only be a win if priced competitively.

Ideally such a device features a large heatsink as part of the enclosure suitable to cool SoC and also somewhat a disk passively. Simply look at ODROID HC2 to get the idea. The principle behind something like HC1/HC2 has been outlined by me weeks prior to HC1 announcement (see last two paragraphs here) but all the implementations so far somewhat suck:

  • ODROID HC1/HC2 are both based on an old 32-bit SoC and both network and storage are USB3 based
  • Popcorn Hour Transformer is way too expensive and storage is based on USB3
  • Swiftboard relying on same Rockchip SoC shares the same limitation but isn’t even available yet

All three implementations suffer from storage being based on an USB3-to-SATA bridge which simply sucks for a lot of reasons. And they’re also limited to one SATA disk per device.

If such a proposed VIMS could allow for stacking enclosures (2 or up to 4 devices) where a master node contains a PCB that is software compatible to VIM3 and allows for one local disk connection but also 1-3 cable connections to ‘slave enclosures’ that only contain a small PCB or none at all this would be the perfect device for fans of energy efficient servers with true (PCIe based) SATA capabilities.

Especially in Germany there’s a huge market for something like this since Germans go crazy for energy efficiency and ‘true SATA’. So in case Khadas evaluates or picks up this idea they should get in contact with ALLNET for a EU/DE distributor.

For something like this to be priced competitively the basic 1GB/ASM1061 version which will be used in device comparisons should remain at or below the price one has to pay for an ODROID HC2. So everything that needlessly increases BOM costs should be avoided but the ‘few cents’ components like HDMI or MIPI-CSI connectors as well as USB2 ports should be exposed since adding extra value (think of a NAS for surveillance purposes where CSI cameras or a control monitor can be directly attached to).

Most probably the most important design goals are

  • 100% software compatibility with VIM3
  • good passive heat dissipation being part of a stackable enclosure concept (no tiny fancy expensive fansinks please – that’s something for toys but not for workhorses)
  • solid powering with an external inexpensive 12V brick using the usual barrel connector
  • keeping costs as low as possible by skipping all the fancy stuff that’s useless on servers anyway.

@Gouwa any opinions on something like this?

7 Likes

To elaborate why such a device is important and who the target audience is now and in the future.

USB storage especially with USB3 SuperSpeed and especially if USB hubs are involved is unreliable as hell. Hardkernel when designing their S922X based ODROID N2 chose to rely on an internal USB hub and as such the usual USB storage drama is happening over there. See here or here or here or here

So avoiding USB and being able to rely on ‘real’ SATA is obviously a good idea if reliable and performant storage access is part of the use case. Unfortunately all those SBC that feature ‘real’ SATA are either slow as hell or overly expensive. An S922X board on the other hand is faster than Apollo Lake Intel designs and almost as fast as Gemini Lake (compare N2 numbers here in the 7-zip MIPS column with the x86 results at the bottom)

So being able to combine a competitively fast ARM SoC like S922X with PCIe attached SATA at an reasonably low price will attract all those people who search for an energy efficient NAS or micro server today or just a KODI box with a lot of local storage or users who want to explore CEPH on inexpensive ARM64 nodes.

Even if ODROID HC2 is technically underwhelming (old, 32-bit, everything USB3 attached) it’s a top seller for Hardkernel just since it delivers on a complete solution for a 3.5" disk with an enclosure attempt. Now imagine a 64-bit SoC (with ARMv8 Crypto Extensions available), up to 4GB RAM combined with real SATA (so no USB storage hassles any more) and especially the possibility to add 1-3 additional SATA disks in a stackable and inexpensive fashion. Over in OMV forum this question (something like HC2 just with the ability to add one or two additional disks) pops up over and over again and there really is a big demand.

Since dealing with USB and especially USB3 storage is that unreliable and annoying some projects even think about removing support for USB attached disks altogether (being called ‘Removable devices’ in OMV for example, see this proposal by OMV’s core developer). If a future OMV version will remove support for USB this makes the majority of SBC used now as a NAS useless with this software and an upgrade path is needed (my OMV image for Raspberries has been downloaded over 100,000 times within the last 11 months).

Users interested in DIY NAS, home servers or storage clustering search eagerly for something reasonably priced with a fast CPU, fast RAM, real SATA and Gigabit Ethernet. Skip everything that increases BOM costs like Wi-Fi, eMMC or USB PD, keep just the ‘few cents’ components like GPIO header, SPI NOR flash and connectors for displays, camera, IR and USB2. Then let VIMS remain 100% software compatible to VIM3 (just a different DT needed in SPI flash) and you target a different huge market with almost no additional development costs other than designing a stripped down hardware variant and an inexpensive but effective enclosure variant (me being a total hardware noob having no idea about efforts here).

4 Likes

IMHO. Under such a task is well suited rk3399 (and even better promising 3588). If you use vertical installation of the motherboard and use one of the sides of the chassis (with optional tabs), as radiator cooling, this will be enough for average use in passive mode. Setting 2 HDD\SSD (3.5\2.5) should run as vertically. At the bottom of the case should be a place to install an additional fan (size 120 mm), as high-speed HDD 3.5 themselves emit a lot of heat during active operation. The case without a motherboard (with two seats for HDD\SSD) and a scalable power supply can be used as an extension for additional drives. It is important that the RK has the ability to simultaneously use PCe and USB 3.0, which is necessary to connect external media for fast transfer of large amounts of data to\from the NAS.

2 Likes

Yea the only thing going through my head when reading @tkaiser’s post was that the vim form factor won’t work. It would have to be redesigned for vertical mount, so that air flows upwards passively against the board sides. Also as you’ve mentioned, adding an additional blower to cool the drives - probably large diameter and slow speed for quietness.

I suppose that if it’s a DIY thing, you could construct your own space frame out of aluminium extrusions, or use a large flat metal plate as a backplane + heatsink.

Of course the vim form factor can’t work. Please read what I’ve written above about similarity with ODROID HC2. It’s about

  • a large aluminium ‘enclosure’ where a 3.5" disk will be screwed to
  • the little VIMS PCB will be directly connected via the usual SATA+SATA-power connector but also providing 3 more SATA connectors and one SATA power (or Molex) connector
  • the S922X needs to be on the lower PCB side to be directly attached to the large aluminium ‘heatsink’ to efficiently dissipate the heat away from the SoC
  • the enclosure needs to be stackable just like ODROID HC1/HC2 or the Cloudmedia Transformer. That’s the real deal.

Maybe a drawing is better:

The PCB should use the whole ‘enclosure’ width to host the three additional SATA connectors and the SATA power connector. The very same enclosure can be used to add additional 3.5" disks on top or below. With 8 mounting holes inside the 3.5" disk can be either mounted at the front (to be used with the VIMS PCB) or at the back to be then simply attached via a standard SATA cable to the master unit. Power for additional ‘slave units’ only containing a disk can be provided with such a cable or this.

There’s no need to design an expensive and sophisticated enclosure with vertical mounts of whatever. The horizontal design brilliantly works. This picture (featured on CNX) with the 3.5" and the 2.5" variant of such a design shows my desk in the office:

This concept simply works and for those people obsessed by annoying fans they can always screw a large 120mm fan in front of a stack of 3 VIMS.

6 Likes

Wow, great ideas, thank you @tkaiser.

I will talk with our team on your suggestions, may be Khadas roadmap will have a new member soon :wink:

Good day!

1 Like

To elaborate a bit on my motivation for such a proposal. My whole SBC journey few years ago started with the need for small, inexpensive and energy efficient ‘server’ thingies.

The Allwinner A20 boards with SATA and Gigabit Ethernet looked promising but performance sucked. Other attempts with ‘real’ SATA were usually too expensive and over the years I literally learned to hate USB for storage access since there’s so much hassles (SBC users usually are not even aware of until they run into).

And instead of trying out more and more hardware and spending insane amounts of time to improve software support I started to suggest hardware improvements. When suggesting this in TL Lim’s direction who delivered later with the Popcorn Hour Transformer I was a bit surprised by Hardkernel getting in touch with me weeks later sending me ODROID HC1 dev samples which implemented exactly what was suggested – eliminating at least cable/contact/power hassles with USB3 storage).

Still USB(3) storage sucks and as such the suggestion in FriendlyELEC’s direction to develop an 88SE9235 based SATA HAT for their NanoPi M4. They delivered (though with a different chip, the single lane 88SE9215) but the whole combination is a) rather expensive and b) lacks an enclosure.

IMO the best of both worlds would be an inexpensive thing following the HC2 design principle with an 88SE9215 for 4 real SATA ports without any USB or other hassles involved. But such a thing will only be a success if priced competitively. Combination of the enclosure/heatsink + VIMS PCB at $60 and this will rock. If it’s $120 it will be a fail (just like the ‘Transformer’).

Maybe Khadas is the wrong company to beg to for something like this since you’re great in designing beautiful full-featured boards and focus on a target audience wanting ‘cool looking’ and fancy stuff. But with this use case it’s definitely the opposite. Potential users of such a ‘VIMS’ don’t care much about design, they want a stripped down variant that simply performs awesome at reasonable costs and saves space due to a stackable design.

Those users want a master unit for $60 capable of housing PCB and 3.5" disk and are happy knowing that they can buy those ‘enclosure/heatsink’ combos for an additional $10 to be used with a 3.5" disk of their choice and the cabling they most probably already own (so I’m talking about $50 for the VIMS PCB with 1GB RAM – no idea whether that’s realistic with a 88SE9215 soldered to it).

Side note: If you would deliver something like this at reasonable costs I would almost immediately stop supporting other boards with the server/NAS use case in mind. Last time I’ve built and tested 21 different OMV4 images (for RPi and those guys) and I would love to reduce the efforts to a single platform.

Another side note: This is a suggestion from German c’t magazine (which is the most influential IT magazine here in Germany): If one SBC vendor would manage to provide reasonably priced and good performing DIY NAS hardware like proposed here and then manages to bundle this with an OMV install that simply works out of the box it would be something NAS enthusiasts are really searching for (and c’t due to their media coverage would automatically promote). It’s as easy as selling an optional 16GB A1 rated SD card with an OMV image suitable for VIMS on it. You have my full support on this.

4 Likes

I have also been longing for just such a board.

For an enclosure I envision an aluminium extrusion, an open-ended rectangular tube, that will hold the board and up to 4 2.5" drives (not interested in 3.5") in a row. The idea being that you would mount it vertically on the wall or behind the TV and it would be cooled passively by both heatsink and chimney effect. No fans required and, wallet permitting, no spinning drives. Therefore no noise at all.

It would be a very simple construction: just the extrusion with holes on the front for screws to attach the board and drives. On the back a couple of keyholes to hook onto the wall screws.

2 Likes

Would wait in line for a board of this description!

Yeap the extrusion method popped into my head too. Such a solution indeed doesn’t need to look pretty - it’s all function, and best if it can be mounted in a secluded, cool spot.

A couple more items for the wishlist:

ECC RAM
Battery connection for UPS functionality.

Another board which nearly met this requirement is the Helios 4. Too expensive and only a 32 bit processor.

1 Like

You won’t find ECC RAM support on any affordable general purpose ARM SoC today (only the way more expensive ARM ‘server’ SoCs are equipped with this feature). Also adding additional features like battery support will only increase costs and once total costs are above a certain level this potential product won’t sell.

Let such a VIMS PCB with just 1 GB be in the $50 range (and charge an extra $40 for the max DRAM version with 4GB), let a simple half opened heatsink/enclosure combo for 3.5" HDD cost $10. If it’s a lot more expensive no need to even think about since it won’t sell. Also focus on 3.5" since 2.5" won’t sell.

For a 2.5" project you can still DIY any own enclosure variant by ripping the PCB out of the semi-enclosure (or maybe Khadas sells everything as kit anyway, PCB + optional heatsink/enclosure combo with 2 efficient and thin thermal pads for S922X and 88SE9215)

1 Like

Yes, ECC is not easy to come by. It seems the Nvidia Xavier is the only option there and I hate to think what that costs. Although, some A7x chips have ECC caches.

I don’t know what will sell, I only know what I want to buy, and very often it is not for sale :frowning: I do a lot of DIY.

I can’t be the only one who expects to be using only SSDs from now on, and they don’t generally come in 3.5".

My cubietruck has UPS functionality so it can’t add much to the cost. It is quite an important feature for those of us outside Europe with dodgy grids.

With A73 ECC in the L2 cache is optional. Please check S922X_Datasheet_Wesion.pdf and then think twice whether you ‘need’ ECC RAM on a system where caches are not ECC protected. If you want something mission critical you need to spend a lot more money than what I’m talking here about in this proposal.

The Cubietruck is based on an Allwinner A20 which is a tablet SoC and has the AXP209 companion (that’s a battery capable PMIC which is there since… A20 is a tablet SoC that needs to be able to run on battery while S922X is a TV box SoC).

Again: if such a VIMS is not 100% software compatible to VIM3 it will be a fail anyway. Same if it gets overly expensive.

1 Like

Would PoE be necessary for such a NAS setup? NAS cluster?

Rather the opposite. 802.3af-2003 allows for less than 13W ‘at the device’ while 802.3at-2009 (PoE+) is limited to 25.5W. These 25.5W might be sufficient to power up board and two 3.5" HDD but already with a 3rd one this is not enough and the usual ‘disks attached to SBC underpowering drama’ will continue. Also PoE increases costs for no reason (with this use case in mind).

A sane 12V barrel plug and some DC-DC circuitry to generate stable 5V etc. is all such a device needs. And users then need to know what ‘HDD spinup peak consumption’ is and why a 12V/8A power brick might be needed to drive four 3.5" HDD (some 3.5" HDD want up to 2A on the 12V rail alone at spinup time).

Edit: for something like this being successful I believe you need to keep BOM costs as low as possible (removing every feature that’s not strictly needed) while keeping a good margin (design 100% software compatible to VIM3). If I understood @Gouwa correctly on VIM3’s M.2 connector Fast Ethernet is available so it seems to be possible to use GMAC + external transceiver and internal 100Mbps MAC/PHY in parallel? So adding a Fast Ethernet jack here seems like a nice addition but this will also just increase BOM costs and encourage users to combine two mutually exclusive use cases (NAS vs. router) if ‘VIMS’ would have two Ethernet ports.

2 Likes

Ah right, I forgot about the HDD power consumption :smiley:

I really wish someone will listen to you tkaiser…

2 Likes

Thank you! :slight_smile:

But let’s face reality and this has changed this Monday. The release of the RPi 4 means that there is a really strong competitor for situations where users want to attach their already existing USB storage.

While the new SoC on the RPi 4 is still just a horrid hack (there’s still VideoCore IV with several hardware blocks, there’s now also a VC6 3D/GPU block and then there are the somewhat faster ARM cores) at least the USB3 implementation is both fast and solid.

The RPi 4 survived an USB storage torture test without any problems and it seems the somewhat high idle consumption of RPi 4 can be partially resolved.

RPi 4 users with crappy USB disk enclosures will still suffer from USB incompatibilities (the USB-to-SATA bridges and their firmwares are the most important ingredient of 'USB storage), many users will still suffer from underpowering problems that look like software or controller issues as in the past with RPi. But majority will just be fine attaching random USB3 HDD or SSD to their RPi 4 enjoying reasonable storage and NAS performance.

So for something like such a proposed VIMS to be a success, it’s important to eliminate all USB storage downsides, underpowering hassles and still remain at an attractive price

  • 12V powering to prevent undervoltage drama
  • PCIe attached SATA for 2 or even better 4 SATA devices
  • housing (half opened enclosure) available from the start in a stackable fashion which makes adding more disks an inexpensive task
  • 100% software compatible to VIM3
  • retail price for an 1GB variant most probably now even lower with RPi 4 as surprisingly strong ‘competitor’. I would happily spend 60 bucks on something like this but not sure about the target audience.

I’m currently overthinking my ‘OMV images for ARM boards’ approach and if something like a VIMS becomes reality I most probably will only create new OMV5 images for suitable ARM hardware. Something like VIMS, ODROID HC1, HC2 – just to encourage users to work with appropriate hardware and not unreliably toys (majority of bug reports with SBC is either related to running off crappy SD cards or underpowering – dealing with this definitely sucks)

3 Likes

I also agree with tkaiser and the need for native sata interface, since adding usb disk often creates more problems when considering server usage.