CNX Software – Embedded Systems News
Reviews, tutorials and the latest news about embedded systems, IoT, open-source hardware, SBC's, microcontrollers, processors, and more
At the end of my review of “RPI All-in-One” PC with Raspberry Pi 4, I noted the system also appeared to be compatible with NanoPi M4V2 single board computer. I’ve now tried it out, and assembling the board inside the 10.1-inch display is even easier than I initially thought. That means I now have a NanoPi M4V2 All-in-One PC running Ubuntu Hirsute or Debian Buster with XFCE desktop environment from Armbian, and most features work including the display and wireless connectivity, but I still have an issue with the touchscreen function.
Here are the steps I followed initially:
Not so fast! Did you really think it would be that easy? When Armbian boots it will ask the user to input a new root password in the terminal. So I connected my wireless keyboard USB dongle, and… I wasn’t able to type. I borrowed a USB keyboard, but I could not type… hmm what’s going on? I then decided to disconnect the USB touchscreen cable and it worked! I was able to complete the setup, configure WiFi and browse the web using a wireless mouse and keyboard.
It’s really odd the touchscreen does not work and causes other USB devices not to work. So let’s see what happens when we connect the USB cable:
It’s perfectly recognized, but then there’s an error, and eventually, the xHCI host is halted and all USB peripherals disconnected. The Debian Buster image runs Linux 4.4, so maybe it’s a driver issue? I tried Armbian Bullseye (client/headless) image with Linux 5.10, but a similar issue occurred.
Scrolling down in Armbian, there are unstable images with Linux 5.13, I flashed Ubuntu Hirsute with XFCE, and nothing changed:
Again, I can use the Ubuntu image and browse the web without issues. it’s just that nagging USB touchscreen issue.
Loading the hid-multitouch module with modprobe did not help. I’ve read somewhere that TSTP Mtouch drivers have been part of the Linux kernel for several years, so it may be a hardware issue instead…
The USB cable only carries GND and data signal, so the 5V signal comes from another location in the display, and I suspect there may be an issue with the 5V signal or grounding that makes the USB host turn it off completely. I haven’t found a solution yet.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples
Related posts:
It definitely looks like a hardware issue. Usually such USB errors appear when you’re connected to a device that seems to short the pins (i.e. possibly not powered and pulling too much from the DM/DP pins through the protection diodes that route the voltage to the Vcc rails). Maybe something in your connections doesn’t work and the touchscreen is not properly powered (e.g. if it takes the power from the HDMI connector, maybe one optional pin is not connected). If you have an HDMI cable extender, you could try to connect the screen to another board and see if the… Read more »
I have the exact same issue on the NanoPi M4V1, I’ve an externally powered HDD I use for backups, if connected everything else on the usb3 ports doesn’t work at all be it a pendrive or the remote for wireless keyboard. Not a big issue since I use it completely headless but sometime I have to make some work on console and it’s annoying to juggle with cables every time.
I seem to remember (but I have not rechecked) that there’s a USB3 hub on these boards, it’s possible that it’s powered from the same power rails that are delivered to the ports, through a regulator, and that if too much power is pulled there, the hub itself disappears.
I’ve only used thumb drives on my M4V1 and don’t remember observing such issues.
> there’s a USB3 hub on these boards
VIA Labs VL817-Q7
My apologizes Willy I’ve given a wrong explanation of the problem, it’s not the USB disk that’s unavailable, it’s everything else attached that doesn’t get recognized. And yes as tkaiser said every rear usb 3 port is connected to a VIA Labs usb switch.
That was my understanding, yes. If the USB hub is powered down, everything behind it disappears as well.
I’m guessing it’s what happens here because everything is taken down from the USB bus… I’ll try with a USB powered hub to see if it changes anything.
Maybe you should try to connect the touchscreen to the 24-pin connector on 16 & 18 or 22 & 24. Then you keep the usb3 ports free and you minimize the problem of short circuit in the usb connector. I had once the same problem on my M8S tv-box and there I had to retract the usb stick a little bit and then usb worked again. It seemed when putting a usb-stick to far in the usb ports, it gave a short circuit that made the usb switch off.
Isn’t CPU on bottom side of Nanopi without heatsink(no space) and in enclosed space would melt into LCD panel, you should have tested thermals with this configuration.
Yes, correct the CPU faces down.
IMHO, there’s zero risk the CPU melts the LCD panel.
This is what the bottom looks like:
https://eji4evk5kxx.exactdn.com/wp-content/uploads/2021/11/RPI-All-in-One-Display-internals.jpg?lossy=1&ssl=1
Based on the CPU temperatures we see in the terminal, the fan is still cooling the CPU, even though it’s far from an optimal configuration.
Debian Buster and kernels 4.4, 5.10, and 5.13? That’s a huge problem with third party SBC manufacturers, no good up-to-date software support. Also XFCE makes me worry how the legacy X graphics support will work after RPi and other systems have switched to Wayland/Pipewire by default. Vulkan capable systems with kernel 5.17 and Mesa 22 will perform a lot faster and have full video acceleration in browsers.
Jerry, care to elaborate exactly what you mean by “third party SBC manufacturers” ? How is a manufacturer a “third party” ? Maybe you wear “third party jeans”, drive a “third party car”, or take a “third party train” ? ?
“of, relating to, or being software that is created by a vendor to be compatible with the products of another vendor”
The typical workflow is: Customer (first party) buys products that either conform to the specs (form factor), or are directly produced by the second party (RPi Trading).
I may propose a stupid thing, but sometimes with low-quality USB hardware it helps to connect them through a powered USB hub.