[LG V20 ROMs, Kernels, Recoveries, & Other Developm] x86cpu:
1) I'll try... yes I've been building and testing my own lineage build, everything a clean flash/wipe. I'm not sure that would work as it seems to be missing (even on stock) the libbt libraries. (see below)

3) I did, it keeps reverting on boot, even tried stock apns file...

2) .... Lots of investigating and numerous wipes/restores back to stock. Still on stock mainly due to VZW issues. Here's what I found:

From what I found /data/misc/wifi/config should be a FILE, it has in it at the last line the "cur_etheraddr=xx:xx:xx:xx:xx:xx" which is the WIFI mac addr. If the /data/misc/wifi/config is a directory, each boot it gets a new mac...

/init.qcom.rc --- Has some conflicting statements,

*** under the "on post-fs-data"

mkdir /data/misc/wifi/config 0770 wifi wifi

*** on property:init.svc.conn_init=stopped

** It changes the perms to a "file" based one:

chmod 0644 /data/misc/wifi/config

I remove the the mkdir part, which helped stop that random wifi mac at boot.

The WiFi mac can be pulled from the misc partition using: /system/bin/wififtmd, but needs new proprietary-files added:

system/bin/bdaddr_loader ## loads the BT Mac
system/bin/wififtmd ## WiFi mac
system/bin/ble_sniff_scan ## not sure if this is needed
# Libraries needed...
system/lib/bbcmwl.so
system/system/lib/liblgerft.so
system/lib/liblgftmitem.so
system/lib/libatd_corelib.so
system/lib64/bbcmwl.so
system/lib64/liblgerft.so
system/lib64/liblgftmitem.so
system/lib64/libatd_corelib.so

/system/bin/wififtmd -- creates the /data/misc/wifi/config file with the correct hardware wifi MAC in it. However at the inital boot it's incorrect until another reboot, so it should possible set it with some init similar to (I only have it do it this as so as not to change wifi mac on all other lineage users that already have this set, maybe incorrectly. I'm sure that the check I added could be ignore and just forced from the hardware one. It pulls out the mac from the file and sets it on the "wlan0" device.

#!/system/bin/sh

# WIFI
#
# LGE uses config as file to hold mac, remove the dir
if [ -d /data/misc/wifi/config ] ; then
rmdir /data/misc/wifi/config
fi
# File does not exist, run the wififtmd (gets MAC from misc raw block)
if [ ! -f /data/misc/wifi/config ] ; then
/system/bin/wififtmd
fi
# Pull out current MAC from config
cur_etheraddr=`grep cur_etheraddr /data/misc/wifi/config | cut -d'=' -f2`
# find wifi link (should be wlan0)
dev=`getprop wifi.interface`
# set mac addre
ip link set dev ${dev} address ${cur_etheraddr}

# ip link show wlan0

Which I had added to the /init.qcom.rc (which is not firing at the correct time still):

service config_wifi /system/bin/sh /init.lge.wifi.sh
user root
group system wifi radio system
oneshot

I also had the bt one added too:

service config_bt_addr /system/bin/sh /init.lge.bt.sh
class late_start
user root
group bluetooth net_bt_admin
oneshot

The block:

on property:vold.decrypt=trigger_restart_framework
start qcom-c_main-sh
start config_bt_addr
start config_bluetooth

Never has "config_bt_addr" or "config_bluetooth" actually defined anywhere, so thought it safe to use it. It does set the prop "persist.service.bdroid.bdaddr", but lineage seems to ignore that.

If run by hand, logcat show it being set (d0:13:fd is LGE, http://aruljohn.com/mac/D013FD it's not uncommon for BT to be same base as Wifi):

05-09 09:44:41.356 7542 7542 D lge_bdaddr_loader: [BTUI] bdaddr to set in property : D0:13:FD:xx:xx:xx
05-09 09:44:41.363 7542 7542 E lge_bdaddr_loader: [BTUI] bluetooth_load_bdaddress : OK => D0:13:FD:xx:xx:xx
05-10 11:06:59.024 6976 6976 I WIFIFTM : [wififtmd] Call wifi_initialize_config
05-10 11:06:59.024 6976 6976 I LGFTMITEM: [GET_FTM][id=6], offset=24576
05-10 11:06:59.027 6976 6976 E WIFIFTM : Wifi MAC Address = d0:13:fd:xx:xx:xx
05-10 11:06:59.027 6976 6976 E WIFIFTM : wifi_check_config compare "cur_etheraddr=d0:13:fd:xx:xx:xx
05-10 11:06:59.027 6976 6976 E WIFIFTM : ": cur_etheraddr=d0:13:fd:xx:xx:xx
05-10 11:06:59.027 6976 6976 I WIFIFTM : [wififtmd] wifi_check_optinfo enter
05-10 11:06:59.027 6976 6976 I WIFIFTM : [wififtmd] is_otp_written = 1

So far running by hand the wifi works to put the LGE mac in /data/misc/wifi/config file, which then presists at boot. The init.rc adjustments do not seem to have taken...

The BT still gets set is looks like from the file:/system/vendor/firmware/BCM4358A3.hcd, which seems to set the 1st three octects to 4358A3 ( 43:58:a3:00:1f:ac ).

Hopefully this info can help to resolve some of these issues. Will still try with VZW...

---Eric