Search the Community
Showing results for tags 'nanopineo3'.
-
So I was trying to compile a wifi driver for a somewhat new usb wifi device and it breaks during compilation because it expects a directory named /usr/src/<linux-headers>/arch/aarch64 but on NanoPi NEO3 the directory is named (on NanoPI R4S is the same case btw) /usr/src/<linux-headers>/arch/arm64 In order to make it work, I created a symlink under the "arch" directory called "aarch64" pointing to "arm64" and I was able to compile it. Here is what happens when I try to compile it without the symlink: pablo@callampa:~/repos/github.com/morrownr/rtl8852cu-20240510$ make clean cd phl ; rm -fr */*/*/*/*.mod.c */*/*/*/*.mod */*/*/*/*.o */*/*/*/.*.cmd */*/*/*/*.ko cd phl ; rm -fr */*/*/*.mod.c */*/*/*.mod */*/*/*.o */*/*/.*.cmd */*/*/*.ko cd phl ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko cd phl ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko cd phl ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd core ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd os_dep/linux ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd platform ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~ rm -fr .tmp_versions rm -fr MOK.der MOK.priv pablo@callampa:~/repos/github.com/morrownr/rtl8852cu-20240510$ make #rm -f .symvers.8852cu make ARCH=aarch64 CROSS_COMPILE= -C /lib/modules/6.6.58-current-rockchip64/build M=/home/pablo/repos/github.com/morrownr/rtl8852cu-20240510 modules make[1]: Entering directory '/usr/src/linux-headers-6.6.58-current-rockchip64' /usr/src/linux-headers-6.6.58-current-rockchip64/Makefile:768: arch/aarch64/Makefile: No such file or directory make[2]: *** No rule to make target 'arch/aarch64/Makefile'. Stop. make[1]: *** [Makefile:234: __sub-make] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-6.6.58-current-rockchip64' make: *** [Makefile:723: modules] Error 2 pablo@callampa:~/repos/github.com/morrownr/rtl8852cu-20240510$ My question would be, is it correct? Shouldn't it be named "aarch64" in the first place?
-
Hi, I have a neo3 that has been running without any issues for about a year. Today after I had to restart it and the device wouldn't boot anymore. I checked the systemd logs by mounting the sd card in my laptop and I can see that it didn't get to boot at all (as there are no systemd logs after the shutdown). I checked the card for filesystem issues, and it seems to be OK. But I have no idea how to fix this. I really don't want to flash again an image and start from zero as I have a good amount of software installed that would take a lot of time to setup again. If this is a problem with the bootloader, how can I troubleshoot it? I don't have a serial interface so I am a bit in the dark here (as the neo3 doesn't have a video output, only USB and ethernet). There was another topic saying that after an upgrade, rk3328-nanopi-neo3-rev02.dtb had gone missing. I also checked that, and the file is in its place and armbianEnv.txt is pointing to it, so I don't think that is the problem. Anyway, pointers in how to debug this would be appreciated!
-
I have spent 7 hours now trying to connect to my Neo3 via my laptop using a USB to Ethernet Adapter. Ive also tried changing the nanopi microsd card image to see if it has any effect. from Ubuntu / Armbian / DietPi. When im powering on my Neo3, with ubuntu only the red led shows, with the other two, the Red LED shows plus the green LED flashes. Is this actually possible? Can I plug my Neo into my laptop with a ethernet usb adapter? or does it have to be into a router? The error im getting on my laptop is Connection Failed : Activation of network connection failed. the network manager shows it forever stuck on Connecting - 1000Mbps Running cmd nmcli device status returns ethernet disconnected I ran dmesg to see if there was any errors, one line read firmware: failed to load rtl_nic/rtl8153b-2.fw this error is for my usb to ethernet adapter, I fixed this by downloading rtl8153b-2.fw into /lib/firmware/rtl_nic/ and running sudo update-initramfs -u After running dmesg again, another error causing problems could be xhci_hcd 0000:00:14.0: WARN Set TR Deq Ptr cmd failed due to incorrect slot or ep state. im unable to fix this so far, I have tried changing ethernet cables, and also adding kernel parameter intel_iommu=off The error still shows in dmesg and im unable to connect to my Neo3 Any advice guys?
-
Hi Armbians :) Armbian's discontinued support of the NanoPi Neo3 board, hit me very hard. I have operated multiple of these SBCs with Armbian very stable, in different DCs for a long time. Because of the defunctional kernel under Armbian, I was forced to look around for alternatives and only came across Manjaro, DietPi and Friendlyarm published by FriendlyElec themself. Unfortunately I was not happy with Manjaro and Friendlyarm. Dietpi, on the other hand, seems to be doing quite well till now. And most importantly, it doesn't seem to have the kernel/ reboot problem that affected Armbian. But how can that be if it's based on Armbian? Can someone explain that to me?
-
Dear Armbians I have a NanoPi Neo 3 board with 1GB of RAM running in a DC for quite a while now. Because of an SD card failure, I had to make a fresh setup with the actual Bookworm image. This image seems to be quite unstable. Device is going up and down all the time. I am unable to find the problem myself. Maybe someone can take a look and help me to fix my stability issue: Debug output: https://paste.armbian.com/sozozoyahi
-
Greetings, I have multiple NanoPi NEO3s on the same subnet. When booting with Ubuntu 20.04.6 LTS they use the physical MAC address when posting to DHCP, but ARMbian seems to create a default (fake) MAC address and uses that instead. Judging by the "armbianmonitor -U" output, ARMbian knows about the physical MAC address, it just doesn't use it. The NEO3 board is listed as supported, but there is another posting dated 2020 that still seems to be unresolved. MAC address c2:1f:b3:b0:d2:41 seems to be a generic (fake) address that is being used. Is there a remedy to allow it to use the actual hardware address with this kernel ? -- -- -- bracka@NanoPi-neo3:~$ hostnamectl Static hostname: NanoPi-neo3 Icon name: computer Machine ID: 7a8f8d11a2be4919bc15a3b60d4bb717 Boot ID: af467481c9054525b978b6a316e61c94 Operating System: Debian GNU/Linux 11 (bullseye) Kernel: Linux 6.1.11-rockchip64 Architecture: arm64 bracka@NanoPi-neo3:~$ sudo ifconfig eth0 eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.196 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::6cf0:52e7:7e44:23f8 prefixlen 64 scopeid 0x20<link> ether c2:1f:b3:b0:d2:41 txqueuelen 1000 (Ethernet) RX packets 1032591 bytes 1165880161 (1.0 GiB) RX errors 0 dropped 471 overruns 0 frame 0 TX packets 303323 bytes 43670515 (41.6 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 51 $ armbianmonitor -U 8 Thu 25 May 2023 09:48:33 PM UTC | NanoPi Neo 3 | 23.02.2 | arm64 | aarch64 | 6.1.11-rockchip64 730 ### ip addr: 731 732 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 733 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 734 inet XXX.XXX.0.1/8 scope host lo 735 valid_lft forever preferred_lft forever 736 inet6 ::1/128 scope host 737 valid_lft forever preferred_lft forever 738 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 739 link/ether 9a:84:df:28:e1:3e brd ff:ff:ff:ff:ff:ff 1316 ### armbian-release: 1317 1318 # PLEASE DO NOT EDIT THIS FILE 1319 BOARD=nanopineo3 1320 BOARD_NAME="NanoPi Neo 3" 1321 BOARDFAMILY=rockchip64 1322 BUILD_REPOSITORY_URL=https://github.com/armbian/build 1323 BUILD_REPOSITORY_COMMIT=1a8daf0 1324 VERSION=23.02.2 1325 LINUXFAMILY=rockchip64 1326 ARCH=arm64 1327 IMAGE_TYPE=stable 1328 BOARD_TYPE=conf 1329 INITRD_ARCH=arm64 1330 KERNEL_IMAGE_TYPE=stable 1331 BRANCH=edge 1525 ### ip addr: 1526 1527 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 1528 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 1529 inet XXX.XXX.0.1/8 scope host lo 1530 valid_lft forever preferred_lft forever 1531 inet6 ::1/128 scope host 1532 valid_lft forever preferred_lft forever 1533 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 1534 link/ether c2:1f:b3:b0:d2:41 brd ff:ff:ff:ff:ff:ff * I am willing to research this if somebody can provide build & submission guidelines.
-
Hi team! This may be the stupidest question ever… I am a long time Debian user. I have a project in mind where I plan to setup a dual node HA Haproxy balancer. This is pretty straightforward in Debian but I am wondering, is HAproxy even available for armbian?. I do not plan to have a big throughput for these HAproxy nodes, is for a homelab and more for fun than for production purposes… The idea is to use the cheapest dual gigabit board available, that’s why I will probably go for nanopi (which supports armbian). English is not my first language so sorry in advance for messed up wording/expressions/whatever. Thanks!
-
Because I have updated to Armbian 22.02 with the linux 5.15.25 kernel and I am using the rk3328-nanopi-r2-rev00 device tree, I thought I should share what I have discovered. 1/ I had trouble setting up a one-wire device (ds18b20 temperature sensor). I think the w1-gpio pin assigned in the supplied overlay is messing up access of the SD card. I found some helpful information from this post: https://forum.pine64.org/showthread.php ... #pid100639 I copied the overlay code, modified it to use GPIO2_A2 (pin 7 on the 26pin header), compiled it and copied the new dtbo file to "/boot/overlay-user/" . Added the "user_overlays=rockchip-w1-gpio" line to "/boot/armbianEnv.txt" and rebooted. Success. I was able to read the ds18b20. (I have since discovered the utility "armbian-add-overlay" would have done the compile, copy and edit steps all at once.) The steps I took: Overlay filename: rockchip-w1-gpio.dts /dts-v1/; /plugin/; / { compatible = "rockchip,rk3328"; fragment@0 { target-path = "/"; __overlay__ { w1: onewire@0 { compatible = "w1-gpio"; pinctrl-names = "default"; gpios = <&gpio2 2 0>; status = "okay"; }; }; }; }; You will probably need to install the device-tree-compiler. sudo apt install device-tree-compiler Compile the overlay: dtc -I dts -O dtb -o rockchip-w1-gpio.dtbo rockchip-w1-gpio.dts Copy the compiled overlay: sudo cp rockchip-w1-gpio.dtbo /boot/overlay-user/ Add the "user_overlays=rockchip-w1-gpio" line (without quotes) to "/boot/armbianEnv.txt" and reboot. I have learnt a bit more about "Device Trees" and "dt overlays" (I still don't understand how it all works), it turns out overlays can be used to change (somewhat) what has been configured in the Device Tree being used. So here are some more overlays that I have come up with after grabbing snippets from here and there. 2/ I have read of people editing and recompiling the device tree dtb file to enable the USB-OTG to be used as a "normal" USB port. I have created an overlay that changes the dr_mode of the USB-OTG from "otg" to "host". Overlay filename: rockchip-usb-otg.dts /dts-v1/; /plugin/; / { compatible = "rockchip,rk3328-usb\0rockchip,rk3066-usb\0snps,dwc2"; fragment@0 { target-path = "/usb@ff580000"; __overlay__ { dr_mode = "host"; }; }; }; Compile: dtc -@ -I dts -O dtb -o rockchip-usb-otg.dtbo rockchip-usb-otg.dts Copy the compiled overlay to /boot/overlay-user/ and add "rockchip-usb-otg" (without quotes) to /boot/armbianEnv.txt on the "user_overlays=" line. After a reboot, check by plugging a "9-hole To Dual USB2.0 Female Header Adapter Cable" (or similar) onto the USB header and plug a couple of flash drives in to the USB sockets. Type lsblk and the resulting output should show /dev/sda and /dev/sdb. 3/ The rk3328-nanopi-r2.dtb doesn't enable "pwm". PWM is handy for controlling the speed of a cooling fan. There is a header on the board for just a thing. (2Pin JST ZH 1.5mm Connector for 5V Fan) Overlay filename: rockchip-pwm-gpio.dts /dts-v1/; /plugin/; / { compatible = "rockchip,rk3328"; fragment@0 { target-path = "/pwm@ff1b0020"; __overlay__ { status = "okay"; }; }; }; Compile, copy and edit as above and reboot. ls /sys/class/pwm/ This should show "pwmchip0" is available. To be able to control "PWM" from userspace, a couple of other things need to be in place. The user needs to be a member of the "gpio" group and some udev rules need to be in place. filename: 50-pwm.rules SUBSYSTEM=="pwm*", PROGRAM="/bin/sh -c '\ chown -R root:gpio /sys/class/pwm && chmod -R 770 /sys/class/pwm;\ chown -R root:gpio /sys/devices/platform/*.pwm/pwm/pwmchip* && chmod -R 770 /sys/devices/platform/*.pwm/pwm/pwmchip*\ '" Copy the 50-pwm.rules file to:- "/etc/udev/rules.d/" (without the quotes) Reload the udev rules. udevadm control --reload-rules ; udevadm trigger Here is a shell script to setup the PWM. Values for period and duty-cycle width may be changed as required. filename: setpwm.sh #! /usr/bin/bash # activate the PWM. echo 0 > /sys/class/pwm/pwmchip0/export #Wait for export to settle sleep 2 # set period to 10ms echo 10000000 > /sys/class/pwm/pwmchip0/pwm0/period # set normal polarity. needs to be reset explicitly. Bug? echo "inversed" > /sys/class/pwm/pwmchip0/pwm0/polarity echo "normal" > /sys/class/pwm/pwmchip0/pwm0/polarity # enable the PWM echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable # set duty cycle to 1ms echo 1000000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle 4/ The NanoPi NEO3 has a push button. From documentation I have found, indicates that it is supposedly a reset button, but it seems to have no effect. This overlay renames the button and sets the function to "Power Off" (or "Reset"). I wanted it to shutdown the NEO3, so I have configured it as "KEY_POWER" (0x74). Change line 15 to "linux,code = <0x198>;" for a Reset button. Overlay filename: rockchip-power-button.dts /dts-v1/; /plugin/; / { compatible = "rockchip,rk3328"; fragment@0 { target-path = "/"; __overlay__ { gpio-keys { button@0 { label = "k1_button"; linux,code = <0x74>; //0x198 = KEY_RESTART, 0x74 = KEY_POWER }; }; }; }; }; Compile, copy and edit as above and reboot. Press the button and the NEO3 should shutdown (or restart). 5/ Apparently the NanoPi R2 has two additional LEDS, ("lan-led" and "wan-led") that the NEO3 does not. The rk3328-nanopi-r2.dtb assigns these LEDS to GPIO pins that are on the 26pin header that would be used as normal GPIO or used by I2S and SPI on the NEO3. To make these pins available for use, I have made an overlay that re-assigns the "lan-led" and "wan-led" to gpios that (according to the NEO3 schematic) are not used on the NEO3. Overlay filename: rockchip-leds.dts /dts-v1/; /plugin/; / { compatible = "rockchip,rk3328"; fragment@0 { target-path = "/"; __overlay__ { gpio-leds { led@2 { gpios = <&gpio0 5 0>; }; led@3 { gpios = <&gpio0 6 0>; }; }; }; }; }; Compile, copy and edit as above and reboot. Check by using "gpioinfo" gpioinfo gpiochip0 The output will show that the "lan-led" and "wan-led" are now assigned to gpiochip0, lines 5 and 6 respectively. I believe that using these simple Device Tree Overlays, has made my NanoPi NEO3 perform as it was intended. I have found one flaw. After upgrading to the latest armbian kernel, 20.02, two GPIO pins will not change state. They are GPIO2_B7/I2S1_MCLK (gpiochip2, 15) and GPIO3_B0/SPI_CSN0 (gpiochip3, 8). Something is loaded during boot that sets them both High (I have LEDs connected and can see when they go High). Using the commands "gpioset gpiochip2 15=0" and "gpioset gpiochip3 8=0" does not turn the LEDs off. There are no errors or warnings when using the commands and "gpioinfo" shows that the pins are "input active-high". This effect did not happen using the previous kernel and happens late in the boot process. I am ruling out any Device Tree problems as the Green Status LED is flashing happily well before either pin goes high. Regards, John
-
Hello, So is anyone aware of a way (like a text file)to populate with values etc to bypass the need to be interactive during first boot? Since this device is displayless and I hate to pop the case every time to hookup the console cable when setting up a half dozen devices. I imagine I could alter the first boot script, but was just wondering if there was another way. Thanks! Richard
-
Good morning, I am an electronics engineer, and wanted to make an additional card for the nanopi neo3 based on the rk3328 to add an EMMC and an SPI memory to it so that it no longer uses an sd card. By dint of searching the forum, I managed to modify the dtb files of the neo3 to include the spi@ff190000 of my neo3 and to make the dtbo files spidev and jedec. But unfortunately, armbian-config cannot finish the job. For information I use a N25Q064..3E (flashroom information with active spidev) and goes back well in /dev/mtd0 in jedec. but in my armbian i have no file /usr/lib/uboot***spl.bin. Maybe the problem rk3328-nanopi-neo3-rev02.dtb rockchip-spi-jedec-nor.dtbo rockchip-spi-jedec-nor.dts rockchip-fixup.script rockchip-spi-spidev.dtbo rockchip-spi-spidev.dts
-
Not sure if this is board-specific, but filing here anyway. After installing armbian from Armbian_23.5.1_Nanopineo3_bookworm_current_6.1.30.img.xz , apt doesn't find the key for the armbian repository. root@nanopi:/tmp# apt update Hit:1 http://deb.debian.org/debian bookworm InRelease Hit:2 http://deb.debian.org/debian bookworm-updates InRelease Hit:3 http://deb.debian.org/debian bookworm-backports InRelease Hit:4 http://security.debian.org bookworm-security InRelease Hit:5 http://fastmirror.pp.ua/armbian bookworm InRelease Err:5 http://fastmirror.pp.ua/armbian bookworm InRelease The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 93D6889F9F0E78D5 Reading package lists... Done Building dependency tree... Done Reading state information... Done All packages are up to date. W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://fastmirror.pp.ua/armbian bookworm InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 93D6889F9F0E78D5 W: Failed to fetch http://apt.armbian.com/dists/bookworm/InRelease The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 93D6889F9F0E78D5 W: Some index files failed to download. They have been ignored, or old ones used instead. I am aware of how to manually add the missing key, but I suppose this should be done by the installation process or be part of the image already. https://paste.armbian.com/ziziqajiru
-
Hi, I need to help for understandable how set right clock hierarchy for i2s bus with external master-clock signal. This mode supported rockchip processors (RK3328, RK3399) but there are very small information how it can do. Today we have out of box in armbian for Nanopi Neo3 working I2S with master-clock from PLL, but I want change master-clock source from PLL to external signal. In souce and clock debugfs I find that I2S1 ("i2s1_pre") can be clocked from 4 sources: clk_i2s1_div, clk_i2s1_frac, clkin_i2s1, xin12m. By default parent for i2s1_pre set to clk_i2s1_div, which have parent cpll. Hence we must change parent for i2s1_pre to clkin_i2s1, but clock clkin_i2s1 not exists. OK, I added clkin_i2s1 through overlay: /dts-v1/; /plugin/; / { compatible = "friendlyelec,nanopi-neo3", "rockchip,rk3328"; fragment@0 { target-path = "/"; __overlay__ { clk_i2s1: clk_i2s1 { compatible = "fixed-clock"; #clock-cells = <0>; clock-output-names = "clk_i2s1"; clock-frequency = <22579200>; }; }; }; }; and I see clkin_i2s1 in clock summary (fragments😞 enable prepare protect duty hardware clock count count count rate accuracy phase cycle enable ------------------------------------------------------------------------------------------------------- xin24m 10 10 0 24000000 0 0 50000 Y pll_cpll 1 1 0 1200000000 0 0 50000 Y cpll 8 13 0 1200000000 0 0 50000 Y clk_i2s1_div 0 0 0 75000000 0 0 50000 N i2s1_pre 0 0 0 75000000 0 0 50000 Y clk_i2s1 0 0 0 75000000 0 0 50000 N i2s1_out 0 0 0 75000000 0 0 50000 N clk_i2s1_frac 0 0 0 3750000 0 0 50000 N clkin_i2s1 0 0 0 22579200 0 0 50000 Y clock i2s1 described in rk3328.dtsi: i2s1: i2s@ff010000 { compatible = "rockchip,rk3328-i2s", "rockchip,rk3066-i2s"; ... clocks = <&cru SCLK_I2S1>, <&cru HCLK_I2S1_8CH>; clock-names = "i2s_clk", "i2s_hclk"; ... }; And now I must set parent for i2s1_pre to clkin_i2s1. Сan anyone help me with this? I tried use assigned-clocks/assigned-clock-parents but unsuccessfull.
-
Can’t figure out how to enable SPDIF on NanoPi NEO3. rk3328-nanopi-neo3-rev02.dtb sources contain SPDIF sound-spdif { compatible = "simple-audio-card"; simple-audio-card,name = "SPDIF"; simple-audio-card,cpu { sound-dai = <&spdif>; }; simple-audio-card,codec { sound-dai = <&spdif_out>; }; }; spdif_out: spdif-out { compatible = "linux,spdif-dit"; #sound-dai-cells = <0>; }; ............ &spdif { status = "okay"; pinctrl-0 = <&spdifm0_tx>; }; Kernel module loaded too root@neo3:~# lsmod |grep spdif snd_soc_rockchip_spdif 16384 0 snd_soc_core 278528 5 snd_soc_pcm5102a,snd_soc_rockchip_spdif,snd_soc_simple_card_utils,snd_soc_rockchip_i2s,snd_soc_simple_card But I don’t see the sound interface root@neo3:~# aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Pro [DX3 Pro], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0 card 2: Out [I2S Out], device 0: ff010000.i2s-pcm5102a-hifi pcm5102a-hifi-0 [ff010000.i2s-pcm5102a-hifi pcm5102a-hifi-0] Subdevices: 1/1 Subdevice #0: subdevice #0
-
hi everyone How can I activate the SPI in the nanopi neo3 board?
-
I am creating a script that can backup sd-cards running on the system, resizing it with desired value or via resize2fs calculated. I learn a lot but there are a few things I don't fully understand. When I create a backup I dd what I understand is the bootsector, ie I grab the "start" position of the partition I am backing up with fidisk and use that value and a blocksize of 512. I then add another 10mb (in bytes) just to be sure. Usually the bootsector is 8192 big, but not always (IIRC nanopi neo3;s is WAY bigger). dd bs=512 count=$DDBOOTSECTOR if=/dev/mmcblk0 of=$IMG_FILE conv=noerror,sync status=progress I then truncate the file, calculated either by resize2fs minimum calculation or via an input + file usage in df (depending of what flag I start the script with) + bootsector + yadayadayda. (if someone want me to post the script I will, but the script and calculations work, although I "force" some commands) I then loop the created img file and delete the partition on the /dev/loop0 and recreates it to cover 100%. Then format it with mkfs.ext4 copying the name and uuid from wherever I backup from. I mount the loop and rsync / rsync -ahvD --exclude={/lost+found,/proc/*,/sys/*,/dev/*,/tmp,/run/*,/mnt/*,/media/*,/var/log.hdd,/var/swap,/etc/udev/rules.d/70-persistent-net.rules,/var/lib/asterisk/astdb.sqlite3-journal} --info=progress2 --stats --delete --force --partial / $tmp_dir This seems to work, but there are probably some things that are just "accepted" not really "perfect". So questions: 1. Should I only dd the EXACT bootsector and not add the extra 10mb? The reason I ask is because if I try to delete the partition with parted, I have to do a hack in the scrip where I simulate button presses, it warns me that "the partition cant be outside of the disk" when I try to REMOVE it. Solution, I use sfdisk to remove the partition, but it prompts me to think there is something wrong going on here. If the size I create is ABOVE the resize2fs reported minimum i don't get this warning. sfdisk was the solution in this case, but still curious on this behavior. If I try to only dd the small part, it sometimes works, sometimes doesn't so I come here asking. (I might be able to do some further research but since I have other questions, why not ask) 2. Does armbian ever update the u-boot via apt? I do my next update with rscync by looping the file and mounting it. But that wont EVER cover the bootsector. 2b. If yes, do I solve this by again dd:ing ONLY the bootsector? 3. I have noticed that sudo apt update on armbian includes armhf even though running arm64. This makes the update process VERY long. dpkg --print-foreign-architectures shows armhf so i remove it with dpkg --remove-architecture armhf and then find /var/lib/apt/lists/ -type f -exec rm {} -v \; Seems to fix this but is this a bad idea? Why is the armhf even being fetched to begin with? To my memory I have not added arhmf architecture... Thanks in advance!
-
- Orange Pi Zero 2
- Nanopi Neo 3
-
(and 2 more)
Tagged with:
-
Hi! Have limited knowledge in linux, all self learned so bear with me if I sometimes sound like an i**ot in my wording. I have used lots of different Raspberry pi's but since they are near to impossible to get your hands on I figured I'd try out some of the alternate boards. Got myself a nanoPiNeo2, orangePiZero2 and an orangePiPC2 just for the fun of it. I have tried this on the nanoPi and the opiZero2 and run into the same problems, havent even opened the opiPC2 yet but I suspect it will be the same problem on that board. Downloaded armbian for each separate board (instead of debian) because I want to use the same system on all my devices so its easier for me to learn. Got everything working as I wanted (just making a simple pihole to give away as xmas presents) but when it came to backing up, I ran into a wall. With the raspberries I use a script called image-backup located on the raspberrypi forums (awesome script made by RonR) but that obv wont work here since the rpi uses a fat32 as a boot partition. There is a flag you can run when using the script called "ubuntu", but it didn't work. Ok then, lets use win32 imager instead to just rip the card, its only 8gb, not a huge deal, I can probably even shrink the size with e2fsck and parted (as I understand it armbian autoexpands the card on mount anyway?) but I get an i/o error in win32 after a few seconds, this might actually be my computer, going to try it on another computer in a day or two, (I only have one). I tried other programs too, but none seems to work so I decided to try to dd from the mounted card. The backup directory is on a mounted cif on a windows computer if that has to do with anything? sudo dd if=/dev/mmcblk0 of=/path/to/backup/ddbackup.img bs=4M conv=sync status=progress That didn't work, I get (the numbers are bigger I just randomly took a number, the important thing is the +1 that gets added to the "normal" number in "records out", I suspect that is the boot sector?) 15874+1 records in 15875+0 records out I figured it had to do with the card being mounted so I made ANOTHER identical install on another sdcard and inserted the original sd in the usb with a card reader and doing the dd from /dev/sda instead (without it being mounted), but I get the exact same thing and when trying to flash the image and use that card, the board just never comes to life. Network port keeps flashing but nothing else. My plan was to make a backup.img file, mount that with a loop and shrink the "partition" with shrink2fs and parted. But even trying to mount the created image files gives me errors about bad superblocks etc, probably because of what I described above. Running e2fsck also gives me a TON of errors. I have tried for DAYS, searching all over the internet (figuring things out for myself is the best way to learn) but I get nowhere. Is there a simple solution to this? The only time I actually got a working .img file is if I dd a blank img file first from /dev/zero and set the file to become a size (with bs and count) where all data can fit and then rsync / into it. I can mount it with a loop (losetup) and access the files, but naturally it wont boot on the board (if I flash it to an sd card) since I read that the boot sector is "out of bonds" or whatever its called. Same error, just flashing network port. I'm at a complete loss here, I REALLY want to have an img file that the xmas gift holders get that they can just flash onto an sdcard in case of a breakdown of the software somehow. Please have pity on my soul!
-
Lets say I wish to creat three kernels with different timer settings like 100Hz/250Hz/1000Hz. The name of the generated SDcatd image is always the same which is not helpful. When I want to use them later as well for a multiboot scenario, so swtchable kernels, I need as well different names, so it is not only to rename the image files. USing Menuconfig, I could normally put a localization extension to it...when I do this, the image creation process fails as the system looking into wrong folder names. So, is there an alrernative path ? Or is this a bug ?
-
Sorry to ask such a beginner question, but I am still learning about Armbian... When I install debian Kernels from Kernel.org myself, I find this in my source-folder of the distro which I created when unzip/tar the Kernel. But as Armbian does this in the backround for me...where is this folder ? RTLA is a new tool to use osnoise tracer and needs to be compiled from source. https://lwn.net/Articles/869563/ THX
-
Hi all, For the past few days, I've been trying to SSH into my NanoPi Neo3, but I keep getting the "Incorrect password" error. My set up: Load a supported Armbian image onto a 16GB, class 10 micro SD card using balenaEtcher. https://armbian.hosthatch.com/archive/nanopineo3/archive/Armbian_21.08.1_Nanopineo3_focal_current_5.10.60.img.xz Connect the NanoPi to my laptop, with a shared internet connection (Please note: It connects just fine. I've tried with a manual and automatic DHCP connection, and in both cases, been able to obtain the IP address). Insert the micro SD card. Plug in the power cord, and wait for the blinking yellow light. SSH into the root user, using "ssh root@XXX.XXX.XXX.XXX" (I've also tried using PuTTY). After all that, I get prompted for a password. I enter in the password, but then I get the "Incorrect password" error. I've tried "1234", "fa", "NULL", and a range of other passwords. Also note, I've tried this process on a Windows, Mac, and Linux computer. I really appreciate any help or ideas! Thanks, Chandler
-
Dear maintainers, Guess some device tree issues with neo3 got me into this mess, since rk3328-nanopi-neo3-rev02.dtb is missnig. Scanning mmc 1:1... Found U-Boot script /boot/boot.scr 3185 bytes read in 7 ms (444.3 KiB/s) ## Executing script at 00500000 Boot script loaded from mmc 1 428 bytes read in 6 ms (69.3 KiB/s) 12514638 bytes read in 556 ms (21.5 MiB/s) 30083584 bytes read in 1326 ms (21.6 MiB/s) Failed to load '/boot/dtb/rockchip/rk3328-nanopi-neo3-rev02.dtb' libfdt fdt_check_header(): FDT_ERR_BADMAGIC No FDT memory address configured. Please configure the FDT address via "fdt addr <address>" command. Aborting! Kind regards, Dennis
-
Dear all, I occasionally have a full /var/log at startup on various boards, probably because the logs are not rotated /vaccuumd at boot (we had a thread about this in the old opi1 forum). The rotating /vaccuum is currently done every 15 minutes, so I figured why not do it directly at boot as well? For this purpose I updated /etc/cron.d/armbian-truncate-logs with an extra @reboot line: PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin */15 * * * * root /usr/lib/armbian/armbian-truncate-logs @reboot root /usr/lib/armbian/armbian-truncate-logs I rebooted several times, and didn't get a full /var/log anymore. All subsequent problems like failing networking when filesystem full also vanished;-) Kind regards, Dennis
- 14 replies
-
1
-
- Orange Pi Zero
- Nanopi Neo 3
-
(and 2 more)
Tagged with:
-
Hello People. First of all, thank you to all the people that puts work and time into this project. It's my first time posting here. I've been trying to solve this problem by myself since this board it's unsupported now, but I had no luck. The thing it's, I can't get the linux to recognize properly the PlutoSDR, I get this errors in dmesg. [ 19.885514] usb 4-1: new high-speed USB device number 6 using xhci-hcd [ 20.035134] usb 4-1: Dual-Role OTG device on non-HNP port [ 20.035310] usb 4-1: set a_alt_hnp_support failed: -32 [ 20.161463] usb 4-1: new high-speed USB device number 7 using xhci-hcd [ 20.311139] usb 4-1: Dual-Role OTG device on non-HNP port [ 20.311316] usb 4-1: set a_alt_hnp_support failed: -32 [ 20.312182] usb usb4-port1: attempt power cycle [ 20.721465] usb 4-1: new high-speed USB device number 8 using xhci-hcd [ 20.743390] usb 4-1: Dual-Role OTG device on non-HNP port [ 20.743570] usb 4-1: set a_alt_hnp_support failed: -32 [ 20.869463] usb 4-1: new high-speed USB device number 9 using xhci-hcd [ 20.891387] usb 4-1: Dual-Role OTG device on non-HNP port [ 20.891565] usb 4-1: set a_alt_hnp_support failed: -32 [ 20.892491] usb usb4-port1: unable to enumerate USB device This only happens with pluto, the board recognize properly other USB devices. I've try compiling other kernel, forcing DWC3 driver to be HOST only, but didn't change anything (and broke the LAN port 😧 ). The pluto has an OTG port but, for my understanding, should be in device mode because I'm using an standard micro USB cable. I haven't try modifying the device tree since I don't understand really well all the options (I've used rk3328-nanopi-neo3-rev02.dtb and rk3328-nanopi-r2-rev20.dtb with same results) I tested the compiled versions 20.05.9 - Linux 5.4.51, 20.08 - Linux 5.7.15 and 21.08.1 - Linux 5.13.12. Also tried upgrading (and fixing the dtb problem when upgrading) but also didn't help. Hope someone can help me, I can provide more information if needed. Thank you!
-
Dear community, dear @Igor (as maintainer of NEO3 CSC), thanks a lot for the NEO3 support. This board ran rock solid for me approx. two years straight – much more stable than my other SBCs running Armbian (due to various reasons, no offense :)). However, the board failed to boot with "ERROR: Did not find a cmdline Flattened Device Tree". It appears that ``rk3328-nanopi-neo3-rev02.dtb`` went missing. This must have happened when upgrading the package ``linux-dtb-current-rockchip64`` from 21.08.2 to 22.02.1. As a workaround, it helps to (download the CSC image for the board again, get the file out of the image,) place the file in ``/boot`` and set ``fdtfile=../rk3328-nanopi-neo3-rev02.dtb`` in ``/boot/armbianEnv.txt`` I think it's a pity that support for this board broke, which works so well with Armbian. Any chance we can get the dtb back into the package? Cheers, Lukas