- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi,
I'm using the web server I posted some time ago using port 8080 instead of 80 (attached).
The server works as expected when uploaded from Arduino IDE, but it is not working at all when rebooting Intel Galileo (with the same SD card, of course). More specifically, it seems to be that the fixed IP set by the sketch is not working, because the standard HTTP server (replying at port 80) in the same eglibc based image is also not responding when the Galileo is rebooted. I'm using Gaileo, not Galileo Gen2.
Do you know any way of solving beyond using the uclibc based yocto image?
TIA,
Fernando.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi,
Is the sketch running after you reboot? There's a guide that works to make the eglibc image have the permanent sketch feature enabled. Look at https://software.intel.com/en-us/get-started-galileo-linux-step1 https://software.intel.com/en-us/get-started-galileo-linux-step1 . I noticed in your code that you're assigning the IP address through the system command. Are you sure the interface is enabled? Before rebooting, when the sketch is working properly use cat /sys/class/net/ enp0s20f6/operstate to check the status of the interface and check its status again after rebooting.
Sergio
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi Sergio,
Is the sketch running after you reboot?
I'm sure the sketch is not working as should be, at least, I don't know if the process sketch.elf is actually running, I didn't check because I expected it to work as in the case it is loaded from the IDE. I'll take a look and post what I find.
There's a guide that works to make the eglibc image have the permanent sketch feature enabled. Look at https://software.intel.com/en-us/get-started-galileo-linux-step1 https://software.intel.com/en-us/get-started-galileo-linux-step1 .
Interesting/funny... the yocto image is expected to be used for sketch persistency... I wonder why that behavior would not enabled by default... or I'm missing something... anyhow, I created the SD card following those steps (those are the only ones I know) for Windows (https://software.intel.com/en-us/get-started-galileo-windows-step1 IoT - Step 1: Make a bootable micro SD card | Intel® Software ), since I'm developing under Windows. There is nothing specific in those guides "to make the eglibc image have the permanent sketch feature enabled"... Looking for "sketch" and "persist" in that page, the only paragraph containing those words is
In addition, sketches that you upload to the Intel® Galileo board are erased when the board is powered down. To be able to resume the sketch even after powering down your board, you must boot from a micro SD card.
so I think there is nothing to do... or again I'm missing something...
I noticed in your code that you're assigning the IP address through the system command. Are you sure the interface is enabled? Before rebooting, when the sketch is working properly use cat /sys/class/net/ enp0s20f6/operstate to check the status of the interface and check its status again after rebooting.
Again this is unexpected... The interface is enabled and working as expected when I load the sketch as well as the complete system is working as expected, actually, I wonder why the interface would be disabled after reboot... nothing is programmed to do so... Anyhow (again) I'll check pre- and post- booting (after loading the sketch, of course).
Thank you again,
Fernando.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi again,
I attach the sequence of screenshots where it can be seen that the sketch is not loaded after power off - power on.
Fernando.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Thank you for attaching the document. Yes, it seems like the Galileo loses the IP each time it reboots. It seems as if it's getting a DHCP address and ignoring the sketch system command. Can you try to set the IP address of the sketch as a static IP?
To configure the static IP, first use connmanctl to enter connmanctl mode. Now, find out the name assigned to your ethernet cable with services and copy the output received.
Now, assign the static IP with
config --ipv4 manual .
When assigning an IP address, make sure to use an address that doesn't conflict with the addresses leased by the DHCP server.
Let us know your results.
Sergio
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi Sergio,
Yes, it seems like the Galileo loses the IP each time it reboots. It seems as if it's getting a DHCP address and ignoring the sketch system command.
I think the worst problem is that the sketch is not running at all... I'll try your suggestion and report back.
Fernando.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi,
This is becoming disappointing... the sketch now works but I don't know why!
It seems to be that the whole system is unstable... I'm pretty sure the problem will suddenly reappear as it has "disappeared"...
I attach the sequence as well as some further experiments.
Fernando.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Thank you for providing the steps you've followed. The first scenario you describe is indeed unusual. Just typing connmanctl without any arguments or any additional commands in the connmactl prompt shouldn't change anything.
As for the reset/reboot differences, it looks like clloader isn't recognizing the reset because the board fails to load the sketck.elf. In the reboot, on the other hand works properly. I looked in the /opt/cln/galileo/launcher.sh file to see if there was some information. Take a look at the galileo-target.service and see if it behaves differently using reset and reboot.
Sergio
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Intel Corporation wrote:
Thank you for providing the steps you've followed. The first scenario you describe is indeed unusual. Just typing connmanctl without any arguments or any additional commands in the connmactl prompt shouldn't change anything.
As for the reset/reboot differences, it looks like clloader isn't recognizing the reset because the board fails to load the sketck.elf. In the reboot, on the other hand works properly. I looked in the /opt/cln/galileo/launcher.sh file to see if there was some information. Take a look at the galileo-target.service and see if it behaves differently using reset and reboot.
Did you find any thing at the /opt/cln/galileo/launcher.sh file that may be useful here?
What do I have to look at the the galileo-target.service and how?
TIA,
Fernando.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
We'll run some tests and post our results soon.
Sergio
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi Fernando,
Thank you for your patience. The issue has been resolved in 3.5 release, it has been validated and is working. Try using the latest release found in https://software.intel.com/en-us/iot/hardware/galileo/downloads https://software.intel.com/en-us/iot/hardware/galileo/downloads (iot-devkit-prof-dev-image-edison-20160606).
-Sergio
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Thank you very much, I'll try to experiment as soon as possible.
Hmmm...
is iot-devkit-prof-dev-image-edison-20160606 useful for Galileo (edison is in the name...)?
Fernando.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
I apologize, the correct name is iot-devkit-prof-dev-image-galileo-20160606 and can be downloaded directly from https://software.intel.com/galileo-image/latest https://software.intel.com/galileo-image/latest .
-Sergio
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Intel Corporation wrote:
I apologize, the correct name is iot-devkit-prof-dev-image-galileo-20160606 and can be downloaded directly from https://software.intel.com/galileo-image/latest https://software.intel.com/galileo-image/latest .
-Sergio
Yes, I downloaded the file
iot-devkit-prof-dev-image-galileo-20160606.zip
and the image itself is
iot-devkit-prof-dev-image-galileo-20160606.direct
The rest of the procedure is as described in the corresponding web page.
And it works, at least for this simple example. Thanks for fixing the bug.
Fernando.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page