Extended board A/B?


The hardware manual identifies the layout as “96boards CE Extended specification”, but does not make reference to where its design lies with respect to Extended A or B, or anything else with respect to component heights in the extended areas.

I presume based on the ethernet jack that it must technically be an “Extended B” since there is no way that that jack can be short enough to fit within the 6.5mm height restriction for an “A” board. But what about the rest of the components in the extended areas, and in particular, the extended COMPONENT area between 55.0mm and 81.5mm? Does anybody know what the maximum component height is within that area?

To provide a little bit of context, I’ve been working on a “large” mezzanine board that extends to 78mm, which is within the extended component area. If everything within the extended component area is within the 6.5mm height restriction, then my board should be compatible with the db820c. If there is something in there that is too tall (how tall is J16?), then it may be physically incompatible or require a spacer board.


FWIW, on my board, J15 is the tallest, at 6mm about 1mm taller than J16, but I have a sata HMC plugged in and one Sata connector would interfere at 81.5mm, it is at about 76.5mm, you might have to abandon the possibility of using the Mini PCIe slot.


That sounds like it would actually work then. The mini-pcie slot being restricted really isn’t the end of the world, but by the sounds of it, whether or not that slot could be used would mostly depend on the shape of the mini-pcie card itself.



Hi @doitright

The 820c is “theoretically” Extended A compliant, all of the components up to 81.5mm are lower than 6.5mm, however the final area (81.5mm to 100mm) are taller (specifically the Ethernet connector). We had to use a Ethernet connector that didn’t have integrated magnetics to keep the connector in the 81.5mm to 100mm zone. There is no SATA connector on the 820c unless you install a SATA adaptor in the M.2 PCIe slot.
The SATA connectors and cables from the PCIe Slot will be taller than 6.5mm, but I think at least one of the SATA cables will be outside the 81.5mm zone (Unfortunately I don’t have one to do a physical check on).There are lots of cards that could be used in the PCIe slot with no interference issues, just not the common dual SATA card.

To be honest the CE spec isn’t really clear, the “intent” was that “A” cards would have everything under 6.5mm up to 81.5mm, and taller components in the final 18.5mm, but it doesn’t formally read that way now that I am re-reading the spec. Unfortunately, I am no longer in a place where I could drive a revision to the spec to clarify this.

Maybe Linaro could hire me to deal with this type of thing :wink: I am looking for work.



Another issue could be heat. Like many of these boards, the SoC is on the wrong side and it does get hot. On the other hand, I think the dram is on top of the SoC so any heat sink would be pulling heat from the SoC through the dram.


@ljking: Thank you. Until recently reviewing the spec again, I was also under the impression that A allowed for taller components in the connector zone. That is one of the reasons why I designed my board to 78mm. Less than 81.5 plus a little bit of freedom. I wonder if the spec was revised and accidentally messed up at some point?

@kldixon: my application isn’t really a major cpu heat generator. Even the hikey960 keeps at a reasonable temperature most of the time, so I have no concerns there about the DB820C. I’m actually building an automotive IVI interface. The biggest CPU user for that application is navigation. The rest of it benefits from a strong CPU just for responsiveness. It isn’t as if it will be compiling kernels or playing video games.


There is certainly an error in the spec because the height limits for
the extended area on a Extended A board are inconsistent between the
narrative and the drawings.

So whatever happens I’ll file a bug about this.


Hi @doitright: you have designed your extended mezzanine correctly, that was the intent. If there are any changes to the spec it will be to make it clearer that you have done it right.

Hi @kldixon You are correct, heat could be an issue. If you read the spec you will notice that the heatsink “could” cover most of the standard board up to 6.5mm tall, then when you put a mezzanine on top there is no space for components on the bottom side of the mezzanine, not even enough space for through-hole component leads.

The reality is so-far no-one has built a board with a heatsink that large, but it would be permitted by the specification. The 96Boards specification does NOT ‘require’ the SOC on the top of the board, this is up to the board designer.

