Install Old Version of DietPi? Topic is solved

Having issues with your DietPi installation, or, found a bug? Post it here.
Post Reply
Alyas

Install Old Version of DietPi?

Post by Alyas »

Is it at all possible to install or update to an older version of DietPi?

Back in early March, I received my Raspberry Pi 3 and parts, and proceeded to install DietPi. The version on my system ended up being v112. Recently, I have shown my Pi to three friends, each of them wanting their own. I ordered the exact same hardware that I had ordered for myself and built three exact clones for my friends. When installing DietPi, I used the exact same software and config options as well. In fact, the only difference between mine and theirs is that the version they ended up having on their systems was v118.

Everything seemed fine at first, but while doing things on their systems, it would not be long until a yellow square appeared in the top right corner, sometimes even turning red. According to my searches, which led me to the official RPi site, a red square means the temperature has hit 85°C and is overheating. The reason given for the yellow square is:

"The Pi 3 is throttling CPU speed due to thermal limitations. There is a graceful reduction in ARM clockspeeds if the SoC exceeds 80°C and during this time a yellow square icon is rendered on-screen. Idle clockspeeds (600MHz) are forced if the SoC hits 85°C. If this is an issue for your application, buy a heatsink - even a small one will likely prevent throttling."

The problem is that all four machines are using the exact same heat sink kit and case, and only the three machines running v118 have issues with the squares. My v112 has no issues what-so-ever doing the exact same things.

Based on the fact that the only difference is the version of DietPi installed on the system, I am wondering if there was some change somewhere that is causing these issues in the newer version. I wanted to install v112 on their systems and see if the square would appear, and gradually install newer versions until I can figure out what might have introduced it. Outside of this, I cannot figure out what could possibly be causing this anomaly...

Any help would, of course, be appreciated -- Whether it be installing the older versions or ideally, solving the colored square issues. Thanks.
User avatar
Fourdee
Site Admin
Posts: 2788
Joined: Tue Feb 06, 2007 1:36 pm

Re: Install Old Version of DietPi?

Post by Fourdee »

Hi
"The Pi 3 is throttling CPU speed due to thermal limitations. There is a graceful reduction in ARM clockspeeds if the SoC exceeds 80°C and during this time a yellow square icon is rendered on-screen. Idle clockspeeds (600MHz) are forced if the SoC hits 85°C. If this is an issue for your application, buy a heatsink - even a small one will likely prevent throttling."
DietPi has the SoC thermal limit set to 65'C by default on RPi, to reduce heat damage and extend the life of your device. Can you ask your other friends to run the following command and check temp when the red icon appears:

Code: Select all

cpu
Untitled.png
If you are getting a "rainbow square" in the top right of screen, this indicates voltage drop. In that case, you need to try a different power supply, ideally the official one, mobile phone chargers are to unpredictable, unreliable and will cause various issues, mostly filesystem corruption.

I think this is a PSU related issue, but let me know the results of the cpu command when the req square is shown.

Also, are your friends overclocking the RPi? I'am yet to see any RPi go over 65'c unless it is overclocked.
Is it at all possible to install or update to an older version of DietPi?
As DietPi automatically updates to the latest version during 1st run setup, downgrading to an older version isnt possible at the moment.
If you find our project or support useful, then we’d really appreciate it if you’d consider contributing to the project however you can.
Donating is the easiest – you can use PayPal or become a DietPi patron.
Alyas

Re: Install Old Version of DietPi?

Post by Alyas »

Okay, so each system is made up of the following parts:

Pi 3 and Power Adapter Kit: CanaKit Raspberry Pi 3 with 2.5A Micro USB Power Supply (UL Listed)
MicroSD Card: SanDisk Ultra 128GB microSDXC UHS-I Card
Heatsinks: Btek® Aluminum Cooling Heatsink for Raspberry Pi
Power Button: RemotePi Board for Pi 3
Case: Acrylic Case for RemotePi Board for Pi 3

