MIDI CC overload? Pretty hard crash it seems



It seems that whenever I use a knob on my Nord Rack 3 to control something in MODEP (coming in through a Pisound hardware MIDI input), after a very short while the system freezes and the MODEP access point is gone.

What’s more, it seems that I need to remove power from the RPi 3B+ for several minutes for it to want to boot again - if I just cycle power immediately there’s only a static red LED and no activity.

So… maybe MODEP can’t handle the amount of MIDI CC data that my NR3 generates? I’ve tried with another MIDI hardware source (Mellotron M4000D Mini pitch knob) with which I can’t seem to get the same problem.

Or maybe the rebooting issue points to some kind of hardware failure on my RPi 3B+?

Or maybe both?

Thanks :slight_smile:


In the mean time I’ve been reading a bunch of stuff about stability issues with the 3B+… it seems to me that there might be an issue with its power draw in general, which gets exacerbated by adding a Pisound hat, for instance. Perhaps the voltage regulator gets stressed by the large NR3 CC stream and subsequently has to cool down for a few minutes?

I’m not sure… I do know that when I removed the Pisound hat just now I had way less hiccups in Raspbian Stretch trying something out in PD. I think I will get a 3B to be on the safe side…


Just tried it with a 3B and a fresh new original power supply (other PSU was also original 2,5A): still same issue. Here’s what the screen outputs:


Hey, unfortunately the photo got uploaded with a too low resolution to read the contents. Could you get another one uploaded with a higher resolution? If it is the forum software that resizes it, then try some external image host.

To get copyable text, you may try to have an active ssh connection from your computer to RPi, when there’s a big kernel crash, it usually logs the relevant info to all active sessions, you may paste the contents here. (see Raspberry Pi: Remote Control Raspberry Pi via SSH for some tips, ssh access is enabled by default on MODEP images, so just ssh modep@ (if connecting via the hotspot), use blokaslabs for password)

If the system still accepts commands after the issue has occurred, you can run dmesg to get the entire kernel log, that would be really useful to determine the cause of the issue.


Hey there,

Just wanted to chime in to say I think I have experienced the problem you’re describing. I’m using a 3B (not B+) and was getting a reproducible crash after using the expression pedals on my Behringer FCB1010 (with Uno mod) to control anything in MODEP. I tried the same thing using knobs on another device and couldn’t get it to crash.

I think you’re right about the MIDI input being overloaded somewhere along the way. As luck would have it, the FCB1010 Uno’s config software has a ‘running status’ option, which by my understanding reduces the quantity of status messages the pedals send (and according to the manual is only intended for really old devices and shouldn’t be needed when working with modern equipment). Anyway, ticking that option seems to have solved my woes for now, as I’ve been unable to crash MODEP again despite wiggling the expression pedal like a lunatic.


Hey! The running status setting may help narrow the issue down. :slight_smile: It’d be good to reproduce the issue while connected using ssh, and dmesg -w executed, then we might get some useful input from the kernel as well.


Hi Giedrius. You may have to bear with me here as I’m extremely unfamiliar with Linux! I think I’ve done what you suggested; I SSH’d into the pi, executed dmesg -w (which I’m guessing is supposed to provide a running log of errors?) and deliberately caused the crash again. I’ll paste the output below, but I’m not sure it’s helpful… Once the crash hits, the PuTTY client on my laptop becomes completely unresponsive.

Let me know if you want me to do anything else. Keen to help - I’m planning on adding another MIDI controller to my setup, and not knowing which MIDI devices will cause a crash makes that a bit of a gamble!

