Jump to content

NanoPI NEO / AIR


Recommended Posts

I was doing fine trying an install using a variant of the instructions from here:

http://forum.armbian.com/index.php/topic/1580-nanopi-neo-air/page-9#entry17707

 

  • Started the flasher, connected the Pi to USB, detected!
  • Downloaded and uncompressed Armbian_5.24.161101_Nanopiair_Ubuntu_xenial_4.9.0.img.
  • I confirmed the sdcard showed up on my Mac as /dev/disk2 in Disk Utility.
  • I proceeded to write the image to that drive with sudo dd bs=1M if=Armbian_5.24.161101_Nanopiair_Ubuntu_xenial_4.9.0.img of=/dev/disk2
  • Write completed successfully, and since I have ExtFS installed on my Mac it mounted the filesystem successfully and I could see it.
  • Unplug the Neo from USB, plug it back in, and wait....
  • Nothing.

No new /dev/cu.* or /dev/tty.* devices show up. The sunxi-armbian-flasher-osx also does not detect the device any longer. The Mac does not see it show up as a disk in any way. 

 

Thoughts or input would be helpful, thank you.

Link to comment
Share on other sites

Answering my own question...

  • git clone https://github.com/zador-blood-stained/fel-mass-storage
  • Write fel-sdboot.img to an sdcard
  • Power on the NanoPi Neo, boom FEL mode is back.
  • Run 'start.sh' from that repo to enable the ability to see the emmc partition on the Mac.
  • sudo dd bs=1M if=Armbian_5.24.161101_Nanopiair_Ubuntu_xenial_3.4.113.img of=/dev/disk2
  • unmount/reboot

Reverting back to the 3.x kernel worked. After reboot it was just a matter of using screen to connect to the device. Nice!

Link to comment
Share on other sites

I was doing fine trying an install using a variant of the instructions from here:

http://forum.armbian.com/index.php/topic/1580-nanopi-neo-air/page-9#entry17707

[...]

  • I proceeded to write the image to that drive with sudo dd bs=1M if=Armbian_5.24.161101_Nanopiair_Ubuntu_xenial_4.9.0.img of=/dev/disk2
  • Write completed successfully, and since I have ExtFS installed on my Mac it mounted the filesystem successfully and I could see it.

 

Nope, dd is the wrong tool. Better use Etcher the next time since there the mandatory verify will show you what went wrong (after approx 40% the device leaves FEL mode for whatever reasons). I updated instructions above and on the Github page. And we can only hope that FriendlyARM stops writing useless OS images to eMMC and leaves it without a SPL signature since then direct flashing would work.

Link to comment
Share on other sites

Hi, I'm using win10 and trying to get my nanopi air to run without soldering.

i use etcher for writing image to SD card.

 

i followed the instruction from https://github.com/zador-blood-stained/fel-mass-storage

i successfully run the start script,

and i can see in Zadig that the device appear as

"Allwinner device MMC 2 (eMMC)" (when i plugin the fel-sdboot)

or

