Lope

Members
  • Content count

    19
  • Joined

  • Last visited

About Lope

  • Rank
    Member

Recent Profile Visitors

191 profile views
  1. NanoPi NEO Plus2

    I'm testing the nightly image: Armbian_5.32.170704_Nanopineo2_Ubuntu_xenial_dev_4.11.8.img for NanoPi Neo2 H5. Every time if my Neo2 has been off for many minutes, if I power it up it doesn't boot on the first attempt. If I unplug and replug power a few seconds later (either at the 220v end or the microUSB, it boots up flawlessly. Anyone experienced this? Any ideas? Maybe it's a power stabilization issue. I guess there should be a 2 second or whatever delay before it starts booting so it can be as reliable as other Linux SBC's. Other than that, surely there's a watchdog built in to make it reboot if it doesn't boot successfully?
  2. Thanks, I added overlays=usbhost0 usbhost2 usbhost3 to /boot/armbianEnv.txt so it looks like this verbosity=1 console=both overlay_prefix=sun50i-h5 rootdev=UUID=c9cfe2c8-bfa6-421a-badc-4e58e9288de2 rootfstype=ext4 overlays=usbhost0 usbhost2 usbhost3 And uboot showed U-boot loaded from SD Boot script loaded from mmc 152 bytes read in 151 ms (1000 Bytes/s) 24232 bytes read in 354 ms (66.4 KiB/s) 385 bytes read in 407 ms (0 Bytes/s) Applying kernel provided DT overlay sun50i-h5-usbhost0.dtbo 385 bytes read in 399 ms (0 Bytes/s) Applying kernel provided DT overlay sun50i-h5-usbhost2.dtbo 385 bytes read in 390 ms (0 Bytes/s) Applying kernel provided DT overlay sun50i-h5-usbhost3.dtbo 4179 bytes read in 369 ms (10.7 KiB/s) Applying kernel provided DT fixup script (sun50i-h5-fixup.scr) ## Executing script at 44000000 5001817 bytes read in 440 ms (10.8 MiB/s) 12285960 bytes read in 869 ms (13.5 MiB/s) ## Loading init Ramdisk from Legacy Image at 4fe00000 ... And now when I plugin USB devices into the female USB A cables I've soldered to the PCB as per http://wiki.friendlyarm.com/wiki/index.php/NanoPi_NEO2#Diagram.2C_Layout_and_Dimension to the port labelled "USB1" I get nothing, but for the port labelled "USB2" I get [ 156.201286] usb 5-1: device descriptor read/64, error -62 [ 156.497302] usb 5-1: device descriptor read/64, error -62 [ 156.973314] usb 5-1: device descriptor read/64, error -62 [ 157.269327] usb 5-1: device descriptor read/64, error -62 [ 157.977369] usb 5-1: device not accepting address 20, error -62 [ 158.577391] usb 5-1: device not accepting address 21, error -62 [ 158.583375] usb usb5-port1: unable to enumerate USB device So at least there are signs of life for one USB port. I'm going to check my solder joints again. ==== microUSB port didn't work When powering the NanoPi2 via the UART 5v line from USB (it was a bit underpowered, voltage sagged down to 4.64) I plugged a (tested working) USB OTG cable into the microUSB and nothing I connected showed up in dmesg. (for all other tests, the board was powered with 2A microUSB) The "USB1" (as shown in the pinout diagram) headers were unresponsive in all cases. How to know that your D+ and D- are backwards I noticed my soldering had left a bit of flux behind on the board, after scratching it off I got a different error in dmesg [ 115.875561] usb 5-1: new low-speed USB device number 2 using ohci-platform [ 116.059563] usb 5-1: device descriptor read/64, error -62 [ 116.355565] usb 5-1: device descriptor read/64, error -62 [ 116.647578] usb 5-1: new low-speed USB device number 3 using ohci-platform [ 116.831581] usb 5-1: device descriptor read/64, error -62 [ 117.127593] usb 5-1: device descriptor read/64, error -62 [ 117.419605] usb 5-1: new low-speed USB device number 4 using ohci-platform [ 117.835618] usb 5-1: device not accepting address 4, error -62 [ 118.019628] usb 5-1: new low-speed USB device number 5 using ohci-platform [ 118.435638] usb 5-1: device not accepting address 5, error -62 [ 118.441516] usb usb5-port1: unable to enumerate USB device Then I swapped D+ and D- and the "USB2" port worked! Having 2 working USB ports is enough progress for me, for now. I'm going to leave this issue as is for now. ==== BTW I also found that with a 5 meter USB extension cable and a hub on the end of it, I couldn't connect 2 wifi adapters to the female USB A port. But if I connect the hub directly to the port I can connect 2 wifi adapters.
  3. Thanks for the quick reply Igor, amazing. I found /boot/dtb/allwinner/overlay sun50i-h5-usbhost0.dtbo sun50i-h5-usbhost2.dtbo sun50i-h5-usbhost3.dtbo These 3 files are all in binary format. Any more hints will be appreciated. Is there a similar board I can look at for an example? I'm busy working through the link you gave I've read through /boot/dtb/allwinner/overlay/README.sun50i-h5-overlays but just mentions the above 3 usb host ports (a bit strange because the h5 has at least 4 usb ports that I know of) ... unless the microUSB port is not included in these.
  4. I'm testing the nightly image: Armbian_5.32.170704_Nanopineo2_Ubuntu_xenial_dev_4.11.8.img I've soldered 2x female A USB ports to the NanoPi Neo2 as per the pinout http://wiki.friendlyarm.com/wiki/index.php/NanoPi_NEO2#Diagram.2C_Layout_and_Dimension When I plugged in wifi dongles or USB flash drives, their light comes on, but I get nothing on lsusb and dmesg. Then I realized I had D+ and D- reversed, so I swapped them for each port, but there's still absolutely nothing when connecting devices to these ports. (I know that having D+ and D- swapped doesn't cause any damage) Do I need to somehow enable the USB ports in a fex file or in the kernel etc?
  5. The reason PHP-cli is not my top level is at times when I need to do asynchronous stuff or maybe need functionality not available in PHP. But that's more in the terrirory of software than scripts. I've also come to much prefer ES6 syntax over PHP. PHP is really badly designed language. Not as bad as bash, but still very bad. It is however very useful, simple and convenient.
  6. This reply is just for anyone interested in using NanoPi Neo2 to do useful things (which ideally should be apt-get upgradable) I completely respect that you don't support this and there's no need for armbian devs to spend time reading this, cos it's working. Okay I upgraded everything except armbian-firmware armbian-tools-xenial linux-dtb-dev-sun50iw2 linux-headers-dev-sun50iw2 linux-image-dev-sun50iw2 linux-u-boot-nanopineo2-dev linux-xenial-root-dev-nanopineo2 sunxi-tools And then just for fun I ran the upgrade to try your fix. The upgrade completed successfully. I rebooted. It was fine but gave the error about missing dtb file. I created the allwinner dir inside the allwinner dir, copied the file there. rebooted, nomore errors, except this CRC error U-Boot 2017.09-armbian (Sep 22 2017 - 09:14:02 +0200) Allwinner Technology CPU: Allwinner H5 (SUN50I) Model: FriendlyARM NanoPi NEO 2 DRAM: 512 MiB MMC: SUNXI SD/MMC: 0 *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial but it boots and there's nothing more to upgrade.
  7. Thanks Igor. I have some familiarity with Bash scripts, however every time I have worked on a complicated bash script I've sworn to myself to never work on a complicated bash script ever again. So I only use bash for very simple stuff. For complex things I use php7-cli scripts For very complex things I use node.js. I'll check it out though. ====== I found an alternative to apt-get upgrade, to upgrade things without breaking the image. `apt-get upgrade` N (then see what needs upgrading that's not firmware etc related) `apt-get upgrade apt hostapd` (etc)
  8. Lope

  9. Thanks Igor I reflashed a fresh image and it's working now. I was planning to test stability of the image using it as a home router. I thought I can contribute by doing an upgrade and then seeing what breaks or how to keep it working after upgrade? If you don't reply before I get this maybe I'll try upgrade again and then copy the file as you suggest. BTW it's amazing having one of these USB PL-2303HX hooked up to the NanoPi Neo2 for testing. It just works instantly and perfectly on Ubuntu 16.04 with 4.10 kernel with zero configuration of baud settings, parity etc, and I expect it will work with other SBC's like the Orange Pi's and RbPi's ? After re-flashing I saw the whole boot process all the way from U-Boot and then was offered a root console and could login and use the PC just like if I had attached a screen, kb and mouse, but so much more convenient of course because it's a terminal on my dev PC and I can probably paste into minicom.
  10. I'm testing the nightly image: Armbian_5.32.170704_Nanopineo2_Ubuntu_xenial_dev_4.11.8.img I read somewhere that the NanoPi Neo2 has a shutdown issue where it reboots. This was my experience (serial console) `shutdown -h now` ends with [ OK ] Reached target Shutdown. [ 59.809788] reboot: Power down INFO: PSCI Affinity Map: INFO: AffInst: Level 0, MPID 0x0, State ON INFO: AffInst: Level 0, MPID 0x1, State ON INFO: AffInst: Level 0, MPID 0x2, State ON INFO: AffInst: Level 0, MPID 0x3, State ON Maybe there is a watchdog timer (that resets the CPU if some ticker stops or something) that needs to be disabled? I see there is no watchdog package installed in this image. As a workaround while connected via serial console, I hit enter when U-Boot got to this line "Hit any key to stop autoboot: 0", which only paused for a very brief moment.
  11. I used the Armbian test image. I did apt-get upgrade I changed eth0 to static IP. But now, I started it up and eth0 green light won't stay on. Can't ping it or SSH. I connected a USB PL-2303HX from my PC to the NanoPi Neo2 (first time for me ever connecting to a Linux computer's serial console) With no configuration at all I got this output in minicom. U-Boot SPL 2017.09-armbian (Sep 17 2017 - 03:48:48) DRAM: 4096 MiB Trying to boot from MMC1 NOTICE: BL3-1: Running on H5 (1718) in SRAM A2 (@0x44000) NOTICE: Configuring SPC Controller NOTICE: BL3-1: v1.0(debug):aa75c8d NOTICE: BL3-1: Built : 02:45:22, Sep 17 2017 INFO: BL3-1: Initializing runtime services INFO: BL3-1: Preparing for EL3 exit to normal world INFO: BL3-1: Next image address: 0x4a000000, SPSR: 0x3c9 Looks like U-Boot can't find the kernel or whatever? Okay I removed the 5v wire from the USB serial adapter so I can rather power the board via microUSB 2A adapter than weak USB port power. I unplugged and replugged the 2A microUSB but it didn't help. With the microUSB unplugged the PCB's green LED still glowed faintly somehow powered from GND and tx/rx. rneese suggested I unplug and replug everything. I did and now it booted up and I can see it on the console. It's saying no ethernet found and it looks like a console so I'll give it a go. U-Boot 2017.09-armbian (Sep 17 2017 - 03:48:48 +0200) Allwinner Technology CPU: Allwinner H5 (SUN50I) Model: FriendlyARM NanoPi NEO 2 DRAM: 512 MiB MMC: SUNXI SD/MMC: 0 *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 38518 bytes read in 134 ms (280.3 KiB/s) Unknown command 'bmp' - try 'help' switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... Found U-Boot script /boot/boot.scr 3362 bytes read in 179 ms (17.6 KiB/s) ## Executing script at 4fc00000 U-boot loaded from SD Boot script loaded from mmc 116 bytes read in 149 ms (0 Bytes/s) ** File not found /boot/dtb/allwinner/allwinner/sun50i-h5-nanopi-neo2.dtb ** libfdt fdt_check_header(): FDT_ERR_BADMAGIC No FDT memory address configured. Please configure the FDT address via "fdt addr <address>" command. Aborting! 4179 bytes read in 362 ms (10.7 KiB/s) Applying kernel provided DT fixup script (sun50i-h5-fixup.scr) ## Executing script at 44000000 5001834 bytes read in 452 ms (10.6 MiB/s) 12285960 bytes read in 868 ms (13.5 MiB/s) ## Loading init Ramdisk from Legacy Image at 4fe00000 ... Image Name: uInitrd Image Type: AArch64 Linux RAMDisk Image (gzip compressed) Data Size: 5001770 Bytes = 4.8 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ERROR: Did not find a cmdline Flattened Device Tree Could not find a valid device tree SCRIPT FAILED: continuing... starting USB... No controllers found USB is stopped. Please issue 'usb start' first. starting USB... No controllers found No ethernet found. missing environment variable: pxeuuid missing environment variable: bootfile Retrieving file: pxelinux.cfg/00000000 No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/0000000 No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/000000 No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/00000 No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/0000 No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/000 No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/00 No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/0 No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/default-arm-sunxi No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/default-arm No ethernet found. missing environment variable: bootfile Retrieving file: pxelinux.cfg/default No ethernet found. Config file not found starting USB... No controllers found No ethernet found. No ethernet found. => => ls ls - list files in a directory (default /) Usage: ls <interface> [<dev[:part]> [directory]] - List files in directory 'directory' of partition 'part' on device type 'interface' instance 'dev'. => su Unknown command 'su' - try 'help' => help ? - alias for 'help' base - print or set address offset bdinfo - print Board Info structure boot - boot default, i.e., run 'bootcmd' bootd - boot default, i.e., run 'bootcmd' bootefi - Boots an EFI payload from memory bootelf - Boot from an ELF image in memory booti - boot arm64 Linux Image image from memory bootm - boot application image from memory bootp - boot image via network using BOOTP/TFTP protocol bootvx - Boot vxWorks from an ELF image cmp - memory compare coninfo - print console devices and information cp - memory copy crc32 - checksum calculation dhcp - boot image via network using DHCP/TFTP protocol dm - Driver model low level access echo - echo args to console editenv - edit environment variable env - environment handling commands exit - exit script ext2load- load binary file from a Ext2 filesystem ext2ls - list files in a directory (default /) ext4load- load binary file from a Ext4 filesystem ext4ls - list files in a directory (default /) ext4size- determine a file's size false - do nothing, unsuccessfully fatinfo - print information about filesystem fatload - load binary file from a dos filesystem fatls - list files in a directory (default /) fatsize - determine a file's size fatwrite- write file into a dos filesystem fdt - flattened device tree utility commands fstype - Look up a filesystem type go - start application at address 'addr' gpio - query and control gpio pins help - print command description/usage iminfo - print header information for application image imxtract- extract a part of a multi-image itest - return true/false on integer compare lcdputs - print string on video framebuffer load - load binary file from a filesystem loadb - load binary file over serial line (kermit mode) loads - load S-Record file over serial line loadx - load binary file over serial line (xmodem mode) loady - load binary file over serial line (ymodem mode) loop - infinite loop on address range ls - list files in a directory (default /) md - memory display mdio - MDIO utility commands mii - MII utility commands mm - memory modify (auto-incrementing address) mmc - MMC sub system mmcinfo - display MMC info mw - memory write (fill) nfs - boot image via network using NFS protocol nm - memory modify (constant address) part - disk partition related commands ping - send ICMP ECHO_REQUEST to network host printenv- print environment variables pxe - commands to get and boot from pxe files reset - Perform RESET of the CPU run - run commands in an environment variable save - save file to a filesystem saveenv - save environment variables to persistent storage setcurs - set cursor position within screen setenv - set environment variables setexpr - set environment variable as the result of eval expression showvar - print local hushshell variables size - determine a file's size sleep - delay execution for some time source - run script from memory sysboot - command to get and boot from syslinux files test - minimal test like /bin/sh tftpboot- boot image via network using TFTP protocol true - do nothing, successfully usb - USB sub-system usbboot - boot from USB device version - print monitor, compiler and linker version
  12. It would be nice for the armbian downloads to have GPG signed SHA256SUMS like Ubuntu. Would it be hard to implement? Because currently the images are distributed in 7z files with a checksum file, nothing currently prevents both from being changed. My bad, I found the guide: https://docs.armbian.com/User-Guide_Getting-Started/
  13. I think Xunlong should be able to make a Orange Pi Zero with 512MB RAM and Gigabit ethernet for around $10. If they did, would you buy it? Do you think it would be a good product? The H2/H3/H5 is capable of gigabit ethernet, they just need an external ethernet chip that costs about $1. If you think about it. To go from an Orange Pi PC which has 1GB RAM @ $15, to an Orange Pi 2E with 2GB RAM $35, thats more than double the cost to double the RAM. But if you go from an Orange Pi Zero with 100Mbit ethernet at $9 to 1000Mbit ethernet at $10, that's only a 0.1X increase in cost for a 10X increase in performance. That means you get about 10.5x more value for money (performance) by upgrading the ethernet vs upgrading the RAM. For many years Raspberry Pi (and alternatives) fans have wanted a low cost SBC with good IO capabilities. RaspberryPi has never delivered. Now Xunlong have come and provided us the Orange Pi 2E (thanks to Tkaiser's suggestion), it's got gigabit ethernet, lots of RAM and 4 real USB ports. It's great. But now if you want a cheap SBC with powerful IO, currently the only option is FriendlyArm NanoPi Neo2. But that board costs much more than necessary at $15 (if you just want IO) because it uses the H5 chip. One application is a router. Routers need a lot of IO, but not that much RAM usually. But it depends. Some routers deal with massive IPsets and do deep packet inspection VPN, VoIP and all kinds of stuff. So let's see who else thinks a Orange Pi Zero with 512MB RAM and Gigabit ethernet would be a good idea? Also another suggestion is I've seen comments that the H2 supports about 130 GPIO's. But there are only a few of them exposed on the 40 PIN RbPi style GPIO header. The new Orange Pi Zero can expose all the GPIO without much extra size as 0.1" spaced holes on the PCB, without increasing the cost much. That's another very cheap way to increase the IO capabilities and make this product really competitive with other options for people who need IO. To keep everyone happy, if the additional GPIO are placed at the end of the PCB, the few modders who care about a few mm of space and want a really tiny PCB can just cut the end off (at their own risk) Edit: I edited the questions so my answers got a bit messed up, but I won't edit the questions again.
  14. Orange Pi 2G-IOT

    I originally got a bit excited when I saw this board because I've been wanting to do an IOT project for a while. But the lack of a working linux image and working 2G Modem environment keeps me away from working with it. I'm a software developer but I've not delved into Linux yet. Also the sound of burning through microSD cards because there's no FEL or whatever is very offputting also. It means making small changes requires manual time wasting of swapping cards. On that note I once saw someone made a microSD emulator for RbPi development. But they never became popular. There are microSD extension cables, and it should be possible to hack one up between a embedded board and a USB microSD card reader with some digital switches or relays inbetween. @tkaiser thanks for sharing regarding the 2G shutdown. That's scary. I had no idea. I guess 2G will still be an option in developing countries for a while.
  15. Quick review of Orange Pi One

    My Orange Pi one arrived yesterday. I'd like to mention that I was planning to solder wires to the additional USB D+/D- pins, but they're a lot smaller in real life than I thought they were by looking at the picture. It looks like a very sharp soldering iron tip would be best. They're also a bit hard to access because they're right next to the H3 and near some other taller components. It's a pity Xunlong made the pads so small and close together. It's probably doable, but it will be tricky.