Will the custom build be updated for the newest kernel?
JaneYu 2021-09-09 05:30:04 60 Views18 Replies Will the custom build be updated for the newest kernel?
Can you please indicate the location of the 26-pin header? It isn't labeled in the document and not visible in the 3D STEP.
JaneYu Current OpenWRT image offered in the wiki does not seem to work. When device boots the eth1 doesn't seem to work.
JaneYu After our testing, openWRT in the wiki works fine.
Are you in a position to replace a CM4 module for testing?
If it still doesn't work, please take a short test video and send it to us. So that we can check if anything has been missed.
I made a tutorial in How to build a custom OpenWRT image for Raspberry Pi Router (DFROBOT Carrier Board). If anyone want to build the latest OpenWRT and add some custom software to your build, just check the step by step tutorial.
JaneYu Hi Support,
I have a question regarding the Reset button. I first used the DFRobot build of OpenWrt and saw that the board worked correctly. However, I noticed the DFRobot build is a ext4 file system build, which by definition for OpenWrt, would not work in terms of doing a reset, that I would expect a restore to factory settings, or settings upon first flash.
Because of this, I used a custom flashed image on the board, with a squashfs file system that uses an overlay, and should work with the reset button. However, it did not do a factory reset, but rather seems to only "reboot" the board, even when I follow OpenWrt documentation on using the reset button (holding it down for 10 seconds).
With that, I asked the OpenWrt community, and someone suggested that maybe the reset button is hooked into the CPU reset line, which would invariably not really do a factory reset of the file system (purge the overlay and restore it).
So my question is, can you share how the Reset button is wired on the board? Is it expected to work as a factory reset for OpenWrt with squashfs? Or is it merely a way to he a reboot without having to remove power?
JaneYu Hi,
1. We use the RJ45 interface with integrated network transformer
2. Yes, you need to plug in the network changer yourself
JaneYu I was able to get the wifi working by following the instructions at Jeff Geeling's github here: https://github.com/geerlingguy/raspberry-pi-pcie-devices/issues/137#issuecomment-847276278
Also note that he has suggestions on how to tune the setup as well.
I hope that helps someone else.
JaneYu I am wondering if we might get a poe hat for this lovely board .. not a fan of POE splitters
JaneYu is there a ** for this? don't want to offend anyone, but this is double the price of a CM4 board...
JaneYu This is not a board for a NAS. You can get USB 3.0 ports on other boards designed for the Raspberry Pi 4 Compute Module. The USB 3.0 controller hangs off the PCIe 2.0 x1 bus. If you connect a USB 3.0 controller to the PCIe 2.0 x1 bus, you will have to connect the secondary NIC to the USB3.0 bus, which is not acceptable for a router board, as USB3.0 connected NICs suffer from flakiness and reduced throughput. So, the coexistence of the USB 3.0 controller and the PCIe-connected secondary NIC is not possible with the architecture of the Raspberry Pi Compute Module 4.
Take a look at the Argon EON case on Kickstarter for the OpenMediaVault-based NAS. That case can accommodate up to four 2.5" drives or two 5" drives and the drives are connected via USB3. You would install a regular Raspberry Pi 4B board inside the case instead of using a Compute Module.
JaneYu Hi, I have a request/suggestion to make a second-generation of this board with the secondary NIC being 2.5 Gbps. The Raspberry Pi Compute Module 4 has the PCIe 2.0 x1 (1-lane) bus, which is capable of 0.5 GB/s (4 Gbps) bidirectionally. Therefore, the PCIe 2.0 bus in the Raspberry Pi 4B can easily accommodate a 2.5 Gbps NIC.
Now, the next question is - why would one want to have a 2.5 Gbps NIC on a router board like this, especially since only one 2.5 Gbps port can fit in the PCIe 2.0 x1 bus (with two 2.5 Gbps NICs on the PCIe 2.0 x1 exceeding the maximum throughput of the bus). Here is the answer. The 2.5 Gbps NIC would be used as a LAN port for letting a routing software running on the Raspberry Pi Compute Module (e.g. OpenWRT) achieve a decent Inter-VLAN routing throughput on the LAN side. So, OpenWRT would be able to Layer-3 switch (Inter-VLAN route) traffic from one VLAN to another on the LAN side without creating a bottleneck for the Internet-bound traffic.
Therefore, you could still Layer-3 switch traffic bidirectionally at up to 1.5 Gbps, while maintaining a full 1 Gbps bidirectional Internet-to-LAN and LAN-to-Internet throughput. Without a 2.5 Gbps NIC on the LAN side, you have to connect a Layer 3 switch to the LAN port of the router board in order to offload Inter-VLAN routing off the Compute Module to the Layer 3 switch so that the Internet-to-LAN and LAN-to-Internet throughput of 1 Gbps bidirectionally is not affected by Inter-VLAN routing.
Using a Layer 3 switch for Inter-VLAN routing precludes using a firewall for "east-west" (Inter-VLAN routed) traffic because Layer 3 switches are not capable of true firewalling or traffic inspection. With the recent spike in hacking, ransomware, etc., inspecting and firewalling Inter-VLAN routed traffic has become a must. And the only way to do this with prosumer/SMB class equipment is to Inter-VLAN route on the firewall itself rather than on a Layer 3 switch.
Therefore, I request that the DFRobot engineers evaluate this suggestion of designing a generation 2 board for the Raspberry Pi 4 Compute Module with a 2.5 Gbps NIC connected to the Computer Module's PCIe 2.0 x1 bus.
Thank you.
JaneYu The USB-C Port ist AFAIK also connected via PCIE-X. Could be worth a try to connect a 2.5G USB-C Adapter to it and measure throughput.
Looking at the circuit it seems that the 5Vin on the GPIO pin 2 is
connected directly to the USB-C 5V line. This GPIO pin is where the CM4
obtains its power. Is it therefore OK to provide external power to the carrier board
directly at the GPIO instead of the USB-C?
JaneYu You can build the latest kernel yourself. :)
Instructions are here:
gist.github.com/martin-nikl...
Just some quick things I ran into.
First, make a backup of your current config. This will make things go much faster.
You are going to be using a tool called OpenWRT Image Builder. It is in the second box under the heading Supplementary Files in the link I have provided for the current build. The file is named: openwrt-imagebuilder-21.02.0-rc3-bcm27xx-bcm2711.Linux-x86_64.tar.xz
Yes, you do need to provide the file for files/etc/config. It is a bit confusing but the contents of the file will come further down the page under the heading network. The first line is "config interface 'loopback'". Create a file called network and place the file with the contents from the box on the page into it and save it. Then put it in the files/etc/config directory. Remember this is in the directory that you created with Image Builder.
I also ran into a problem when I tried to login in for the first time. It wouldn't accept the empty password. Here is the solution for that:
github.com/openwrt/luci/iss...
JaneYu You can build the latest kernel yourself. :)
Instructions are here:
https://gist.github.com/martin-niklasson/6912a7e5ba49b92801d54766f1d7277a
The current build is here:
https://downloads.openwrt.org/releases/21.02.0-rc3/targets/bcm27xx/bcm2711/
Just some quick things I ran into.
First, make a backup of your current config. This will make things go sooooo much faster.
You are going to be using a tool called OpenWRT Image Builder. It is in the second box under the heading Supplementary Files in the link I have provided for the current build. The file is named: openwrt-imagebuilder-21.02.0-rc3-bcm27xx-bcm2711.Linux-x86_64.tar.xz
Yes, you do need to provide the file for files/etc/config. It is a bit confusing but the contents of the file will come further down the page under the heading network. The first line is "config interface 'loopback'". Create a file called network and place the contents from the box on the page into it and save it. Then put it in the files/etc/config directory. Remember this is in the directory that you created with Image Builder.
I also ran into a problem when I tried to login in for the first time. It wouldn't accept the empty password. Here is the solution for that:
https://github.com/openwrt/luci/issues/5104#issuecomment-855692620
JaneYu 

