# Unresponsive Raspi 3B on 64bit system – how to best diagnose it?

**URL:** <https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885>\
**Category:** Product support\
**Created:** [October 8, 2019, 5:12pm UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885 "2019-10-08T17:12:02Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![kkom](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/kkom/32/1152_2.png) [@kkom](https://forums.balena.io/u/kkom)\
**Post date:** [October 8, 2019, 5:12pm UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/1 "2019-10-08T17:12:03Z")

</div>

Hey!

I’m having connectivity/performance issues with my devices

- ports that are supposed to be hosting web applications are not responsive
- shell sessions inside containers are very slow
- web diagnostics don’t work at all with the following messages: (1) `Error reported when querying checks data: ssh client socket error while initiating SSH connection`, (2) `ssh client socket error while initiating SSH connection`, (3) `6x - Supervisor Current State error: tunneling socket could not be established, cause=socket hang up`

It’m running this application: [https://github.com/kkom/balena-unifi-controller](https://github.com/kkom/balena-unifi-controller) on a 64 bit Raspberry Pi 3B.

I made a few changes before the device started to behave in this way:

- hardware migration from Raspberry Pi 3B+ to Raspberry Pi 3B
- Balena OS migration from 32bit to 64bit
- base image migration for one of the containers from Ubuntu 18.04 32 bit (Bionic) to Debian 10 64 bit (Buster)

I could go back and methodically test the effect of each of them, but I wonder if it’s possible to inspect the device and find the problem more directly? Maybe it’s something as simple as insufficient RAM/CPU…

Could someone advise me on the best way to inspect the device if the web diagnostics fail?

Alternatively, an example device is `6b007f194afc8899597f986feab31193` and I’ve granted support access to it for a week! Will just need to refresh some secrets from env vars once this is done! 🙂

Thanks a lot in advance!

Konrad

---

<div class="post-metadata">

**Author:** ![kkom](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/kkom/32/1152_2.png) [@kkom](https://forums.balena.io/u/kkom)\
**Post date:** [October 8, 2019, 5:14pm UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/2 "2019-10-08T17:14:40Z")

</div>

I’ve also published a few extra ports on the container:

> <https://github.com/kkom/balena-unifi-controller/commit/5347dd691c471f4c328bd09e591b64e9cacd7a47>

---

<div class="post-metadata">

**Author:** ![dfunckt](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/dfunckt/32/56_2.png) [@dfunckt](https://forums.balena.io/u/dfunckt)\
**Post date:** [October 8, 2019, 7:33pm UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/3 "2019-10-08T19:33:11Z")

</div>

These errors suggest the device hasn’t boot up correctly, specifically the Supervisor doesn’t seem to be starting up. When you say “Balena OS migration from 32bit to 64bit” how did you go about doing that?

---

<div class="post-metadata">

**Author:** ![\_Page](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/_page/32/22_2.png) [@\_Page](https://forums.balena.io/u/_Page)\
**Post date:** [October 8, 2019, 8:04pm UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/6 "2019-10-08T20:04:41Z")

</div>

Hey, the best way to check manually would be to use the web based terminal to connect to the device’s host os where there are some basic tools available, I took a quick look at the device you shared and it does seem to be very heavily loaded (Load average: 20.58 10.74 4.18) which is almost certainly the cause of the slowness

---

<div class="post-metadata">

**Author:** ![kkom](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/kkom/32/1152_2.png) [@kkom](https://forums.balena.io/u/kkom)\
**Post date:** [October 8, 2019, 8:25pm UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/7 "2019-10-08T20:25:57Z")

</div>

Thanks @dfunckt & @_Page!

@dfunckt, I created a whole new application with a different base platform. I also used 64 bit images for both containers:

> <https://github.com/kkom/balena-unifi-controller/blob/155e1d1e9c34d5cd24aaceaf3e89b3f4ffd912ea/backup/Dockerfile.template#L1>

> <https://github.com/kkom/balena-unifi-controller/blob/155e1d1e9c34d5cd24aaceaf3e89b3f4ffd912ea/docker-compose.yml#L13>

@_Page, it certainly feels like it! Thanks for confirming it!

Some questions that come to my mind:

(1) Do you think it would be possible to add basic resource utilisation graphs to Balena dashboard?

This feels like basic tooling for managing multiple VMs in the cloud, intuitively managing multiple edge devices would have similar needs. Having to log in to host OS is time consuming and problematic when the device is indeed slow.

(2) Out of the 3 changes I made (downgrading 3B+ to 3B, replacing Ubuntu 18.04 with Debian 10, migrating the application to 64 bits), does any of them strike you as a potential culprit?

I’ll try reverting each of them, but I wonder if they can be reasoned about logically before doing the experiments.

(3) What happens to images generated from Dockerfiles containing tags `%%BALENA_MACHINE_NAME%%` when a device is of a different machine type than the application default one?

Unrelated to my problem, but @dfunckt’s question piqued my interest in it…

---

<div class="post-metadata">

**Author:** ![richbayliss](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/richbayliss/32/1054_2.png) [@richbayliss](https://forums.balena.io/u/richbayliss)\
**Post date:** [October 9, 2019, 8:27pm UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/8 "2019-10-09T20:27:40Z")

</div>

Hey,

The `BALENA_MACHINE_NAME` is substituted in the dockerfile, so as long as the arch-type is the same/compatible it would be fine.

If your issue is performance then the drop from the Pi 3B+ to the 3B wouldn’t help; the 3B+ is a faster chip.

The idea of resource graphs is an interesting one, I will make an issue for the product team to look at, thanks.

---

<div class="post-metadata">

**Author:** ![kkom](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/kkom/32/1152_2.png) [@kkom](https://forums.balena.io/u/kkom)\
**Post date:** [October 10, 2019, 8:54am UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/10 "2019-10-10T08:54:55Z")

</div>

Hey!

So is `BALENA_MACHINE_NAME ` substituted correctly even if the arch of the individual device is different than the default arch of the app?

Yeah – I know that 3B is less performant than 3B+ (1.4 GHz -\> 1.2 GHz CPU clock speed). My question was which of the 3 things could have contributed to the performance drop in a major way. I guess I’ll experiment with that & revert each of the 3 changes separately!

Thanks!

Best,  
Konrad

---

<div class="post-metadata">

**Author:** ![roman-mazur](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/roman-mazur/32/2194_2.png) [@roman-mazur](https://forums.balena.io/u/roman-mazur)\
**Post date:** [October 10, 2019, 9:41am UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/11 "2019-10-10T09:41:13Z")

</div>

> My question was which of the 3 things could have contributed to the performance drop in a major way

I would start by comparing performance on 3B+. And, if there is no significant difference, continue with the OS and image arch checks.

> So is `BALENA_MACHINE_NAME` substituted correctly even if the arch of the individual device is different than the default arch of the app?

`BALENA_MACHINE_NAME` is substituted with the default device type for your app. And this is the reason we don’t allow a full mix of different device types under an app. The restrictions we put on what devices you can add to an application with some specific default type make sure that images built from docker file templates will work on all devices on the fleet. So, we allow hybrid fleets with compatible architectures only.

---

<div class="post-metadata">

**Author:** ![kkom](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/kkom/32/1152_2.png) [@kkom](https://forums.balena.io/u/kkom)\
**Post date:** [October 10, 2019, 9:53am UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/13 "2019-10-10T09:53:04Z")

</div>

Brilliant! Thanks a lot for this detail! 🙂

---

<div class="post-metadata">

**Author:** ![kkom](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/kkom/32/1152_2.png) [@kkom](https://forums.balena.io/u/kkom)\
**Post date:** [October 10, 2019, 10:14pm UTC](https://forums.balena.io/t/unresponsive-raspi-3b-on-64bit-system-how-to-best-diagnose-it/35885/15 "2019-10-10T22:14:39Z")

</div>

A little update for everyone who helped me here – the issues wasn’t in 64 bit system, 3B downgrade or migration to Buster!

I created a new topic to discuss my findings without the confusion of our earlier exchange here:

> [@Large number of forwarded UDP ports break the device](https://forums.balena.io/t/large-number-of-forwarded-udp-ports-break-the-device/36364):
>
> I isolated this line as the cause of issues with my device: ports: (...) - "5656-5699:5656-5699/udp" When this range of 44 UDP ports is published in addition to the existing 3 UDP and 6 TCP ports, I am unable to access my service via the 8443/TCP port. I don’t know if this is because 8443/TCP is no longer published correctly, or because the device gets broken in a different way… I can think of two possibilities now: My syntax for publishing multiple UDP ports is incorrect… B…