They apparently do not sell the Official Power Supply in the states, at least not through Amazon, but the one in the CanaKit is supposedly made specifically for the Pi 3. I should note that all the cables, including the power supply, that work fine in my Pi 3 are the same ones being used in my friend's Pi 3 while I'm setting up their systems; I simply took the cables out of my system and plugged them into their system for the process.

I have never received a rainbow colored box, just the yellow box and the red box. The red box is much more rare, usually it is the yellow box that just shows up. Neither box shows up when idle, though, only when the system is busy doing something, so being able to run the "cpu" command when either the yellow or red box shows up is tough, since by the time I exit out of what I'm doing so I can run the command, the box has vanished. I managed to run it while the yellow box was on the screen, however, by creating a dietpi-backup, logging into OpenSSH via WinSCP, and then creating a zip file of the backup folder. This got the system working enough to make the yellow box appear. I snapped a pic the moment it did.

This is what cpu gave me when I first start my system:
DietPi-BootCPU.jpg
This is the yellow box that appears:
DietPi-YellowBox.jpg
This is what cpu says when I run it the moment the yellow box appears:
DietPi-YellowCPU.jpg
The yellow box issue was discovered after giving the Pi to the first friend who asked me to build a system for him (since it never occurred on my system, I was unaware of the issue.) I still held onto the other systems I was building for my other two friends until I could solve the yellow box problem. None of the systems are overclocked at all. These are the exact steps I took in installing their systems. After booting up the system, it updates the 115 image to 118 and then reboot. I sign in again.

The first question I am asked is if I will be running things from a hard drive instead of memory card. I answer no.
I change SSH Server from Dropbear to OpenSSH.
I go into "Software Optimized" and put an asterix next to LXDE: Desktop and Kodi. (Note that I have never run these, I just install them in case I need to in the future.)
The setup asks me if I want to configure Autoboot Options. I say yes and choose "Console: Automatic Login".
I then go down to DietPi-Config on the menu.
I choose Display Options, Set the Resolution to 1080p and GPU/RAM Memory Split to Gaming.
I don't select Audio Options, Performance Options, or Advanced Options at all.
I go into Language/Regional Options and choose Locale. I add an asterix next to en_US.UTF-8 UTF-8. I choose None for the Default Locale.
I next choose Timezone > America > New_York.
I go into Keyboard and choose Generic 104-Key PC > Other > English (US) > English (US) > Default for Keyboard Layout > No Compose Key.
I skip Security Options, both Network Options, AutoStart Options, and Tools.
I exit DietPi-Config and then finally go to "Go" to start the installation.

That's it. Same setup on all four systems, and my original with v112 is the only one that doesn't get a yellow square under load.

So what's interesting now, is that I managed to find my old image for v111, so I wrote that to the memory card from one of my friends' system and booted it up without the Ethernet cable attached. I attempted to install DietPi without allowing it to connect to internet and update to v118 and at first it would not let me. So I plugged the cable in, applied the internet settings and when I left the screen, it attempted to upgrade to v118. I started tapping some keys and managed to stop it from updating. So I installed everything I normally do as per my steps above, this time using v111. When I did the backup and zipped it up over WinSCP, I periodically typed in cpu to check the temperature. Eventually, it did hit the 60°C as shown in the screenshot and gave the same red "Running Hot, Not Recommended" warning. But for whatever reason, the yellow box never appeared. Originally, I was thinking that a change between v111 and v118 was causing a higher temperature, but this experiment leads me to believe that whatever change happened between v111 and v118 did not change the temperature, it simply added the yellow box graphic.

Doesn't change the fact that I shouldn't be hitting 60°C simply by zipping a file or playing a retro game, right?
User avatar
k-plan
Posts: 416
Joined: Sun Feb 28, 2016 5:28 pm

Re: Install Old Version of DietPi?

