Cool stuff for Raspberry Pi, Arduino and all electronics hobby projects
Notifications
Clear all

[Solved / Archived] 2 out of 3 Vivid unit has the same MAC address

3 Posts
2 Users
0 Likes
122 Views
(@gfolin)
Posts: 2
New Member
Topic starter
 

I have 3 vivid unit. When I boot them up, 2 of them has the same MAC address, and the third has another one. Do anyone know why this could've happen.

 
Posted : 12/05/2025 3:20 pm
(@admin)
Posts: 612
Member Admin
 

After flashing the system, the Linux kernel will generate the MAC address during the first boot. It seems the kernel may give the same MAC for different devices.

It is possible to write the new MAC address into RK Vendor Storage (a special region on the eMMC).

You may create such a BASH script, and run it to generate a MAC address from the eMMC chip serial number, which should be unique:

#!/bin/bash

ROOT_PART_DEV=$(findmnt / -o source -n)
echo "ROOT_PART_DEV=${ROOT_PART_DEV}"

ROOT_PART_NAME=$(echo "$ROOT_PART_DEV"| cut -d "/" -f 3)
echo "ROOT_PART_NAME=${ROOT_PART_NAME}"

ROOT_DEV_NAME=$(echo /sys/block/*/"${ROOT_PART_NAME}" | cut -d "/" -f 4)
echo "ROOT_DEV_NAME=${ROOT_DEV_NAME}"

ROOT_DEV="/dev/${ROOT_DEV_NAME}"
echo "ROOT_DEV=${ROOT_DEV}"

ROOT_PART_NUM=$(cat "/sys/block/${ROOT_DEV_NAME}/${ROOT_PART_NAME}/partition")
echo "ROOT_PART_NUM=${ROOT_PART_NUM}"

MACH="face"
EMMCSERIAL=$(cat /sys/class/block/${ROOT_DEV_NAME}/device/serial)
MACL=${EMMCSERIAL#0x}
MAC=${MACH}${MACL}
echo "MAC=${MAC}"

sudo /usr/bin/vendor_storage -w VENDOR_LAN_MAC_ID -t string -i $MAC

You will need to reboot your device to see the new MAC address.

 
Posted : 13/05/2025 8:13 am
(@gfolin)
Posts: 2
New Member
Topic starter
 

Thank you so much! Worked perfectly.

 
Posted : 13/05/2025 1:12 pm
Join Waitlist We will inform you when the product arrives in stock. Please leave your valid email address below.