modep@modep:~ $ dmesg -w
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.14.59-rt37-v7+ (giedrius@giedrius-vb) (gcc version 4.8.3 20140303 (prerelease) (crosstool-NG linaro-1.13.1+bzr2650 - Linaro GCC 2014.03)) #1 SMP PREEMPT RT Fri Aug 17 14:53:46 EEST 2018
[ 0.000000] CPU: ARMv7 Processor [410fd034] revision 4 (ARMv7), cr=10c5383d
[ 0.000000] CPU: div instructions available: patching division code
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt: Machine model: Raspberry Pi 3 Model B Rev 1.2
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] cma: Reserved 8 MiB at 0x3ac00000
[ 0.000000] On node 0 totalpages: 242688
[ 0.000000] free_area_init_node: node 0, pgdat 80c89940, node_mem_map ba39f000
[ 0.000000] Normal zone: 2133 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 242688 pages, LIFO batch:31
[ 0.000000] percpu: Embedded 17 pages/cpu @ba347000 s40960 r8192 d20480 u69632
[ 0.000000] pcpu-alloc: s40960 r8192 d20480 u69632 alloc=17*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 240555
[ 0.000000] Kernel command line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=PARTUUID=b0580fa2-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Memory: 939680K/970752K available (7168K kernel code, 577K rwdata, 2092K rodata, 1024K init, 733K bss, 22880K reserved, 8192K cma-reserved)
[ 0.000000] Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
vmalloc : 0xbb800000 - 0xff800000 (1088 MB)
lowmem : 0x80000000 - 0xbb400000 ( 948 MB)
modules : 0x7f000000 - 0x80000000 ( 16 MB)
.text : 0x80008000 - 0x80800000 (8160 kB)
.init : 0x80b00000 - 0x80c00000 (1024 kB)
.data : 0x80c00000 - 0x80c90580 ( 578 kB)
.bss : 0x80c97ff4 - 0x80d4f76c ( 734 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] ftrace: allocating 25259 entries in 75 pages
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] No expedited grace period (rcu_normal_after_boot).
[ 0.000000] Tasks RCU enabled.
[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000000] arch_timer: cp15 timer(s) running at 19.20MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns
[ 0.000007] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns
[ 0.000017] Switching to timer-based delay loop, resolution 52ns
[ 0.000272] Console: colour dummy device 80x30
[ 0.001278] console [tty1] enabled
[ 0.001298] Calibrating delay loop (skipped), value calculated using timer frequency… 38.40 BogoMIPS (lpj=192000)
[ 0.001310] pid_max: default: 32768 minimum: 301
[ 0.001623] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.001636] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.002529] Disabling memory control group subsystem
[ 0.002618] CPU: Testing write buffer coherency: ok
[ 0.003101] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.040107] Setting up static identity map for 0x100000 - 0x10003c
[ 0.080103] Hierarchical SRCU implementation.
[ 0.160262] smp: Bringing up secondary CPUs …
[ 0.260910] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.361051] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[ 0.461239] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[ 0.461412] smp: Brought up 1 node, 4 CPUs
[ 0.461526] SMP: Total of 4 processors activated (153.60 BogoMIPS).
[ 0.461559] CPU: All CPU(s) started in HYP mode.
[ 0.461587] CPU: Virtualization extensions available.
[ 0.462908] devtmpfs: initialized
[ 0.488297] random: get_random_u32 called from bucket_table_alloc+0x11c/0x29c with crng_init=0
[ 0.489036] VFP support v0.3: implementor 41 architecture 3 part 40 variant 3 rev 4
[ 0.489455] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.489519] futex hash table entries: 1024 (order: 4, 65536 bytes)
[ 0.490260] pinctrl core: initialized pinctrl subsystem
[ 0.491904] NET: Registered protocol family 16
[ 0.496601] DMA: preallocated 1024 KiB pool for atomic coherent allocations
[ 0.505609] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.505656] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.505909] Serial: AMBA PL011 UART driver
[ 0.508896] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[ 0.509643] uart-pl011 3f201000.serial: could not find pctldev for node /soc/gpio@7e200000/uart0_pins, deferring probe
[ 0.569024] bcm2835-dma 3f007000.dma: DMA legacy API manager at bb813000, dmachans=0x1
[ 0.571672] SCSI subsystem initialized
[ 0.572080] usbcore: registered new interface driver usbfs
[ 0.572214] usbcore: registered new interface driver hub
[ 0.572401] usbcore: registered new device driver usb
[ 0.581475] raspberrypi-firmware soc:firmware: Attached to firmware from 2018-09-10 17:26
[ 0.583641] clocksource: Switched to clocksource arch_sys_counter
[ 0.729443] VFS: Disk quotas dquot_6.6.0
[ 0.729599] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.730036] FS-Cache: Loaded
[ 0.730356] CacheFiles: Loaded
[ 0.746736] NET: Registered protocol family 2
[ 0.748054] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.748234] TCP bind hash table entries: 8192 (order: 5, 229376 bytes)
[ 0.748874] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.749137] UDP hash table entries: 512 (order: 3, 32768 bytes)
[ 0.749271] UDP-Lite hash table entries: 512 (order: 3, 32768 bytes)
[ 0.749869] NET: Registered protocol family 1
[ 0.750706] RPC: Registered named UNIX socket transport module.
[ 0.750743] RPC: Registered udp transport module.
[ 0.750773] RPC: Registered tcp transport module.
[ 0.750802] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.752827] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 7 counters available
[ 0.759886] workingset: timestamp_bits=14 max_order=18 bucket_order=4
[ 0.775610] FS-Cache: Netfs ‘nfs’ registered for caching
[ 0.776979] NFS: Registering the id_resolver key type
[ 0.777065] Key type id_resolver registered
[ 0.777096] Key type id_legacy registered
[ 0.777147] nfs4filelayout_init: NFSv4 File Layout Driver Registering…
[ 0.780653] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.780894] io scheduler noop registered
[ 0.780928] io scheduler deadline registered (default)
[ 0.781467] io scheduler cfq registered
[ 0.781500] io scheduler mq-deadline registered
[ 0.781532] io scheduler kyber registered
[ 0.786984] BCM2708FB: allocated DMA memory fad10000
[ 0.787197] BCM2708FB: allocated DMA channel 0 @ bb813000
[ 0.796226] Console: switching to colour frame buffer device 82x26
[ 0.806402] bcm2835-rng 3f104000.rng: hwrng registered
[ 0.808963] vc-mem: phys_addr:0x00000000 mem_base=0x3ec00000 mem_size:0x40000000(1024 MiB)
[ 0.814632] vc-sm: Videocore shared memory driver
[ 0.817496] gpiomem-bcm2835 3f200000.gpiomem: Initialised: Registers at 0x3f200000
[ 0.841667] brd: module loaded
[ 0.864406] loop: module loaded
[ 0.866715] Loading iSCSI transport class v2.0-870.
[ 0.870041] libphy: Fixed MDIO Bus: probed
[ 0.872505] usbcore: registered new interface driver lan78xx
[ 0.875030] usbcore: registered new interface driver smsc95xx
[ 0.877219] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[ 0.907432] dwc_otg 3f980000.usb: base=0xf0980000
[ 1.109907] Core Release: 2.80a
[ 1.112102] Setting default values for core params
[ 1.114460] Finished setting default values for core params
[ 1.317295] Using Buffer DMA mode
[ 1.319592] Periodic Transfer Interrupt Enhancement - disabled
[ 1.322008] Multiprocessor Interrupt Enhancement - disabled
[ 1.324461] OTG VER PARAM: 0, OTG VER FLAG: 0
[ 1.326817] Dedicated Tx FIFOs mode
[ 1.329695] WARN::dwc_otg_hcd_init:1046: FIQ DMA bounce buffers: virt = 0xbad04000 dma = 0xfad04000 len=9024
[ 1.334381] FIQ FSM acceleration enabled for :
Non-periodic Split Transactions
Periodic Split Transactions
High-Speed Isochronous Endpoints
Interrupt/Control Split Transaction hack enabled
[ 1.345385] dwc_otg: Microframe scheduler enabled
[ 1.345457] WARN::hcd_init_fiq:459: FIQ on core 1 at 0x805ee6b4
[ 1.345465] WARN::hcd_init_fiq:460: FIQ ASM at 0x805eea08 length 36
[ 1.345474] WARN::hcd_init_fiq:486: MPHI regs_base at 0xf0006000
[ 1.345538] dwc_otg 3f980000.usb: DWC OTG Controller
[ 1.354650] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1
[ 1.357142] dwc_otg 3f980000.usb: irq 62, io mem 0x00000000
[ 1.359467] Init: Port Power? op_state=1
[ 1.361721] Init: Power Port (0)
[ 1.364304] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.366619] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.368922] usb usb1: Product: DWC OTG Controller
[ 1.371168] usb usb1: Manufacturer: Linux 4.14.59-rt37-v7+ dwc_otg_hcd
[ 1.373465] usb usb1: SerialNumber: 3f980000.usb
[ 1.376876] hub 1-0:1.0: USB hub found
[ 1.379120] hub 1-0:1.0: 1 port detected
[ 1.382069] dwc_otg: FIQ enabled
[ 1.382076] dwc_otg: NAK holdoff enabled
[ 1.382083] dwc_otg: FIQ split-transaction FSM enabled
[ 1.382097] Module dwc_common_port init
[ 1.382420] usbcore: registered new interface driver usb-storage
[ 1.384987] mousedev: PS/2 mouse device common for all mice
[ 1.387469] IR NEC protocol handler initialized
[ 1.389656] IR RC5(x/sz) protocol handler initialized
[ 1.391875] IR RC6 protocol handler initialized
[ 1.394165] IR JVC protocol handler initialized
[ 1.396263] IR Sony protocol handler initialized
[ 1.398371] IR SANYO protocol handler initialized
[ 1.400483] IR Sharp protocol handler initialized
[ 1.402504] IR MCE Keyboard/mouse protocol handler initialized
[ 1.404626] IR XMP protocol handler initialized
[ 1.407974] bcm2835-wdt 3f100000.watchdog: Broadcom BCM2835 watchdog timer
[ 1.410547] bcm2835-cpufreq: min=600000 max=1200000
[ 1.413381] sdhci: Secure Digital Host Controller Interface driver
[ 1.415630] sdhci: Copyright© Pierre Ossman
[ 1.418403] mmc-bcm2835 3f300000.mmc: could not get clk, deferring probe
[ 1.421247] sdhost-bcm2835 3f202000.mmc: could not get clk, deferring probe
[ 1.423772] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.428008] hidraw: raw HID events driver © Jiri Kosina
[ 1.430503] usbcore: registered new interface driver usbhid
[ 1.432813] usbhid: USB HID core driver
[ 1.436050] vchiq: vchiq_init_state: slot_zero = bad80000, is_master = 0
[ 1.440128] [vc_sm_connected_init]: start
[ 1.449238] [vc_sm_connected_init]: end - returning 0
[ 1.452458] Initializing XFRM netlink socket
[ 1.454871] NET: Registered protocol family 17
[ 1.457418] Key type dns_resolver registered
[ 1.460155] Registering SWP/SWPB emulation handler
[ 1.463771] registered taskstats version 1
[ 1.481902] uart-pl011 3f201000.serial: cts_event_workaround enabled
[ 1.484613] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2
[ 1.492957] mmc-bcm2835 3f300000.mmc: mmc_debug:0 mmc_debug2:0
[ 1.495618] mmc-bcm2835 3f300000.mmc: DMA channel allocated
[ 1.554599] sdhost: log_buf @ bad07000 (fad07000)
[ 1.574400] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[ 1.578509] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 1.582487] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 1.587755] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[ 1.594026] Indeed it is in host mode hprt0 = 00021501
[ 1.643703] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[ 1.650235] of_cfs_init
[ 1.652419] of_cfs_init: OK
[ 1.655424] Waiting for root device PARTUUID=b0580fa2-02…
[ 1.718548] mmc1: new high speed SDIO card at address 0001
[ 1.793080] mmc0: host does not support reading read-only switch, assuming write-enable
[ 1.802378] mmc0: new high speed SDHC card at address e624
[ 1.803717] usb 1-1: new high-speed USB device number 2 using dwc_otg
[ 1.803932] Indeed it is in host mode hprt0 = 00001101
[ 1.833704] mmcblk0: mmc0:e624 SU04G 3.69 GiB
[ 1.840547] mmcblk0: p1 p2
[ 1.891834] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 1.897197] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[ 1.901457] devtmpfs: mounted
[ 1.909467] Freeing unused kernel memory: 1024K
[ 2.054385] usb 1-1: New USB device found, idVendor=0424, idProduct=9514
[ 2.056980] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2.060656] hub 1-1:1.0: USB hub found
[ 2.063516] hub 1-1:1.0: 5 ports detected
[ 2.383771] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[ 2.390915] systemd[1]: System time before build time, advancing clock.
[ 2.514166] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[ 2.516971] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2.523067] smsc95xx v1.0.6
[ 2.542935] NET: Registered protocol family 10
[ 2.547767] Segment Routing with IPv6
[ 2.563461] ip_tables: © 2000-2006 Netfilter Core Team
[ 2.609426] systemd[1]: Detected architecture arm.
[ 2.621401] smsc95xx 1-1.1:1.0 eth0: register ‘smsc95xx’ at usb-3f980000.usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:2c:42:25
[ 2.631117] systemd[1]: Set hostname to .
[ 3.281638] systemd[1]: Listening on Journal Socket (/dev/log).
[ 3.288479] systemd[1]: Listening on fsck to fsckd communication Socket.
[ 3.295161] systemd[1]: Listening on udev Control Socket.
[ 3.301467] systemd[1]: Listening on udev Kernel Socket.
[ 3.307997] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[ 3.314969] systemd[1]: Listening on Journal Socket.
[ 3.321860] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[ 4.031505] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 4.216322] systemd-journald[124]: Received request to flush runtime journal from PID 1
[ 5.607947] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[ 5.740349] bcm2835_alsa bcm2835_alsa: card created with 8 channels
[ 5.862502] pisound: Searching for spi device…
[ 5.862520] pisound: Found!
[ 5.948932] pisound: Detected Pisound card:
[ 5.949029] pisound: Serial: PS-1BWMSE8
[ 5.949036] pisound: Version: 1.01
[ 5.949043] pisound: Id: 1e93153555313630360a1029
[ 6.010713] snd-rpi-pisound soc:sound: snd-soc-dummy-dai <-> 3f203000.i2s mapping ok
[ 6.463568] brcmfmac: F1 signature read @0x18000000=0x1541a9a6
[ 6.475005] brcmfmac: brcmf_fw_map_chip_to_name: using brcm/brcmfmac43430-sdio.bin for chip 0x00a9a6(43430) rev 0x000001
[ 6.500695] usbcore: registered new interface driver brcmfmac
[ 6.755131] brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Oct 23 2017 03:55:53 version (r674442 CY) FWID 01-e58d219f
[ 6.756249] brcmfmac: brcmf_c_preinit_dcmds: CLM version = API: 12.2 Data: 7.11.15 Compiler: 1.24.2 ClmImport: 1.24.1 Creation: 2014-05-26 10:53:55 Inc Data: 9.10.39 Inc Compiler: 1.29.4 Inc ClmImport: 1.36.3 Creation: 2017-10-23 03:47:14
[ 8.766355] uart-pl011 3f201000.serial: no DMA platform data
[ 9.306193] Adding 102396k swap on /var/swap. Priority:-2 extents:1 across:102396k SSFS
[ 9.608411] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 9.608430] brcmfmac: power management disabled
[ 10.529876] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 10.529893] brcmfmac: power management disabled
[ 10.646420] smsc95xx 1-1.1:1.0 eth0: hardware isn’t capable of remote wakeup
[ 10.646728] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 10.849097] nf_conntrack version 0.5.0 (15360 buckets, 61440 max)
[ 12.508029] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 14.022437] Bluetooth: Core ver 2.22
[ 14.022560] NET: Registered protocol family 31
[ 14.022567] Bluetooth: HCI device and connection manager initialized
[ 14.022608] Bluetooth: HCI socket layer initialized
[ 14.022629] Bluetooth: L2CAP socket layer initialized
[ 14.022693] Bluetooth: SCO socket layer initialized
[ 14.049938] Bluetooth: HCI UART driver ver 2.3
[ 14.049961] Bluetooth: HCI UART protocol H4 registered
[ 14.049999] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 14.050572] Bluetooth: HCI UART protocol Broadcom registered
[ 14.272913] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 14.272923] Bluetooth: BNEP filters: protocol multicast
[ 14.272949] Bluetooth: BNEP socket layer initialized
[ 15.317787] Bluetooth: RFCOMM TTY layer initialized
[ 15.317827] Bluetooth: RFCOMM socket layer initialized
[ 15.317919] Bluetooth: RFCOMM ver 1.11


