FAQS AIO-3399PRO-JD4 How does Android9 use the ALC5640 codec on the baseboard? The system uses RK809 codec by default. If you use ALC5640, you need to modify the hardware. I2S1 signal pin is changed to I2S0 (CORE- 3399PRO-JD4 does not lead to I2S1), I2C and I2S_CLK do not move, need to jump off the resistance of R89~R93. The software is modified as follows: **Modified according to the latest code** commit 809d8d77b59996770a05f81abff9ff2553773ff7 Author: Firefly Date: Tue Oct 20 15:41:26 2020 +0800 1.add alc5640 support --- a/kernel/arch/arm64/boot/dts/rockchip/rk3399pro-firefly-aiojd4.dtsi +++ b/kernel/arch/arm64/boot/dts/rockchip/rk3399pro-firefly-aiojd4.dtsi @@ -20,11 +20,11 @@ }; rk809-sound { - status = "okay"; + status = "disabled"; }; rt5640-sound { - status = "disabled"; + status = "okay"; compatible = "simple-audio-card"; simple-audio-card,format = "i2s"; simple-audio-card,name = "rockchip,rt5640-codec"; How to adjust HDMI output resolution? AIO-3399PRO-JD4 HDMI cannot automatically identify display resolution temporary. Use command below to switch 4K resoultion and flash screen: # 4k60: setprop persist.sys.resolution.main 3840x2160@60 # Set sys.display.timeline base on the default num to plus one for updating resolution setprop sys.display.timeline 1 Open Root permissions There are many powerful functions of the Android system that require root permissions. Developers often encounter permissions problems when using them. How to enable the root permissions of the system on the Firefly platform? Firefly has added the function of starting root privileges in the system. The specific steps are as follows: Find About device in Settgins apk and click into it; After clicking on Build number 5 times, it will prompt (you are now a developer); Then return to the previous level and click the option Developer options, and click ROOT access in the options to open the root authority function. What should I do if the boot is abnormal and restarts cyclically? It may be that the power supply current is not enough. Please use a power supply with a voltage of 12V and a current of 2.5A~3A. What is the default username and password for Ubuntu? Username: firefly Password: firefly Switch super user sudo -s Where is the RK3399Pro chip technical manual? K3399Pro chip technical manual link: [Part1](https://download.t-firef ly.com/product/RK3399/Docs/Chip%20Specifications/RK3399Pro- TRM-V1.0/Rockchip%20RK3399Pro%20TRM%20V1.0% 20Part1-20190122.pdf) [Pa rt2](https://download.t-firefly.com/product/RK3399/Docs/Chip%20Specif ications/RK3399Pro-TRM-V1.0/Rockchip%20RK3399Pro%20TRM%20V1.0% 20Part2-20190122.pdf) How to turn off audio in Android system? For users without a codec module, if the audio-related configuration is not turned off, the kernel will always report abnormal log information. There are two ways to turn off the audio: Disable audioserver in the source code: --- a/vendor/rockchip/common/device-vendor.mk +++ b/vendor/rockchip/common/device-vendor.mk @@ -121,6 +121,8 @@ ifeq ($(strip $(TARGET_BOARD_PLATFORM)), rk3399pro) $(call inherit-product-if-exists, vendor/rockchip/common/npu/npu_transfer.mk) endif -$(call inherit-product-if-exists, vendor/rockchip/common/tinyalsa/tinyalsa.mk) $(call inherit-product-if-exists, vendor/rockchip/common/pppoe/pppoe.mk) Directly delete udio.primary.default.so: out/target/product/rk3399pro_firefly_aiojd4/vendor/lib64/hw/audio.primary.default.so Write number tool to write SN, MAC address Note: If the eMMC erase operation is performed on the development board, the previously written data will also be cleared. Windows way Install RKDevInfoWriteTool Download link Select "RPMB" in Settings of RKDevInfoWriteTool Configure "SN", "WIFI MAC", "LAN MAC", "BT MAC", etc. in the Settings of RKDevInfoWriteTool as needed The development board enters loader mode RKDevInfoWriteTool performs write or read operations For specific operations, please refer to the PDF document "RKDevInfoWriteTool User Guide" under the RKDevInfoWriteTool installation directory. Linux way How to write the number of the development board itself Buildroot enable BR2_PACKAGE_VENDOR_STORAGE Read and write operations through the vendor_storage command Download link SN vendor_storage -w VENDOR_SN_ID -t string -i cad895bedb8ee15f vendor_storage -r VENDOR_SN_ID -t hex -i /dev/null LAN MAC vendor_storage -w VENDOR_LAN_MAC_ID -t string -i AABBCCDDEEFF vendor_storage -r VENDOR_LAN_MAC_ID -t hex -i /dev/null Others can be operated according to the prompt of `vendor_storage -h`. For how to read the application, please refer to the "vendor_storage_read" function in "buildroot/package/rockchip/vendor_storage/vendor_storage.c". On Ubuntu system, if there is no sound after plugging in headphones, what should I do? "Menu" -> "Multimedia" -> "PulseAudio Volume Control" -> "Configuration" -> Select the sound card that is working and turn off the other sound card. How to make the system crawl LOG under Android? "Settings (settings)" -> "About phone (about phone)" -> Click 5 times "Build number (version number)" -> "Developer options (Developer options)" -> "Enable logging to save Save)". After the function is turned on, the folder ".LOGSAVE" will be generated under the root directory of the system "storage", which includes the system logcat and kernel kmsg.