Observation SITCore SBC Thermal

Of the two types of SITCore that I purchased, the FEZ Duino and the FEZ feather, I am noticing the feather heats up to a noticeable thermal point where it needs a heatsink. The duino on the other hand does not seems to have this thermal issue. I tried two feather boards so far and both exhibit the same thermal behavior. I did not have a LiPo battery hooked in either case just USB, and running the default application.

Strange! Is it heating around the regulator it where? What program are you running and what is connected to the board beside USB?

Nothing is connected to the boards as yet, no even headers. One board is running the default and the other is running the following:

 class Program
    {
        static void Main()
        {
            var enablePin = GpioController.GetDefault().OpenPin(GHIElectronics.TinyCLR.Pins.SC20100.GpioPin.PA8);
            enablePin.SetDriveMode(GpioPinDriveMode.Output);
            enablePin.Write(GpioPinValue.High);
            var cs = GpioController.GetDefault().OpenPin(SC20100.GpioPin.PD15);
            SpiNetworkCommunicationInterfaceSettings netInterfaceSettings = new SpiNetworkCommunicationInterfaceSettings();
            var settings = new SpiConnectionSettings()
            {
                ChipSelectLine = cs,
                ClockFrequency = 4000000,
                Mode = SpiMode.Mode0,
                ChipSelectType = SpiChipSelectType.Gpio,
                ChipSelectHoldTime = TimeSpan.FromTicks(10),
                ChipSelectSetupTime = TimeSpan.FromTicks(10)
            };
            netInterfaceSettings.SpiApiName = SC20100.SpiBus.Spi3;
            netInterfaceSettings.GpioApiName = SC20100.GpioPin.Id;
            netInterfaceSettings.SpiSettings = settings;

            netInterfaceSettings.InterruptPin = GpioController.GetDefault().OpenPin(SC20100.GpioPin.PB12);

            netInterfaceSettings.InterruptEdge = GpioPinEdge.FallingEdge;
            netInterfaceSettings.InterruptDriveMode = GpioPinDriveMode.InputPullUp;
            netInterfaceSettings.ResetPin = GpioController.GetDefault().OpenPin(SC20100.GpioPin.PB13);
            netInterfaceSettings.ResetActiveState = GpioPinValue.Low;

            var networkController = NetworkController.FromName("GHIElectronics.TinyCLR.NativeApis.ATWINC15xx.NetworkController");

            WiFiNetworkInterfaceSettings wifiSettings = new WiFiNetworkInterfaceSettings()
            {
                Ssid = "ssid",
                Password = "password",
            };

            //    wifiSettings.Address = new IPAddress(new byte[] { 192, 168, 1, 122 });
            //    wifiSettings.SubnetMask = new IPAddress(new byte[] { 255, 255, 255, 0 });
            //    wifiSettings.GatewayAddress = new IPAddress(new byte[] { 192, 168, 1, 1 });
            //    wifiSettings.DnsAddresses = new IPAddress[] { new IPAddress(new byte[]
            //{ 75, 75, 75, 75 }), new IPAddress(new byte[] { 75, 75, 75, 76 }) };


            wifiSettings.IsDhcpEnabled = true;
            wifiSettings.IsDynamicDnsEnabled = true;
            wifiSettings.TlsEntropy = new byte[] { 0, 1, 2, 3 };

            networkController.SetInterfaceSettings(wifiSettings);
            networkController.SetCommunicationInterfaceSettings(netInterfaceSettings);
            networkController.SetAsDefaultController();

            networkController.NetworkAddressChanged += (NetworkController sender, NetworkAddressChangedEventArgs e) =>
            {

                var ipProperties = sender.GetIPProperties();
                var address = ipProperties.Address.GetAddressBytes();
                Debug.WriteLine("IP: " + address[0] + "." + address[1] + "." + address[2] +
                    "." + address[3]);
            };

            networkController.NetworkLinkConnectedChanged += NetworkController_NetworkLinkConnectedChanged;

            networkController.Enable();

            // Network is ready to used
            Thread.Sleep(Timeout.Infinite);
        }

        private static void NetworkController_NetworkLinkConnectedChanged(NetworkController sender, NetworkLinkConnectedChangedEventArgs e)
        {

        }

        private static void NetworkController_NetworkAddressChanged(NetworkController sender, NetworkAddressChangedEventArgs e)
        {

            var ipProperties = sender.GetIPProperties();
            var address = ipProperties.Address.GetAddressBytes();
            Debug.WriteLine("IP: " + address[0] + "." + address[1] + "." + address[2] +
                "." + address[3]);
        }

With the above code running, the feather heats up noticeably a lot faster though.
Edited: The STM chip is what seems to be heating up…

The regulator is very tiny and it is getting hot. It is still within the limits but it is going to run hot.

We will be looking into this and see if we can upgrade the regulator in the future.

My simple fix

4 Likes

Seriously, that look very nice to me.

Will you add some water pipes?

1 Like

Is there any exception for offical staff that we leave two hearts?

2 Likes

Working on plumbing. Maybe an existing RPi watercooled heatsink could be in the works. Does this counts?

2 Likes

I have the same problem . i have bought a FEZ Stick and a FEZ Feather and the cores (SC20100S) are very hot. I dont have any external components and the software running on is the classic Blink led.

We have a nice about this in the docs. It is the tiny regulator that is getting hot. It is within limits but it’s is hot. Perhaps we should use a larger regulator in the future revs.

thanks Gus

I tested the fez stick board, observing the temperature of the components. the dc regulator is very hot but similarly stm32 generates a lot of heat. the processor is performing an infinite loop and I have not connected any external components to the board.
what is the temperature of the stm32 chip that you normally measured?

The board is very small, which explains how everything seem to be getting hot but we have done some testing and the regulator is the source

ok thanks for this tip.
if i power the board with external 3.3v resolve the board overheating?
i can replace the regulator with another ic?

Marco

That is a good idea, to add 3.3v. let us test it first for you

1 Like

For me it is a little bit warm if code just while(true);

Were you able to touch on processor for 10 sec?

I have found that using a rpi3 heatsink works just fine, see the picture above. I left one running for several weeks now on my desk and no performance issues yet. Will be moving it into my wheelchair project and see how well the thermal holds up under intense load.

1 Like

ok here is what we have fro you…

FEZ Stick does not get hot at all. You must have something connected to it.

FEZ Bit and FEZ Feather get hot because of the WiFi. IT is still within limits and it is okay but if you are adding more “things” and you need to draw more power then you need to add 3.3V regulator. You can actually add the 3.3V power source externally anyway and the board will not get hot.

we will update the docs

my FEZ Stick reaches high temperatures without doing anything.
these are the measured temperatures

Strange! Is it hot with reset button pressed?