Here’s a bigger version of my screenshot earlier: https://imgur.com/a/w8Ov0fs

Currently I don’t have a working MODEP system anymore, the one I had is being used ‘in the field’…

I’ll try to get another Pi running and copy my SSH output


You’re right, the system gets stuck before being able to transmit any critical messages in dmesg log over ssh. We can take a look at logs of previous system runs, they should be stored in:

  • /var/log/dmesg
  • /var/log/dmesg.0
  • /var/log/dmesg.1.gz
  • /var/log/dmesg.2.gz
  • /var/log/dmesg.3.gz
  • /var/log/dmesg.4.gz

If you reproduce the crash, then reboot the system, the log we’re interested in should be dmesg.0.


Hi folks, new to PiSound, new to the forum.

I just got a Pisound and installed the Modep image as said in the (very well done) documentation, and the same midi problem seems to appear:
whenever I hook my keystep or Digitakt midi out to the Pisound’s midi in, sequences or notes play find for a few seconds, before the Pi freezes and the hotspot disconnects.
After that, I need to wait a few minutes for the Pi to re-start properly.

I use a RPi 3B+, if that’s relevant.

Otherwise the soft works perfectly fine when I’m not using midi.

Any of you guys found a solution of some sorts?

I only tried Modep for now, I hope this is a software problem, and that it won’t occur with pure data…


