-
Notifications
You must be signed in to change notification settings - Fork 12
Known Memory Addresses
Get the current transmit power
busybox devmem 0x10C6E3CA 8
# -> (25mW) 0x30, 0xA0, 0xC0, 0xD0, 0XD8, 0xE0 (1200mW)
busybox devmem 0x10E2AF14 8
# -> (false) 0x00, 0x01 (true)
When using AV-IN, if the goggles lose sync in PAL, the ADV CSI output resizes. This disables the Goggles trying to Autodetect the input size.
busybox devmem 0xfffc10fb 8 0x00
You can write to the I2C register of the Analog In ADV7280, there's a 3 byte 0 terminated table at address 0x1020F428, you first need to enumerate over all the current values until you hit a 0x00, you can append values from there
Code Example
memloc_map=270595112 # 0x1020f428
memloc_address=270595116 # 0x1020f42c
memloc_value=270595120 # 0x1020f430
map_main=0x21
map_vpp=0x42
map_csi=0x44
found_end_of_table=0
while [ $found_end_of_table -eq 0 ]; do
if [ $(busybox devmem $memloc_map 8) == "0x00" ]; then
found_end_of_table=1
else
memloc_map=$(($memloc_map + 12))
memloc_address=$(($memloc_address + 12))
memloc_value=$(($memloc_value + 12))
fi
done
function writeToRegister {
map=$1
address=$2
value=$3
busybox devmem $memloc_map 8 $map &&
busybox devmem $memloc_address 8 $address &&
busybox devmem $memloc_value 8 $value
# if the write was successful, and we're not at the end of the table, move the pointers
if [ $map != "0x00" ]; then
memloc_map=$(($memloc_map + 12))
memloc_address=$(($memloc_address + 12))
memloc_value=$(($memloc_value + 12))
fi
}
Once the end of the table has been found you can use the function writeToRegister
to append values to the table
writeToRegister $map_main 0xC0 0x00
More information can be found on the Datasheet. See page 70 onward for values
A complete solution using the above code can be found [here]
Get the unique Pairing ID of your goggles
busybox devmem 0x0B52A004 32
# -> 0x11223344
Get the unique Pairing ID of the connected Airunit
busybox devmem 0x0B52A00C 32
# -> 0x11223344