You also correctly noted that a SOC with a memory stacked on top (Package on Package - PoP) wouldn’t really get rid of heat through the top very well (due to the air gap between the SOC and the memory). On the 410c this isn’t an issue because the 410 SOC doesn’t use PoP memory. Fortunately most SOCs have a thousand balls or-so which do a very good job of thermally connecting the SOC to the board, you can then get rid of the heat through the PCB, or put a really large heatsink/fansink on the bottom side of the card. The 410c has a gold pad under the SOC which is intended for attaching a heatsink to. In my 410c testing you could run the CPU, GPU and everything else at max speed indefinitely with a heatsink on the bottom of the board. Same trick works with the 820c.


How would you suggest attaching a heatsink to the bottom of an 820c? Looking at the pictures of it, that part of the bottom is very uneven with a lot of components.


Hi @doitright

Take a look at my post here: Recommended Heatsink/Fan for 410c The post shows how to do it on the 410c. The only difference for the 820c is you need two pads (one under the CPU, and one under the PMIC) https://www.digikey.ca/products/en?keywords=1168-1557-ND . I also changed to using M2.5 screws instead of 4-40 screws.

You will need a larger heatsink, I used a different extrusion from HeatSinkUSA, this time 3.5" wide cut to 4.0" long, https://www.heatsinkusa.com/3-500/ drill 6 holes into the heatsink, tap M2.5 and drive the screws through the board and standoffs into the heatsink. The standoffs are 4mm high, the thermal pads are 5mm high, when crushed 1mm the pads make good thermal contact with reasonably low thermal resistance.

This heatsink is really over-kill for the job but it was quick and cheap to source. I did this for the very early builds when thermal throttling wasn’t in the builds and it kept crashing if I tried to rebuild the kernel on the 820c, of course that issue is now fixed and builds run without difficulties.



Thanks for that reply, Lawrence, in particular your explanation in the 410c thread. I was using the term ‘wrong’, loosely, in respect of attaching heat sinks rather than the specification. I did wonder if it was worth trying to get heat out from under the board but there are so many components there I dismissed the idea.
I followed the links through the Digi-Key site to:
I would have thought that some kind of electrically insulating putty would be more conformal than a silicone elastomer, perhaps using elastomer around the edge of the heat conducting area as a seal to prevent the putty flowing out of the gap.
These are just idle thoughts, I have no experience in this area.


Hi @kldixon:

You are correct, a putty or gel would conform better than the elastomer, I selected the elastomer because the thermal conductivity was low enough and this was a “easy” to implement method. There are lots of “better” methods, for instance a vapour chamber design, but they require a lot of engineering to implement.

As a matter of interest, the 820 already has a gell between the memory chip on top of the SOC and the shield. Unfortunately it doesn’t gain a lot for two reasons, 1) there is a small air gap between the SOC and the memory (as we have already pointed out) and 2) the metal of the shield is so thin it doesn’t really do a very good job of spreading heat, so we added the black sticker that is on top of the shield. The black sticker is actually a carbon nano-tube thermal conductor (developed for use in cell phones) which does a quite good job of spreading the heat. After all that it is only a 10% gain in thermal limited processing.

The silicon elastomer on the bottom is quite good at conforming to the “rough” shape of the components under the board (the hundreds of resistors, and capacitors). The balls under the SOC are really good thermal conductors, and the 10 layers of copper inside the PCB do a good job of spreading the heat over a larger surface area (better than the black sticker), so all you need to do is get the heat away from the PCB.

There are two ways to get the heat away from the PCB.

  1. the most effective would be forcing air across the surface of the PCB (a fan mounted at the side of the board blowing air across the board). This has several downsides, low reliability of the moving parts, the power consumption of the fan, and the noise. proper ducting would make this by far the best possible cooling with the least cost. This is why all graphics cards have fans, you need to send the heat somewhere.
  2. thermal conductivity from the heat source to the heatsink (the elastomer pads), and a heat sink designed for free-air dissipation. If you look at the heatsink on a graphics card you will see the fins are really close together, these are for forced air applications. The heat sink I selected has the fins far apart, this is designed for convection cooling. The advantage of this solution is it is still cheap, and ‘good enough’ while avoiding the noise of a fan.



That’s some pretty good information. I’m going to be watching for when those 820s are available again and grab one up. Probably I won’t have to worry about cooling much, my board already has a 4 pin fan connector for a 5v PWM fan. Being automotive application, you can’t even hear a small fan spinning in the dash.