MODEP image contains a Raspberry Pi kernel built from the “real time” branch, maybe that is what makes the MIDI issue to occur. I’ll look into this.


I have a 2 RPI’s right now and have this same issue with MODEP, How do I upload the info you want here? I can reboot and ssh to it, luckily only using these for this right now. Really wanting to control my Strymon Volante via TouchOSC, its awesome when it does work btw, just need to keep it from locking up.
For me it’s Modep using Midi cc’s via TouchOSC, it works great but then the system locks up and unresponsive. I can only unplug and wait about 5 minutes then it will work for 5 minutes. If I unplug it and replug, its just a unresponsive red light, have to wait for the rpi to work again.
For me all I had to do was this, pretty easy to duplicate and consistently can do it 10/10 times (today alone lol):

  1. Fresh Burn of ModeP the most recent one
  2. Pop it in a start it up, wait for it to completely boot
  3. Connect to the WiFi
  4. Open a browser to the modep pedalboards
  5. On the default, Select midi Ports and just make sure that the OSC is routed to the Midi Out
    5a. Here I usually hit save so when I have to reboot, it works when it comes back up.
  6. Use TouchOSC App to control some gear-- it will work great but then will lock up after a few minutes at most
    other details: Happens with or without a Midi signal running in/thru.
    Happens for me on both a 3 B and a 3 B+ the same way, I can repeat this test over and over by doing the above. Using the most recent MODEP Image


