MilhouseVH / bcmstat

Simple Raspberry Pi monitoring tool
GNU General Public License v2.0
263 stars 36 forks source link

Error while running script #12

Closed dawez closed 6 years ago

dawez commented 6 years ago

I have this error when trying to run the script:

# ./bcmstat.sh
  Config: v0.4.9, args "", priority lowest (+19)
   Board: 4 x  cores available, ondemand governor (Pi1 Model B rev 1.1, BCM2835 SoC with 256MB RAM by Sony)
  Memory: 1024MB (split 948MB ARM, 76MB GPU)
HW Block: |   ARM   |  Core  |  H264  |    SDRAM    |
Min Freq: |  600MHz | 250MHz |   0MHz |    450MHz   |
Max Freq: | 1200MHz | 400MHz | 300MHz |    450MHz   |
Voltages: |         0, 1.2000V        | +1, 1.2250V |
   Other: temp_limit=85
Firmware: Aug 22 2017 14:16:17, version eb51b8b84ec11d98562dfbb7be53cdd216c0ea4c (clean) (release)
  Codecs: H264 H263 MPG4 MJPG PCM
  Booted: Fri Sep  7 11:05:31 2018Traceback (most recent call last):
  File "./bcmstat.sh", line 1619, in <module>
    main(sys.argv[1:])
  File "./bcmstat.sh", line 1522, in main
    getIRQ(IRQ)
  File "./bcmstat.sh", line 440, in getIRQ
    storage[1] = (time.time(), int(grep("dwc", readfile("/proc/interrupts"), 1)))
ValueError: invalid literal for int() with base 10: '72244\n2142141'

It seems that is incorrect detected as Raspberry pi 1 while instead it is a raspberry PI 3 :


# uname -a
Linux zenby 4.11.12-pi64+ #1 SMP PREEMPT Sun Aug 27 14:50:58 CEST 2017 aarch64 GNU/Linux``
MilhouseVH commented 6 years ago

Can you paste the contents of /proc/interrupts and /proc/cpuinfo?

What OS/distribution is it you are using?

dawez commented 6 years ago

here are the outputs:

# cat /proc/interrupts 
           CPU0       CPU1       CPU2       CPU3       
  1:          0          0          0          0  bcm2836-timer   0 Edge      arch_timer
  2:      88149      76985      66372      67837  bcm2836-timer   1 Edge      arch_timer
  6:         19         24         19         19  ARMCTRL-level   1 Edge      3f00b880.mailbox
  7:         89        101         92         77  ARMCTRL-level   2 Edge      VCHIQ doorbell
 15:     166756     159423     166758     159662  ARMCTRL-level  64 Edge      dwc_otg, dwc_otg_pcd, dwc_otg_hcd:usb1
 41:    4886595    4879301    4886568    4879318  ARMCTRL-level  41 Edge      dwc_otg_sim-fiq
 48:          0          0          0          0  ARMCTRL-level  48 Edge      bcm2708_fb dma
 50:          0          0          0          0  ARMCTRL-level  50 Edge      DMA IRQ
 52:          0          0          0          0  ARMCTRL-level  52 Edge      DMA IRQ
 53:          5          3          4          3  ARMCTRL-level  53 Edge      DMA IRQ
 56:        807        821        889        824  ARMCTRL-level  56 Edge      DMA IRQ
 61:          0          0          0          0  ARMCTRL-level  61 Edge      bcm2835-auxirq
 64:          0          0          0          0  ARMCTRL-level  81 Edge      3f200000.gpio:bank0
 65:          0          0          0          0  ARMCTRL-level  82 Edge      3f200000.gpio:bank1
 71:         67         62         69         60  ARMCTRL-level  88 Edge      mmc0
 77:        549        571        547        587  ARMCTRL-level  94 Edge      mmc1
IPI0:     55030      58221      54075      53775       Rescheduling interrupts
IPI1:       214        196        171        203       Function call interrupts
IPI2:         0          0          0          0       CPU stop interrupts
IPI3:         0          0          0          0       Timer broadcast interrupts
IPI4:      4298       1104        454        503       IRQ work interrupts
IPI5:         0          0          0          0       CPU wake-up interrupts
Err:          0

and

cat /proc/cpuinfo
processor   : 0
BogoMIPS    : 38.40
Features    : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part    : 0xd03
CPU revision    : 4

processor   : 1
BogoMIPS    : 38.40
Features    : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part    : 0xd03
CPU revision    : 4

processor   : 2
BogoMIPS    : 38.40
Features    : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part    : 0xd03
CPU revision    : 4

processor   : 3
BogoMIPS    : 38.40
Features    : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part    : 0xd03
CPU revision    : 4

I am using a 64 bit distribution : https://github.com/bamarni/pi64

The Rasberry model is a 3b. Anything else that I could provide?

MilhouseVH commented 6 years ago

Hmmm... do you know where the Revision is now on 64-bit systems?

On a 32-bit RPi distro, you'd have the following at the end of /proc/cpuinfo:

Hardware        : BCM2835
Revision        : 2a020d0
Serial          : 000000001234abcd

The problem with /proc/interrupts is that there are two interrupt-related entries (only one on 32-bit). Maybe I'll ignore one of them on 64-bit systems.

MilhouseVH commented 6 years ago

Looks like a "won't fix" on the Revision code: https://github.com/raspberrypi/linux/issues/2110

MilhouseVH commented 6 years ago

Or maybe I can get revision from /proc/device-tree/system/linux,revision...

MilhouseVH commented 6 years ago

Can you try this version: http://ix.io/1mao

dawez commented 6 years ago

Well done :+1: , it seems that that other version works as expected see here below:

sudo ./test.py
  Config: v0.4.9, args "", priority lowest (+19)
   Board: 4 x  cores available, ondemand governor (Pi3 rev 1.2, BCM2837 SoC with 1GB RAM by Embest)
  Memory: 1024MB (split 948MB ARM, 76MB GPU)
HW Block: |   ARM   |  Core  |  H264  |    SDRAM    |
Min Freq: |  600MHz | 250MHz |   0MHz |    450MHz   |
Max Freq: | 1200MHz | 400MHz | 300MHz |    450MHz   |
Voltages: |         0, 1.2000V        | +1, 1.2250V |
   Other: temp_limit=85
Firmware: Aug 22 2017 14:16:17, version eb51b8b84ec11d98562dfbb7be53cdd216c0ea4c (clean) (release)
  Codecs: H264 H263 MPG4 MJPG PCM
  Booted: Fri Sep  7 15:17:58 2018

Time         ARM    Core    H264 Core Temp (Max)  IRQ/s     RX B/s     TX B/s
======== ======= ======= ======= =============== ====== ========== ==========
15:40:10  600Mhz  250Mhz    0Mhz 44.01C (44.55C)  2,222      2,221      8,802
15:40:12  600Mhz  250Mhz    0Mhz 44.01C (44.55C)  2,090         69        119
15:40:14  600Mhz  250Mhz    0Mhz 43.47C (44.55C)  2,069         92        119
15:40:17  600Mhz  250Mhz    0Mhz 43.47C (44.55C)  2,101        601        119
15:40:19  600Mhz  250Mhz    0Mhz 42.93C (44.55C)  2,002        602        119^C
Peak Values: IRQ: 2222, RX: 2221, TX: 8802
MilhouseVH commented 6 years ago

Thanks - should be fixed in 0.5.0.