I have Huawei E171. Need to make 3G connection. First, modem attached to cdrom, and work not in modem mode.
Install usb_modeswitch, modem switch to modem mode, but if use dmesg | tail, device still attached to sr0 not for ttyUSB* device.
[ 3190.516957] scsi 7:0:0:0: CD-ROM HUAWEI Mass Storage 2.31 PQ: 0 ANSI: 2
[ 3190.517006] scsi 8:0:0:0: Direct-Access HUAWEI SD Storage 2.31 PQ: 0 ANSI: 2
[ 3190.519149] sd 8:0:0:0: Attached scsi generic sg0 type 0
[ 3190.523939] sd 8:0:0:0: [sda] Attached SCSI removable disk
[ 3190.524341] sr0: scsi-1 drive
[ 3190.526837] sr 7:0:0:0: Attached scsi CD-ROM sr0
[ 3190.527857] sr 7:0:0:0: Attached scsi generic sg1 type 5
And second question is how to connect to internet? try use wvdial program to make connection, but hadn't problem with install on my yocto linux.
Need help for this question's
I have never tried to use a 3G USB modem on an Edison, and I can't find any information about the Huawei E171 on the web. So, I decided to look for a more "generic" approach and I found some guides that are not specific for Edison but may be able to help you, unfortunately I don't have access to a 3G USB modem, so, I wasn't able to test them:
http://www.thegeekstuff.com/2014/02/usb-broadband-modem-linux/ http://www.thegeekstuff.com/2014/02/usb-broadband-modem-linux/ (Second option)
Try them and let us know if they were of help.
Hello Peter. Thank's for help. I've used this material yet, but there is some problem with install. for example
sudo apt-get install ppp wvdial
sudo aptitude install usb-modeswitch
in yocto linux there isn't apt-get command, but i've installed usb-modeswitch manually, and switch modem device to modem mode, But there isn't any new ttyUSB* devices.
Second problem is how to install wvdial, like here http://www.linuxfromscratch.org/blfs/view/5.1/connect/wvdial.html WvDial-1.53 , it need some libwvstreams. I also didn't find any material's for use usb 3g modem on Edison, and use generic search. Main difference is that example's on google use ubuntu.
As you mentioned, Yocto does not have the apt-get command, so you will have to install them from source, as you also mentioned. In cases like with WvDial, where some of its dependencies are hard to find, the best way to install them is by building them on the image using the BSP (http://www.intel.com/content/www/us/en/support/boards-and-kits/000005616.html http://www.intel.com/content/www/us/en/support/boards-and-kits/000005616.html), you could also try to install the dependencies manually but sometimes this is more complex than building the image.
Also, the reason why your Edison is not detecting the 3G modem may be because it is incompatible with Edison's kernel. Do you know which kernels this device supports?
ok.. i'll try to use your information and answer to you tomorrow. thank's for help. I've used for the first yocto intel linux.. and have problem's with detection usb com port, after i found on this forum some solution.. people use Blue linux version
I've used some variants to install apt-get. For example here http://apst.stsci.edu/apt/external/downloads/installers/install.html Space Telescope Astronomer's Proposal Tool - Download Page. When use
root@edison:~# sh install-linux32-apt.sh
Verifying archive integrity... All good.
Uncompressing APT Linux Installer...
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
at com.izforge.izpack.installer.GUIInstaller.loadGUI(Unknown Source)
at com.izforge.izpack.installer.GUIInstaller.access$100(Unknown Source)
at com.izforge.izpack.installer.GUIInstaller$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDo main.java:75)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThre ad.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread. java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre ad.java:105)
Next variant was download from this source http://linux.softpedia.com/dyn-postdownload.php/9b3567752f6c47c45aa26fce3a65e006/5723668f/11f6/0/3?t... Download APT 1.2.11 for Linux. Run next command
APT needs 'config.guess' and 'config.sub' in buildlib/ for configuration.
On Debian systems these are available in the 'autotools-dev' package.
The latest versions can be acquired from the upstream git repository:
buildlib/configure.mak:43: recipe for target 'missing-config-files' failed
make: *** [missing-config-files] Error 100
For now main question is next. I've decide to install ubilinux http://www.emutexlabs.com/ubilinux/29-ubilinux/218-ubilinux-installation-instructions-for-intel-edis... EmutexLabs
And almost all is success, except of configuration of wifi.
In this image present apt-get, and it's easy to try this link for configure 3g usb modem https://www.thefanclub.co.za/how-to/how-setup-usb-3g-modem-raspberry-pi-using-usbmodeswitch-and-wvdi... https://www.thefanclub.co.za/how-to/how-setup-usb-3g-modem-raspberry-pi-using-usbmodeswitch-and-wvdi...
usb_modeswitch and wvdial program's have installed.
Usb modem detect on system like ttyUSB0 device and work in modem mode.
Why on ubilinux modem and all devices work properly and on intel yocto not?
If use BSP, how i could create image with all needed dependency?
Maybe the reason why it is so different is because the Yocto version is missing the packages, if you manage to install everything on it, it should be able to work just like on Ubilinux. To learn how to build images and add packages to Edison I'd suggest you to read the BSP's user guide (http://www.intel.com/support/edison/sb/CS-035278.htm http://www.intel.com/support/edison/sb/CS-035278.htm) and if you still need help after doing so, you can read Yocto's Mega Manual (http://www.yoctoproject.org/docs/1.7.2/mega-manual/mega-manual.html# supported-linux-distributions http://www.yoctoproject.org/docs/1.7.2/mega-manual/mega-manual.html# supported-linux-distributions)
Also, if you decide to continue using Ubilinux, I'd suggest you to post your questions in http://www.emutexlabs.com/forum/ubilinux http://www.emutexlabs.com/forum/ubilinux in order to get a more accurate answer.
Here is a complete detailed guide how to make 3G/LTE/Dongles work on Intel Edison Yocto: http://bovs.org/post/168/Building-Yocto-linux-for-Intel-Edison-with-3G-USB-modems-support http://bovs.org/post/168/Building-Yocto-linux-for-Intel-Edison-with-3G-USB-modems-support
Only way to use 3G/4G dongle in Edison Yocto for now is build your own Yocto image using http://download.intel.com/support/edison/sb/edisonbsp_ug_331188005.pdf http://download.intel.com/support/edison/sb/edisonbsp_ug_331188005.pdf
because at least you need to enable usb-to-serial modem drivers in kernel which are not enabled by default. For example It can be driver named option - in menuconfig "Device Drivers - > USB Support -> USB Serial converter support -> USB Driver for GSM and CDMA modems " or maybe even generic usb serial driver. Also you need to enable PPP drivers for serial port ("Device Drivers - > Network Device Support -> PPP (...) Support -> PPP support for sync serial ports, PPP support for async serial ports. ") Also in same time when building image you can include usb_modeswitch package:
IMAGE_INSTALL_append += " usb-modeswitch"
For my ZTE dongle it switched cd-rom to modem (changed PID in lsusb, and appended devices in /dev/ttyUSB0-5) after including in image without any additional actions e.g. creating udev rules etc. Also note that only one of ttyUSBx supported data-connect and only 3 supported execution of AT commands so if you will go the same way please try all tty ports if it will not work from first time)
Maybe you can also add WvDial to distro, but I don't know about it because I used pure pppd for dialing directly without any additional layers like WvDial. I can approve that with all mentioned manipulations it works and it was not so hard using this forum and some manuals but of course longer than with any other board like Raspberry PI or Cubieboard. PS I don't know why not Intel included modem drivers in stock releases if Intel Edison is positioned as "IOT module", it is very strange and also why there is no repository with all .ipk packages and every user need to rebuild all image where each attempt takes several hours.
You will have to either add them on a custom image as I mentioned above or build them from source. You could also only use the BSP to just compile the packages and create their .ipk. Or you could check if the packages are already on a repo.
have next problem. I have done all steps describe into BSP manual, on Ubuntu 16 and then run command
WARNING: Host distribution "Ubuntu-16.04" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution.
ERROR: OE-core's config sanity checker detected a potential misconfiguration.
Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
Following is the list of potential problems / advisories:
Please install the following missing utilities: makeinfo,chrpath
ERROR: Execution of event handler 'check_sanity_eventhandler' failed
ERROR: Command execution failed: Exited with 1
Summary: There was 1 WARNING message shown.
Summary: There were 3 ERROR messages shown, returning a non-zero exit code.
What is the problem or maybe i've used not correct version of ubuntu?
i've solved problem's describe upper. but during build image have next problem
ERROR: Task 2818 (virtual:native:/home/ubuntu/Downloads/edison-src/poky/meta/recipes-support/gmp/gmp_5.1.1.bb, do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 112 tasks of which 0 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:
Summary: 1 task failed:
what is mean?
You are right, as you can see in section 1.3.1 of Yocto's Mega Manual (http://www.yoctoproject.org/docs/1.7.2/mega-manual/mega-manual.html# detailed-supported-distros http://www.yoctoproject.org/docs/1.7.2/mega-manual/mega-manual.html# detailed-supported-distros), Ubuntu 16 is not supported and may cause issues.
What did you do to solve the previous error? And, what did you do this last time?
to customize Linux Kernel use bitbake virtual/kernel -c menuconfig before or after build an image? And how correctly run this command to get menuconfig window?
and during build image everything is ok until appear this and failed
ERROR: Fetcher failure: Fetch command failed with exit code 128, output:
Cloning into bare repository '/home/aubuntu/Downloads/edison-src/bitbake_download_dir/git2/git.eclipse.org.gitroot.paho.org.eclipse.paho.mqtt.c.git'...
ERROR: Function failed: Fetcher failure for URL: 'git://git.eclipse.org/gitroot/paho/org.eclipse.paho.mqtt.c.git;protocol=http'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: /home/aubuntu/Downloads/edison-src/build/tmp/work/core2-32-poky-linux/paho-mqtt/3.1-r1/temp/log.do_fetch.28168
ERROR: Task 989 (/home/aubuntu/Downloads/edison-src/poky/meta-intel-iot-middleware/recipes-connectivity/paho-mqtt/paho-mqtt_3.1.bb, do_fetch) failed with exit code '1'
NOTE: Tasks Summary: Attempted 1550 tasks of which 15 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:
Summary: 1 task failed:
Summary: There were 23 WARNING messages shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
How to pass or exclude this link?
bitbake virtual/kernel -c menuconfig should be executed before building image (before bitbake edison-image).
bitbake virtual/kernel -c menuconfig itself should display blue menuconfig window after some execution time. After making configuration it will suggest to save to some file e.g. .config, in my case it was not that configuration file which was used when compiling kernel, so to apply changes we need make backup of original config:
mv ../device-software/meta-edison/recipes-kernel/linux/files/defconfig ../device-software/meta-edison/recipes-kernel/linux/files/defconfig_back
and copy saved one .config to it place:
cp ../build/tmp/work/edison-poky-linux/linux-yocto/3.10.17+gitAUTOINC+6ad20f049a_c03195ed6e-r0/linux-edison-standard-build/.config ../device-software/meta-edison/recipes-kernel/linux/files/defconfig
file/folder structure may differ in newer versions of sources so I suggest always to use find to understand filesystem:
find -name defconfig ./
About *.ipk files - I agree that manual section about writing recipes is very poor, and writing recipe for very simple build commands not looks like trivial thing - I also asked on this forum about that , but Intel sends me to read the yocto documentation, but I still need some example and it would be great if it will be in BSP manual.
BTW what ipk do you need?
Thing is there are meta-openembedded packages and manual describes in details how to use it (https://github.com/openembedded/meta-openembedded.git https://github.com/openembedded/meta-openembedded.git). This repo has a lot of recipes ready to use including usb_modeswitch and seems like WvDial also are there. You could use find to find if your programs in meta-openembedded, e.g.:
$ cd /home/user/edibuild/edison-src/device-software/meta-openembedded/
$ find -name vim*
$ find -name openvpn*