Thanks Giedrius.

By the way, the Pi freezes with CC, or notes in, or even just clock in (tested with either Arturia Keystep, Eventide Pitchfactor, and Elektron Digitakt).
Otherwise it seems to work fine. So most definitely a software problem?
I flashed the sd card four times, tried with a second sd card, same result.

But I’d love to be able to use it headless (that’s the point of it :wink: ) and be able to tweak the plugins parameters from my midi controller thanks to midi learn!



Hello guys, I have a fix for the issue - turns out queue_work kernel function which was used in an interrupt of Pisound module attempts to acquire a lock in realtime kernel configuration, causing the kernel to crash.

To get the fix, you’ll need to manually update your kernel, here are the commands to run either logged in via keyboard to MODEP or via ssh:

# Back up current kernel.
sudo cp /boot/kernel.img /boot/kernel.img.bak
sudo cp /boot/kernel7.img /boot/kernel7.img.bak

# Download a new build and install it.
wget https://github.com/BlokasLabs/rpi-kernel-rt/archive/v4.14.91-rt49.tar.gz -O kernel-rt.tar.gz
sudo tar -xvf kernel-rt.tar.gz --strip 1 -C /

# Restart the system.
sudo reboot

In case of success, running uname -a should print:

Linux modep 4.14.91-rt49-v7+ #1 SMP PREEMPT RT Tue Feb 19 15:51:26 EET 2019 armv7l GNU/Linux

