FYI: Alternatives to Raspberry Pi for this hobby

So I have been up and running for about 10 days. I was also curious how many interrupts my dongle
causes/sec when ADS-B msg rate is stated to be about 90-100 msgs/sec received. Looking at
/proc/interrupts, and grep’ing for ‘usb1’, I seem to see 300 interrupts/sec!!! This surprised me, may be
looking at wrong interrupt? ( I checked the count at 30 sec intervals and is steadily increasing at 293.3
interrupts/sec!!) This seems too high (if I am looking at dongle interrupts.)

rk3318-box> cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3
  9:          0          0          0          0     GICv2  25 Level     vgic
 11:   17378034   16550540   28312546   42642606     GICv2  30 Level     arch_timer
 12:          0          0          0          0     GICv2  27 Level     kvm guest vtimer
 18:          0          0          0          0     GICv2 132 Level     arm-pmu
 19:          0          0          0          0     GICv2 133 Level     arm-pmu
 20:          0          0          0          0     GICv2 134 Level     arm-pmu
 21:          0          0          0          0     GICv2 135 Level     arm-pmu
 22:          0          0          0          0     GICv2  94 Level     rockchip_usb2phy
 23:       1814          0          0          0     GICv2  32 Level     ff1f0000.dma-controller
 24:          0          0          0          0     GICv2  33 Level     ff1f0000.dma-controller
 26:        505          0          0          0     GICv2  89 Level     ttyS2
 27:          0          0          0          0     GICv2 128 Level     ff330200.iommu
 28:          0          0          0          0     GICv2 130 Level     ff340800.iommu
 29:          0          0          0          0     GICv2  43 Level     ff350800.iommu
 30:          0          0          0          0     GICv2 106 Level     ff360480.iommu
 31:          0          0          0          0     GICv2  64 Level     ff373f00.iommu, ff370000.vop
 32:          0          0          0          0     GICv2  63 Level     ff3a0800.iommu
 33:          0          0          0          0     GICv2  99 Level     xhci-hcd:usb2
 34:  123387733          0          0          0     GICv2  55 Level     ff580000.usb, dwc2_hsotg:usb1       # << this one?
 35:          0          0          0          0     GICv2  48 Level     ehci_hcd:usb4
 36:          0          0          0          0     GICv2  49 Level     ohci_hcd:usb5
 37:          0          0          0          0     GICv2  90 Level     rockchip_thermal
 38:          0          0          0          0     GICv2  72 Edge      ff1a0000.watchdog
 39:          0          0          0          0     GICv2  44 Level     dw-mci
 40:   25286229          0          0          0     GICv2  45 Level     dw-mci
 41:     283184          0          0          0     GICv2  46 Level     dw-mci
 42:          0          0          0          0     GICv2  36 Level     dw-mci
 43:    4047877          0          0          0     GICv2 112 Level     ff280000.adc
 44:          0          0          0          0  rockchip_gpio_irq   5 Edge      ff500000.mmc cd
 45:          0          0          0          0  rockchip_gpio_irq   1 Edge      ff5f0000.dwmmc cd
 46:          0          0          0          0     GICv2 115 Level     ff430000.phy
 47:          0          0          0          0     GICv2  67 Level     ff3c0000.hdmi, dw-hdmi-cec
 48:          0          0          0          0     GICv2 119 Level     gpmmu
 49:          0          0          0          0     GICv2 121 Level     ppmmu0
 50:          0          0          0          0     GICv2 124 Level     ppmmu1
 51:    2104140          0          0          0     GICv2 122 Level     gp
 52:          0          0          0          0     GICv2 120 Level     pp0
 53:          0          0          0          0     GICv2 123 Level     pp1
 54:    1683299          0          0          0     GICv2 125 Level     pp_bcast
 55:          0          0          0          0     GICv2  53 Level     eth0
 56:         26          0          0          0  rockchip_gpio_irq   2 Edge      gpio-ir-recv-irq
 57:          0          0          0          0     GICv2  65 Level     ff390000.rga
 58:          0          0          0          0     GICv2  41 Level     ff350000.video-codec
 59:          0          0          0          0     GICv2  39 Level     ff360000.video-codec
IPI0:     26760      17685     822329    1677977       Rescheduling interrupts
IPI1:  19726757   72649878   28341230   21879401       Function call interrupts
IPI2:         0          0          0          0       CPU stop interrupts
IPI3:         0          0          0          0       CPU stop (for crash dump) interrupts
IPI4:         0          0          0          0       Timer broadcast interrupts
IPI5:    157979     197797      79956      69027       IRQ work interrupts
IPI6:         0          0          0          0       CPU wake-up interrupts
Err:          0


rk3318-box> lsusb
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

That sounds correct to me.
The sample rate is 2.4MHz and 8192 block size
2400000/8192=293

The interrupt rate is related to the sample rate of the dongle.
Not to the message rate. The dongle delivers samples at a constant rate.

1 Like

Well, it has been almost a year and I am happy to report that I’ve had no issues at all. To be fair, I had relatively few issues with the rPi, but with this, I have none. Currently running FA (with feed to FR24 as well), liveATC feed, and pianobar.

Although the form factor is a bit larger, I am happy to give up maintaining 3 Pi’s for one device. Appreciate everyone who invested in figuring this out from the beginning!