Post by k-plan »

Hi,

do some tests as well:

- Raspberry Pi 3 : https://www.rasppishop.de/Raspberry-Pi- ... -64Bit-CPU
- Raspberry Pi 3 Official Case red/white: https://www.rasppishop.de/Raspberry-Pi- ... -Rot-Weiss
- Raspberry Pi Official Universal Power Supply Unit - 5,1V/2,5A: https://www.rasppishop.de/51V-25A-Netzt ... el-B-Weiss
- Raspberry Pi Alu Heatsink: https://www.rasppishop.de/Raspberry-Pi- ... r-Kuehlung
- DietPi version:

Code: Select all

 ───────────────────────────────────────
 DietPi     | 13:58 | Thu 26/05/16
 ───────────────────────────────────────
 V118       | Raspberry Pi 3 Model B
 ───────────────────────────────────────


* Do a backup on USB-Stick:

Code: Select all

root@RPi-3:~# dietpi-backup
* compress backup directory with Midnight Commander as tar.gz (heavy load for only one cpu core)
htop-tar.gz
htop-tar.gz
cpu-gunzip (tar.gz)
cpu-gunzip (tar.gz)
* light yellow box appears (at 60 °C until 62°C)

----------------

2nd test.

* compress backup directory with Midnight Commander as tar.bz (heavy load for only one cpu core)
cpu-bunzip2 (tar.bz)
cpu-bunzip2 (tar.bz)
* solid yellow box appears (at 63°C until 64°C)

* to show, that cpu is throttling arm core speed under heavy load.

Code: Select all

root@RPi-3:~# while true; do vcgencmd measure_temp && vcgencmd measure_clock arm; sleep 2; done
temp=63.9'C
frequency(45)=805000000
temp=63.9'C
frequency(45)=776000000
temp=64.5'C
frequency(45)=783000000
temp=63.9'C
frequency(45)=797000000
temp=63.4'C
frequency(45)=801002000
temp=63.4'C
frequency(45)=803000000
temp=64.5'C
frequency(45)=807000000
temp=63.9'C
frequency(45)=830000000
temp=63.9'C
frequency(45)=830000000
temp=63.4'C
frequency(45)=830000000
temp=63.4'C
frequency(45)=829998000
temp=63.4'C
frequency(45)=819000000
temp=64.5'C
frequency(45)=823000000
temp=64.5'C
frequency(45)=792000000
temp=64.5'C
frequency(45)=788000000
temp=64.5'C
frequency(45)=788998000
temp=63.4'C
frequency(45)=783000000
temp=63.4'C
frequency(45)=811002000
temp=63.4'C
frequency(45)=798000000
temp=63.9'C
frequency(45)=793000000


--------

for comparison cpu at idle:

Code: Select all

root@RPi-3:~# cpu

 ─────────────────────────────────────────────────────
 DietPi CPU Info
 Use dietpi-config to change CPU / performance options
 ─────────────────────────────────────────────────────
 Architecture |     armv7l
 Temp         |     52'c | Running warm, but safe.
 Governor     |     ondemand
 Throttle up  |     50% CPU usage

                 Current Freq    Min Freq   Max Freq
 CPU0         |      600 Mhz      600 Mhz    1200 Mhz
 CPU1         |      600 Mhz      600 Mhz    1200 Mhz
 CPU2         |      600 Mhz      600 Mhz    1200 Mhz
 CPU3         |      600 Mhz      600 Mhz    1200 Mhz

root@RPi-3:~# while true; do vcgencmd measure_temp && vcgencmd measure_clock arm; sleep 2; done
temp=52.1'C
frequency(45)=600000000
temp=52.1'C
frequency(45)=600000000
temp=52.1'C
frequency(45)=600000000
temp=52.1'C
frequency(45)=600000000
temp=52.1'C
frequency(45)=600000000
temp=53.2'C
frequency(45)=1200000000
temp=51.5'C
frequency(45)=600000000
temp=52.1'C
frequency(45)=600000000
temp=52.6'C
Maybe DietPi has the SoC thermal limit set a little "conservative " for RPi 3 at the moment.