Let us know how the new kernel works for you and whether the crashes are gone.


Allright thanks for the quick reply and for the work done, I’ll give it a try during the week and let you know.

Quick question: is the Modep image “ssh ready”, or do I need to add an ssh file on the root of the SD drive? And if so, are the login and password still “pi” and “raspberry”, like on the stretch image?



Ssh is enabled by default, default login: modep, pass: blokaslabs.


@Giedrius – Looks to have solved things here. I did the change at start of my lunch break and left it sitting for 10-15 mins at a time. Each time I came back it worked as expected. I will leave it up and running, testing whenever I can, and let you know if any issues after leaving it up. I want to make sure I get at least 4-5 hours out of it before I call it 100% resolved but again it is looking that way.
If there is any metrics you would like, just let me know the commands and I will send it over to you.


@Giedrius Well I just tried after a few calls and meetings wrapped up at work. All is good, nothing frozen. For good measure I hooked up my DMC-4 to it via midi DIN (not usb) and had it running into the Midi IN to test the thru. Everything worked as expected and TouchOSC is a go now for controlling my pedalboard. I had 3 tabs on my Layout, each targetting a different channel (or pedal here), all controls worked 100% as expected. Freezing is gone.
For me the freezing would occur within 5 mins of starting to use TouchOSC, if curious.
Not sure if expected for my setup or not want to share just in case-- I have to activate the midi ports I want on the default pedalboard or it doesn’t output my midi from TouchOSC or from the pisound midi In DIN to the pisound Midi Out/Thru DIN


Works like a charm, I’ve been playing with it for 2 hours with no freezes, thank you so much for this fix!
One thing: I can’t manage to make the “host sync” work within plugins like sequencers, the sequence won’t even start. Maybe it’s a all new topic/issue, or maybe I don’t understand what “host” is supposed to mean in the mod duo…
Anyways, thanks again!

Pisound on Tinker Board!

Well I left it on since the fix was posted. All running super awesome. I actually figured out a better approach to my midi ports setup and can confirm it works with 0 setup on midi ports in MODEP.
Burn in/ up time period approximately 77 hours and counting