Hello
I ve got 3 Riotboard and when I connect the ethernet port tu my network, the three receive the same IP address as their MAC address seems the same
How can I change some setting to force different IP address for each board
Xavier
Hello
I ve got 3 Riotboard and when I connect the ethernet port tu my network, the three receive the same IP address as their MAC address seems the same
How can I change some setting to force different IP address for each board
Xavier
Android or Linux ?
Essentially, the fuse block in the SoC that would hold the mac address is left un-programmed. This should cause the kernel driver to pick a random mac address on every boot. That does appear to happen on the 3.15-rc* kernels I'm using.
Unfortunately distros try to be smart and force things, or save and restore the settings somewhere. In Debian/Ubuntu you should be able to do something like adding a line similar to
hwaddress ether 01:02:03:04:05:06
into /etc/network/interfaces at the appropriate place. Just pick a different address on each board.
I don't know much about how android might do this, I'm not really an android person, but there should be a way.
Note that simply giving each board a different static IP address won't work as long as they're on the same network, having duplicate mac address will still cause you problems in that scenario.
Hello
Sorry for the confusion
I am using Android distro.
Any body could help me ?
Xavier
Hello
Sorry for the confusion
I am using Android distro.
Any body could help me ?
Xavier
I think I´ve seen something to spoof the Mac within terminal with help of busybox.
Inside the terminal when busybox is installed you can change it with:
ifconfig eth0 hw ether 00:11:22:33:44:55
But you need to have root for this. And I don´t know if or how this is possible at the moment.
As far as I know no one got root working by now. Maybe you have to ask a bit around. Maybe someone got it to work.
I´m using the riotboard with Linux. So I only can share my knowledge with my rooted Android phone.
Yes, I am facing the root problem on RiOtBoard on Android
How to install busybox on RiotBoard
Xavier
Ok, so for the don't-have-a-clue-about-android person here, please explain where you see your mac address in the android gui ?
There's a possible way to set unique address that works elsewhere, but I don't seem to be able to get it to work with android..
Connect a serial console, and stop u-boot at the prompt. Type the following two lines:
setenv ethaddr 00:11:22:33:44:55
saveenv
then power cycle.
Essentially this is supposed to cause u-boot to set the mac which is then picked up by the kernel later. This works elsewhere - on Sabre-Lite and a much newer version of u-boot.
I only have android on one of my boards, but it always seems to get a mac of 00:00:00:00:00:00 as seen in the initial u-boot, then when android loads it gets 1E:ED:19:27:1A:B3. Are you all getting that same mac address in android ?
albeit very temporary, here's a way that does work....
Connect a serial console.
After the board boots all the way into android, you'll have root access on the serial console, so type these commands
ip link set down dev eth0
ip link set dev eth0 addr 00:11:22:33:44:55
ip link set up dev eth0
yes you will loose the address on a reboot.
I have the same problem and need to change the MAC-Address of the riotboard.
The procedure described is working, but as you mentioned after reboot the MAC-Address is lost.
Is there no other way to change it permanetly?
Another point is how to deactivate DHCP and set a fiexed IP-Address?
Does anybody could help ?
If you manage to compile Android itself you could do the following to gain root on the shell.
With root you could change the settings as you like.
You have to change the file system/core/rootdir in the Android sources.
There you have to change this
service console /system/bin/sh class core console disabled user shell group log
to this
service console /system/bin/sh class core console disabled user root group root
and then compile it.
But I couldn´t compile it until now. Mainly because the Android sources described in the manual do NEED the Oracle JDK 6 that isn´t officially available anymore on Debian.
Normally you´d use the OpenJDK to compile Android. But that doesn´t work with the sources for Android for the RioTBoard...
I think I have root access on console.
I could change MAC with the following commands:
ip link set down dev eth0
ip link set dev eth0 addr 00:11:22:33:44:55
ip link set up dev eth0
But after reboot the old MAC-Adddress ist active.
I found on the net that I have to change the content of the file "nvram.txt" or something else, but I could not find such a file on my riotboard.
Thanks
If you really have root access you could create a script file with this commands in /system/etc/init.d/
Then it would be executed at boot.
Could you give me the way to be root?
I could not connected with su as root
X
It certainly appears to give you a root shell on the serial console. Usually changing the hwaddr would need either root of something with the correct capability flags.
I know android is different in many ways though, so not being an android person I really don't know if the 'looks like root' shell on the serial console really is or not. That said, a developer board with a locked down version of Android wouldn't appear to make a lot of sense.