example:
https://github.com/raspberrypi/linux/is ... -191748119

@Fourdee: do you like to have a github ticket for this?
If you find our project or support useful, then we’d really appreciate it if you’d consider contributing to the project however you can.
Donating is the easiest – you can use PayPal and Bitcoin.
User avatar
Fourdee
Site Admin
Posts: 2788
Joined: Tue Feb 06, 2007 1:36 pm

Re: Install Old Version of DietPi?

Post by Fourdee »

Thanks for the information and tests guys. Very insightful.

So the Yellow square is a temperature warning? I always knew the RPi3 ran much hotter than previous boards (+10-20'c).

https://www.raspberrypi.org/forums/view ... 37932&f=63
Why is there an orange/yellow square in the top right of the display?
This indicates that the Pi 3 is throttling CPU speed due to thermal limitations. There is a graceful reduction in ARM clockspeeds if the SoC exceeds 80°C and during this time a yellow square icon is rendered on-screen. Idle clockspeeds (600MHz) are forced if the SoC hits 85°C. If this is an issue for your application, buy a heatsink - even a small one will likely prevent throttling.
Aha, so when the device is thermal throttling, the square appears.
@Fourdee: do you like to have a github ticket for this?
Please if you would. Will allow us to discuss with everyone and implement any changes.

Maybe you are right K-Plan, our 65'c limit might need bumping up. But I strongly believe sustained 65'c+ is bad for any SoC, especially considering the heat dissipation to other components on the PCB. It will reduce the device lifespan.

Maybe we can set thermal limit default for RPi3 to 70'c, 75'c at a push, but I personally don't like high temps.

@Alyas:
You can change the thermal limit in

Code: Select all

dietpi-config
Then goto performance options and change ARM Temp Limit
If you find our project or support useful, then we’d really appreciate it if you’d consider contributing to the project however you can.
Donating is the easiest – you can use PayPal or become a DietPi patron.
User avatar
k-plan
Posts: 416
Joined: Sun Feb 28, 2016 5:28 pm

Re: Install Old Version of DietPi?

Post by k-plan »

Fourdee wrote:Please if you would. Will allow us to discuss with everyone and implement any changes.
Thanks, I will do it later.
k-plan wrote:Maybe you are right K-Plan, our 65'c limit might need bumping up. But I strongly believe sustained 65'c+ is bad for any SoC, especially considering the heat dissipation to other components on the PCB. It will reduce the device lifespan.
100% agree. Better a slow and save working device, then a non working device ... :lol:

http://makezine.com/2016/03/02/raspberr ... atch-fire/
Fourdee wrote:Maybe we can set thermal limit default for RPi3 to 70'c, 75'c at a push, but I personally don't like high temps.
dietpi-config =>> DietPi - Performance Options =>> as option only for RPi3 (YOU will do this at your OWN RISK !! ) ???
If you find our project or support useful, then we’d really appreciate it if you’d consider contributing to the project however you can.
Donating is the easiest – you can use PayPal and Bitcoin.
User avatar
Fourdee
Site Admin
Posts: 2788
Joined: Tue Feb 06, 2007 1:36 pm

Re: Install Old Version of DietPi?

Post by Fourdee »

Looks like Broadcom rushed out the BCM2837 to try and compete with other SBC's on the market that are 1.3-2.0ghz. They clearly are struggling with basic heat issues, maybe pushing the SoC clocks further than it really is capable of.
It actually feels like the BCM2837 is already pre-overclocked. Where as other BCM's (RPi1/2) had ample room for overclocking.

The BCM2837 has a core frequency of 400mhz (up from 250mhz for all other BCM's). So maybe thats the root cause.

I wonder what the fabrication size is for BCM2837 (nanometer).

EDIT:
40nm (https://www.raspberrypi.org/forums/view ... 06#p955306). Where as Odroid C2 (s905) has 28nm http://system-on-a-chip.specout.com/l/1204/Amlogic-S905.
Broadcom need to upgrade their fabrication process, big time, or the RPi will fall further behind the current market. Considering its right at the bottom for current tech, not a good sign.
If you find our project or support useful, then we’d really appreciate it if you’d consider contributing to the project however you can.
Donating is the easiest – you can use PayPal or become a DietPi patron.
User avatar
k-plan
Posts: 416
Joined: Sun Feb 28, 2016 5:28 pm

Re: Install Old Version of DietPi?

Post by k-plan »

Hi,
Fourdee wrote:So the Yellow square is a temperature warning?
Yes. If core temperature is reaching 5°C below the set value, cpu core frequency of 1200 MHz will begin to throttling down stepwise per cpu core to lower the temperature.
On the monitor a pale light yellow square box appears and become more solid with higher rising temperature, until it reached the set limit.
Reaching the limit, a red square box appears and the red LED on the board start blinking as well. Now all cpu cores run only at 600 MHz.

A other test on the same device, with set "ARM Temp Limit" to 70°C :
ARM Temp Limit
ARM Temp Limit
Starting at:
cpu-temp-start
cpu-temp-start
* compress backup directory with Midnight Commander as tar.bz (set cpu cores on heavy load)
htop-tar.bz
htop-tar.bz
* solid yellow box appears (at 65°C until 67,7°C)

* to show, that cpu is throttling arm core speed under heavy load:

Code: Select all

root@RPi-3:~# while true; do vcgencmd measure_temp && vcgencmd measure_clock arm; sleep 1; done
 . . .
frequency(45)=1015000000
temp=66.6'C
frequency(45)=1004000000
temp=66.6'C
frequency(45)=1024000000
temp=67.7'C
frequency(45)=990000000
temp=66.6'C
frequency(45)=1017000000
temp=66.6'C
frequency(45)=1011000000
temp=66.6'C
frequency(45)=1026000000
temp=67.7'C
frequency(45)=1033000000
temp=66.6'C
frequency(45)=1036000000
temp=66.6'C
frequency(45)=1009000000
temp=66.6'C
frequency(45)=1018000000
temp=66.6'C
frequency(45)=1023000000
temp=67.1'C
frequency(45)=1020000000
temp=66.6'C
frequency(45)=1011000000
temp=67.7'C
frequency(45)=1031000000
temp=66.6'C
frequency(45)=1036000000
temp=66.6'C
frequency(45)=1034000000
temp=67.1'C
frequency(45)=1010000000
temp=66.6'C
frequency(45)=1022000000
temp=66.6'C
frequency(45)=1025000000
temp=67.1'C
frequency(45)=1025000000
temp=66.6'C
frequency(45)=1006000000
temp=67.1'C
frequency(45)=1028000000
temp=67.7'C
frequency(45)=1008000000
temp=66.6'C
frequency(45)=1016000000
temp=66.6'C
frequency(45)=1016000000
temp=66.6'C
frequency(45)=1026000000
temp=66.6'C
frequency(45)=1034000000
temp=66.6'C
frequency(45)=1036000000
temp=66.6'C
frequency(45)=1014000000
More heat, more frequency, but more performance as well ...
k-plan wrote: @Fourdee: do you like to have a github ticket for this?
Fourdee wrote:Please if you would. Will allow us to discuss with everyone and implement any changes.
Thanks, I will do it later.

Done: https://github.com/Fourdee/DietPi/issues/356
If you find our project or support useful, then we’d really appreciate it if you’d consider contributing to the project however you can.
Donating is the easiest – you can use PayPal and Bitcoin.
User avatar
k-plan
Posts: 416
Joined: Sun Feb 28, 2016 5:28 pm

Re: Install Old Version of DietPi?

Post by k-plan »

A other test on the same device, with set "ARM Temp Limit" to 70°C :

Use multi-core packer "p7zip-full" :

Code: Select all

root@RPi-3:~# apt-get install p7zip-full


root@RPi-3:/mnt/usb_1#  /bin/sh /tmp/mc-root/mcusrUD27HY
Name of the compressed file (without extension) [usb_1]: 7zip-pack

7-Zip (A) 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=en_GB.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
Creating archive 7zip-pack.tar.7z
* compress backup directory with Midnight Commander as tar.7z (set all cpu cores on heavy load)
htop-7zip-pack.tar.7z
htop-7zip-pack.tar.7z
* solid yellow box appears (at 65°C until 70,4°C and if all cpu clocked down to 600 MHz it becomes solid RED)
red-square
red-square

Code: Select all

root@RPi-3:~# while true; do vcgencmd measure_temp && vcgencmd measure_clock arm; sleep 1; done
 . . .
temp=69.8'C
frequency(45)=707000000
temp=69.8'C
frequency(45)=718000000
temp=70.4'C
frequency(45)=711000000
temp=69.8'C
frequency(45)=717000000
temp=70.4'C
frequency(45)=720000000
temp=69.8'C
frequency(45)=730000000
temp=69.8'C
frequency(45)=738000000
temp=69.8'C
frequency(45)=742000000
temp=69.8'C
frequency(45)=724000000
temp=69.8'C
frequency(45)=725000000
temp=69.8'C
frequency(45)=720000000
temp=69.3'C
frequency(45)=724000000
temp=69.8'C
frequency(45)=719000000
temp=69.8'C
frequency(45)=719000000
temp=69.3'C
frequency(45)=600000000
temp=68.8'C
frequency(45)=600000000
temp=68.8'C
frequency(45)=600000000
temp=68.8'C
frequency(45)=600000000
temp=68.8'C
frequency(45)=600000000
temp=67.7'C
frequency(45)=600000000
temp=68.8'C
frequency(45)=838000000
temp=69.3'C
frequency(45)=806000000
temp=69.3'C
frequency(45)=776000000
temp=69.3'C
frequency(45)=772000000
temp=69.8'C
frequency(45)=753000000
temp=69.8'C
frequency(45)=752000000
temp=69.3'C
frequency(45)=747000000
temp=69.3'C
frequency(45)=746000000
temp=68.8'C
frequency(45)=752000000
temp=69.8'C
frequency(45)=743000000
Finish now - have RPI3 put to the torture more than enough ... :shock:
If you find our project or support useful, then we’d really appreciate it if you’d consider contributing to the project however you can.
Donating is the easiest – you can use PayPal and Bitcoin.
User avatar
k-plan
Posts: 416
Joined: Sun Feb 28, 2016 5:28 pm

Re: Install Old Version of DietPi?

Post by k-plan »

80°C thermal limit test:

* compress backup directory with Midnight Commander as tar.bz (set cpu cores on heavy load)
cpu-7zip
cpu-7zip
* light yellow box appears (at 75 °C until 77,4°C)

Code: Select all

temp=76.8'C
frequency(45)=980000000
temp=77.4'C
frequency(45)=1001000000
temp=77.4'C
frequency(45)=977000000
temp=77.4'C
frequency(45)=985000000
temp=77.4'C
frequency(45)=974000000
temp=77.4'C
frequency(45)=958000000
temp=77.4'C
frequency(45)=962000000
temp=77.4'C
frequency(45)=957000000
temp=77.4'C
frequency(45)=962000000
temp=77.4'C
frequency(45)=960000000
If you find our project or support useful, then we’d really appreciate it if you’d consider contributing to the project however you can.
Donating is the easiest – you can use PayPal and Bitcoin.
Post Reply