"Allwinner device MMC 0 (SD)" (when i didn't plugin the SD card)

 

but there's no drive shows up in window for either case, and no drive to be select in Etcher for both cases.

 

any pointer on what i should do ?

 

 

by the way, just a sharing, some USB cables just doesn't work,

I fail to get the device to show up even in Zadig using an older cable. 

I changed the cable out of frustration after whole day failed attempt and suddenly it worked !

Link to comment
Share on other sites

Not sure if anyone else is finding the same issue but I'm not seeing the wireless interface come up on boot. I have a saved NetworkManager profile, the NetworkManager service is starting, but no wifi. If I do an 'nmcli c up NetworkName' it does come up and start the interface.

 

In process of researching it but if someone else has an idea I'm all ears. Thanks!

Link to comment
Share on other sites

Again answering my own question. NetworkManager is a confusing animal. My connection name is 'Home'.

 

When opening /etc/NetworkManager/system-connections/Home, I see the following (abbreviated) section:

[connection]

autoconnect=yes

 

Cool, seems like autoconnect is turned on, right? How about if we look at nmcli directly now:

 

# nmcli c show Home

connection.autoconnect    no

 

Wait, whaaat? Okaaaaay.... so let's fix that using nmcli.

 

 

# nmcli c modify Home connection.autoconnect yes

 

And now it shows it properly, and the interface is automatically started on boot.

 

# nmcli c show Home

connection.autoconnect    yes

 
*shrug*
Link to comment
Share on other sites

In my experience to date, the wifi power setting is quite important.

 

"Stock" armbian defaults to "Power managementmode: All packets received" when doing an iwconfig wlan0. Here's a ping on my local LAN:

 

--- 192.168.1.100 ping statistics ---

112 packets transmitted, 109 packets received, 2.7% packet loss

 

round-trip min/avg/max/stddev = 1.874/223.454/1289.673/234.571 ms

 

Now run iwconfig wlan0 power off and retry the ping.

 

--- 192.168.1.100 ping statistics ---

112 packets transmitted, 112 packets received, 0.0% packet loss

 

round-trip min/avg/max/stddev = 1.796/3.639/35.839/4.276 ms

 

That's a tremendous difference. My $0.02 - power management should be disabled by default on the wireless interface. It's borderline unusable otherwise.

 

I *thought* running "/usr/bin/h3consumption -w off" would flip off power management upon boot. In reality it does flip it off (when I add debug statements to the /etc/NetworkManager/dispatcher.d/99disable-power-management script, I see that it is turned off.) But something kicks in down the line and turns it back on such that after booting power management is enabled again. I'll troubleshoot and open an issue.

Link to comment
Share on other sites

How can I get the kernel source for "Linux nanopiair 3.4.112-sun8i #10 SMP PREEMPT Sun Oct 23 16:06:55 CEST 2016 armv7l armv7l armv7l GNU/Linux" ?  thanks a lot.

 

build@nanopiair:~/kernel $ apt-get source linux-image-sun8i
 
Reading package lists... Done
E: You must put some 'source' URIs in your sources.list
Link to comment
Share on other sites

One small note that may help others - after reading up a bit on the wifi chip in the NanoPi Neo Air, it is the same Ampak AP6212 that is present in the Raspberry Pi 3. This was helpful as it answered a lot of questions on capabilities, such as an ability to support simultaneous wireless client and AP functionality.

 

Assuming the following can be ported, it would also likely support monitor mode with frame injection. 

https://github.com/seemoo-lab/bcm-rpi3

 

Another post worth reviewing related to AP-mode operation:

http://tech.scargill.net/size-matters-neo-air/#comment-27039

Link to comment
Share on other sites

I am currently giving a try at Armbian_5.24.161107_Nanopiair_Ubuntu_xenial_3.4.113.img

Bluetooth start and find its controller out of the box. But the default address in /etc/default/ap6212 is always a bad choice : the 43:29:B1 prefix is incompatible with Ethernet emulation because 43 is an odd number. (42 will do)

From : http://bradhedlund.com/2007/11/21/identifying-ethernet-multicast/

"The IEEE has specified that the most significant bit of the most significant byte be used for this purpose. If its a 1, that means multicast, 0 means unicast. The most significant byte is the left most byte in the address, and the most significant bit is the right most bit of the byte (this is counter intuitive to most binary implementations where the left most bit usually labeled most significant)."

So if you don't change the address, the bnep module is unusable because it will try to create Ethernet emulation interfaces on bluetooth and assign them the bt address which is an illegal Ethernet address and then the interfaces cannot be brought up.

BTW, the serial is always at 115K in script.bin

Link to comment
Share on other sites

Hi friends,

i have a neo v1.0 . i changed fex file to use onewire ds18b20 sensor. but that only work with port A pins ! for example i couldn't correct result for pin G11 . it was set (wrote in the kernel message  set to GPIO-x )but when i take a request to read temp , it's return conversion error in kernel message and come all zero data from sensor. this way only work with port a ! what is wrong in my job ? or is a kernel's bug  ? 

 

my second question is , i read , in new kernel  to define w1 pin should like as below :

 

[gpio_para]
gpio_used = 1
gpio_num = 3
gpio_pin_1 = port:PL10<1><default><default><1>
gpio_pin_2 = port:PA10<1><default><default><0>
gpio_pin_3 = port:PG11<0><default><default><0>        <------- w1 pin

 

[w1_para]
w1_used = 1
w1_pin = 3

 

but that's not work and only this method work :

 

[w1_para]
w1_used = 1
w1_pin = 3               <= (alphabet - 1) * 31 + pin no.  = A3 = (0-1)*31+3 = 3

 

thanks,

adrian

Link to comment
Share on other sites

Got a quick question, does the neo show stuff in the serial if the sd card isn't in?

 

mine isn't booting nor showing any logs on boot, and I've tried three sd cards with both armbian and official image?

 

I wasn't able to get the 4.x kernel booted (either Ubuntu or Debian) so make sure you are trying with 3.x. I also have not tried directly booting from sdcard but I have found that the images work very well when written to the internal 8gb storage. Both Ubuntu and Debian.

 

Look earlier in the thread where tkaiser explains how to write the image to the internal storage and give that a try.

https://forum.armbian.com/index.php/topic/1580-nanopi-neo-air/page-9#entry17707

Link to comment
Share on other sites

I wasn't able to get the 4.x kernel booted (either Ubuntu or Debian) so make sure you are trying with 3.x. I also have not tried directly booting from sdcard but I have found that the images work very well when written to the internal 8gb storage. Both Ubuntu and Debian.

 

Look earlier in the thread where tkaiser explains how to write the image to the internal storage and give that a try.

https://forum.armbian.com/index.php/topic/1580-nanopi-neo-air/page-9#entry17707

I got the nanopi Neo not the air.

 

I am trying another sd card to see if it going to work.

 

fifth memory card is the charm.

Link to comment
Share on other sites

Hi,

 

on my NanoPi NEO with Armbian_5.20_Nanopineo_Debian_jessie_3.4.112.img I would like to enable USB1 and USB2. Following the guide https://docs.armbian.com/Hardware_Allwinner/ I have the fex file ready for edit. But I'm not sure what values I have to enter into [usbc1], [usbc2] section.

 

 

[usbc0]
usb_used = 1
usb_port_type = 2
usb_detect_type = 0
usb_id_gpio = port:PG12<0><1>

usb_det_vbus_gpio = port:PG12<0><1>
usb_drv_vbus_gpio = port:PL02<1><0><0>
usb_host_init_state = 1
usb_restrict_gpio =
usb_restric_flag = 0
usb_restric_voltage = 3550000
usb_restric_capacity = 5
usb_regulator_io = "nocare"
usb_regulator_vol = 0
usb_not_suspend = 0

[usbc1]
usb_used = 1
usb_drv_vbus_gpio =
usb_restrict_gpio =
usb_host_init_state = 1
usb_restric_flag = 0
usb_regulator_io = "nocare"
usb_regulator_vol = 0
usb_not_suspend = 0

[usbc2]
usb_used = 1
usb_drv_vbus_gpio =
usb_restrict_gpio =
usb_host_init_state = 1
usb_restric_flag = 0
usb_regulator_io = "nocare"
usb_regulator_vol = 0
usb_not_suspend = 0

[usbc3]
usb_used = 1
usb_drv_vbus_gpio =
usb_restrict_gpio =
usb_host_init_state = 1
usb_restric_flag = 0
usb_regulator_io = "nocare"
usb_regulator_vol = 0
usb_not_suspend = 0

 

 

Maybe you have ready to use values or you can push me in good direction, where to find for example port:PG?? port:PL?? for USB1 and USB2 on NanoPI NEO board.

 

regards, Slawek

Link to comment
Share on other sites

Thanks, seams that my problem is somewhere else.

 

I have my NanoPi NEO used as OctoPrint server for my 3D printer (RUMBA board).

I would like to use the ports USB1/USB2 for connecting the usb web camera and RUMBA board itself, leaving the USB3 for other tasks - for example WiFi dongle.

 

When the RUMBA is connected to USB3 the /dev/ttyACM0 is automatically created, but when RUMBA is connected to USB1 nothing happen. I'm quite sure that I soldered the USB cables properly.

 

Any idea? Maybe some configuration is necessary?

 

BTW NanoPi NEO works perfectly as OctoPrint server - and is really small.

Link to comment
Share on other sites

I'm really sorry, I'm an idiot !

 

Seems that there are two "standards" for USB data cable colours: Green ->D+ White->D- and opposite. After quick "multimeter" investigation I realised that I have cable with other version that I assumed.

 

Every three USB's are working perfectly.

 

Sorry again for wasting your time.

Link to comment
Share on other sites

Hi hi hi, the answer is simple. Just because I have few NanoPi NEO flying on my desk, I used them for other project - this with X11 Forwarding and Lazarus if you remember.

And of course NanoPi NEO has no CSI socket. BTW I'm using the 256Kb version for OctoPrint, and is doing his job without any problems ;-) I haven't tested direct slicing on NanoPi with Cura, but personally I prefer doing this job on PC and just transfer GCode to OctoPrint.

Link to comment
Share on other sites

Thank you. Armbian (kernel 4.7 or 4.8) works well on my NanoPi NEO.

Now just for fun, I want to try to build kernel + busybox + some network and audio applications. But I have a problem with cpufreq. The /sys/devices/system/cpu/cpu0/cpufreq is empty. If I load cpufreq_dt module, the system crashes. If I disable cpufreq scaling power management in kernel config, what will be the cpu frequency ? minimal or maximal ?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines