Your Kiwi must be running the v1.690 (or later) release to use the proxy service and be in the public Kiwi list (,

Please visit (documentation) and (online store)

Alternate cooling method

I fab'd and installed these aluminum pieces to serve as both heatsink and ducting to air blowing it from an external fan.


  • Looks interesting. How do you plan to connect the fan?
  • I have a Kiwi cluster of four units mounted on a single end plate. On that is a plenum/fan-mount with a single 80 mm fan. Testing, so far, shows the CPU temp never exceeds 46 deg even with heavy loading.

  • Is this material aluminum or another alloy? Looks like you fabricated this design. Maybe you will publish it.
  • simple alum. and yes I designed it and made them with a water-cutter. I'll publish the drawing. I have that cardboard baffle there to defleact the air to a more favorable path.
  • I ordered a Kiwi case from Mouser to try some other options for the stock box.
    "Expected delivery 1st March", checked yesterday now 27th April (which I doubt).
    I might have to buy one from the normal UK retailers at twice the price to get on with it ;-).

    I see the simplest "reto-fit with a screwdriver" solution as a set of header extenders and a bolt on finned
    heatsink to make full use of the space between Ai and Kiwi, together with new end plates.

    Personally I'm still going to follow the heatpipe route as it should be able to leave one end plate as is
    and take the heat out one end (and the shell), quite how ugly that would be I'm not sure but I've a few ideas and just need to focus.
    CAD is great but having the bits in hand makes it easier.
  • I'm not sure that my bends in those pieces make any real difference. They could be fab'd from 1/4X1/4 aluminum (or copper) stock. They are in effect a heat pipe.
  • edited March 2020
    Respectfully I'd not call that a heatpipe as the term tends to be used for pipes that use evaporation and condensation* to make the thermal transfer potential, greater than that of a solid item.
    You could clamp some heatpipes down to the heatsink then use copper radiator fins with much greater surface area, directly in the best controlled airflow of the fan.
    That, once manufactured at the right price, could be a very modular way to got from BBG-AI with a small kit.

  • Yes, I know what heatpipes are and perhaps I misstated that. By in effect, I meant it draws heat from the hotspot...
  • I figured but didn't want to blur the physics of what is working there.
    If the bars had even more surface (like ridges), maybe even were bolted to your solid end plate then you could move heat extra in a number of ways.
    The fact you have some nice bits of Ali invites a couple of extra plates bolted across the flow, come to think of it even stacked thin plates separated by washers (and lots of thermal greese) bolted to the AI heatsink could add to the surface area.
    Might have to recycle some take away tins here...
  • It is adequate the way it is, so don't want to complicate it. The simple addition of that paper deflector was worth 1 deg !
  • The evolving kiwi cluster
  • Almost ready... removed paper ducts and with 4X 14 ch installed max temp at 100% CPU is 44 deg C, a 19C rise
  • this is now obsolete
  • I am working on a self controlled fan cooler for the BBAI+kiwi.
    It is possible to assign through pin mux two unused pins of the cape/headers on the BB AI to manage PWM and to read RPM output, as GPIO in?
    After the review of the package I suppose the right place to put some modifications is "am5729-beagleboneai-kiwisdr-cape" but I am not sure.
    A control of the fan, in closed loop with the core temperature, seems to be a reasonable approach.
    Hope in your support.

  • I don't think you need to throttle it, just let it run all the time
  • edited May 2020
    Usually to run a fan at the max speed reduce the life and the MTBF. Moreover in our case the goal is to stay below a reference temperature. In winter with low temperatures probably the required forced airflow is significantly lower. Last point is the acoustic noise generated by the fans.
    The fan I prefer to use has a range in power consumption from 0.5 W up to 5 W, a lot of money for a 24h/365d service.
  • Just to keep you updated, if interested.
    Now I am able to read the RPM (revolutions per minute) of the fan connecting the tachometer output at the pin 8.35.
    The reader, not optimized, is consuming less than 1.3 % of the CPU.
    Next step is to control the speed of the fan with the PWM generator embedded in the AM5729.
  • I did think about that but was not sure if PWM was a good idea around a sensitive RF device.
    I'll be interested to see how you get on.

    One daft idea I use here for "extra cooling when the room is hot" is a 12V fan directly connected to 2.4W solar panel.
    The 100mm fan is at the end of the case (just clipped to the table) and when the sun hits the window the room heats up but also the fan spins.
    Totally low-brow and unscientific but works well.
  • edited May 2020
    The PWM frequency for the fan control is usually 25 kHz, so I share with you your concern about RFI.
    It is also true that the current for this control is less than 1 mA at 3.3 V.
    Let's look at the results ;)
  • Here some preliminary results.

    The measurement conditions are Kiwi running at 1 GHz, with 14 channels used to carry the IQ stream to a wsprdaemon client.

    The ambient temperature is 20° C, without any relevant airflow (artificial or natural). The board is in an open environment, without a box as you can see this photo.

    For the cooling system a NMB fan model 04028DA-12R-AUF has been used: the supply voltage is 12 V and it has auxiliary wires for PWM control and tachometer.
    It is usually selected in telecom carrier grade equipment. The tachometer is useful to report reduced efficiency during the lifetime or as signaling method in case of blocking.
    Each level of speed has been maintained for 60 minutes to assure that not only the transition has been recorded but that a stable point was reached.

    The conducted test had the purpose to show the impact of the PWM control versus temperature of the BB AI and power consumption.

    A first coarse measurement starting from an high speed mode and then lowering shows that the major step is within a range comprised between 10% and 30%.

    Then the fine measurement with 1% steps

    and a zoom in the most promising zone as stability target: 48° C ± 2°

    The PWM control is based on the AM5729 internal block and the tachometer is performed with gpiod library using the pin P8.35
    To enable PWM in the P8.36 the dts shall be modified including the following code
    &epwmss0 {
     status = "okay";
    &ehrpwm0 {
     status = "okay";
     pinctrl-names = "default";
     pinctrl-0 = <&ehrpwm0_pins>;
    &dra7_pmx_core {
     ehrpwm0_pins: ehrpwm0 {
      pinctrl-single,pins = <
       DRA7XX_CORE_IOPAD( 0x3568, PIN_OUTPUT| MUX_MODE10 ) // P8.36b
    To avoid conflicts on the same pin it is also required to modify the setting for this register under the cape_pins_kiwi group:
    DRA7XX_CORE_IOPAD(0x3604, MUX_MODE15) // D7 P8.36a
    The row inside the same group referring to the P8.36b must be removed.

    I hope John can accept this modification in his code: these pins are unused in the BBAI when hosting the Kiwi board.

    The next step is to implement the control, with alarms and controlled shutdown in case of fault of the fan, and to place all the elements inside a 14TE Eurocard cassette.


  • Thank you IW2NKE for the measurements and data. This fits the thought that "a little bit of air flow goes a long way".

    I just acquired a BBAI/kiwi (my 5th kiwi) and will be embarking on bring it up before long. In reading experiences and methods for cooling I'm wondering if in addition to fan and air flow changes if anyone has tried thermally conductive padding on the non-heatsink side of the BBAI. I have only a little experience with this material though have been using it successfully on recent versions of the active antenna project I've been pursuing.

    I'm not necessarily suggesting abandoning fans but I'm wondering how much benefit there might be in thermal padding between the bottom of the board and a good size, possibly airflow cooled, heatsink. It might reduce air flow requirements.

    Can anyone comment?

    Glenn n6gn
  • On the base thermal pad I would be surprised if it did more than about 10-20% of the required cooling.
    Thermal guides I referenced state there needs to be very good contact between the top of the CPU and whatever method of cooling used, as soon as that path opens up even slightly, there seems to be a marked affect on the temperature.
    Keeping the heatsink firmly attached to the CPU is one of my bugbears as there are not many physical fixing locations to attach to, those that are there are "behind" connectors or otherwise obscured so i makes it hard to lever round a corner. Over time adhesive solutions can fall prey to gravity, my AI is on its side for best heatpipe performance and needs other fixings to avoid creep.

    I still think the AI gets hotter than it should (compared to similar devices), it's almost like some unused AI/DSP core is still running hard or some current limiting resistors are missing and the CPU is seeing too much current on some pins.
    Or it could be that I have been spoilt with the other small boards on the market.

  • Fan controller work is really nice. Great to see the actual data!

    Thanks for posting that
  • My data is brief.... I have 4 X BBAI in that cluster, cooled by a single fan. 2 of them run 13 channels each of wspr via wav to wsprdaemon. 2 of them are public access. They are all cooled by that one fan. The all run about the same temp., worst case being ambient + 20 deg C. The fan is reasonably quiet.
  • edited June 2020
    I apologize for this long post, it is the last of this kind but I think it will be useful to someone else.
    As promised, I've encapsulated the Kiwi in a 14TE cassette from nVent Schroff after some CNC mechanical work to have the right hole as recommended by the manufacturer of the fan.
    The DXF file for the re-work of the front panel is available to everyone: just ask.

    In this environment, I did some test and coding for the automatic thermal regulation.
    The results are quite good, here the path to converge in a closed loop control after a cold start

    Then I've tried what happens in case of blockage on the front of the fan. It shows the recovery time to reach the set target temperature

    Here the statistical distribution of the samples when the target was set at 45° C over 80 hours of continuous duty.

    With a dummy load on RF port no noise rises up at 25 kHz or harmonics.
    If someone is interested in the C code to control the speed, I will put it available on the web.

    I hope again John will take in consideration to modify the sources as indicated before to have a PWM control as default on the BBAI.

    73 and enjoy your Kiwi+BBAI,

  • Just another method of keeping the AI tamed.

    I built a 2mm Ali plate to go between the Kiwi and the AI, 6mm (40x50mm) slab of Ali screwed to the bottom.
    I got this extruded case during the lockdown while wating for a real one, it's too long and tall but I figured I could work with that, its easy enough to take material off (the length).

    I'm temped to try bending up a much thinner copper version for the original case, see if can levitate the Kiwi while using the case outer for cooling.
    The bottom of the Kiwi does have SMD components so if you are temped to try a mid-plate be kind to those, this has a PET shim and some stand off washers so the pins are slightly (~0.4mm) out but it works fine.

    I fired this up and forgot to put a fan on the outside, leveled out at 59C running completely stable.
    It is mainly a "would it work" and would benefit from a better extrusion (I could not use the PCB rails), I post here in case anyone is inspired to engineer it properly.

  • Thanks for posting. It does make one wonder how it might work were the intervening sheet Copper and perhaps thicker and even lower thermal resistance. Also what would happen if thermal padding were placed between the components or ground plane on either/both boards to that same sheet.

    Did you happen to measure plate temperature?
    Did you happen to do a before/after broadband noise measurement without and with the intervening plate?

    I found my BBAI/Kiwi to actually be slightly *quieter* than the standard BBG/Kiwi. I'm not even certain that BBAI noise is evident in the that receiver.
  • Unless extensions are used the sheet thickness is limited by the gap of around 2.0mm - Actually 2.5 minus insulator and components, the caps on the bottom of the Kiwi are about 0.3mm high.
    I wanted to keep the standard gap so endplates could be reused.

    I think if it was copper it would only need to be about 1-1.5mm to handle the TDP of the CPU.
    I didn't measure the plate and it would be a gradient so depends where measured. This one is currently apart so can't check.
    I've just got some copper sheet and another enclosure is on its way so I intend to give it a go but I may try the original case first as these enclosures are bigger than they need be (though I do like the joint type - no gap, slides apart).

    My noise tests are fairly futile here as it totally depends on neighbours.
    The AI I use for WSPR does seem quiet and the PI based one I swapped out to test, although similar, was possibly slightly down on results over a few days (hard to quantify, again depends on locals).
    Going back to the AI gave more stable results over time.

    My motivation was to see if it had a good enough thermal path, then if it made any difference to the noise floor, I figured it was unlikley to make things worse (famous last words).
  • I was suggesting a terminated noise test, apart from external antenna or CM on the transmission line. Stock Kiwis tend to have a mid-HF bump while I didn't see that on the BBAI. I slightly suspect it will be pretty good and certainly not an issue if a preamp is used above 10 MHz. Just curious.
  • edited July 2020
    OK when the other enclosure arrives and assuming I don't get another week like last* I'll give it a go.

    Once a small amount of air is moving over the case the temperature drops so (to my mind) the thermal path is sufficient in 2mm Ali, I just need to shed the heat from the outside, 59C was still air and was the sort of range I expect from other methods I've tried without extra air movement.
    That is not a particuarly high temperature in cpu terms and as the operation was fine I should probably run for longer (was only running normal channels not 14ch). The obvious advantage is that the kit can be silent and case completely sealed.
    I tried a conduction calculator and assuming the plate touches on only half of its edge it should still have many times the conduction capacity needed (I'll have to see if I can CAD it with all holes and cutouts then and ask and engineer at work to thermal FEA it, assuming they have the thermal package).

    *(two separate but coincidental network hardware failures just as I hit the worst food poisoning I'd experienced)
Sign In or Register to comment.