1、#EMBEDDEDOSSUMMITZephyr Accelerates Tools for Testing External Display SupportPaul Fagerburg,GoogleEmail:GitHub:ElectricalPaul Problem statement What is Chameleon Zephyr accelerated the development of the Chameleon project Adding Pigweed RPC to our Zephyr application made interprocessor communicatio
2、n easy Zephyr enabled a quick recovery from supply chain shortages Open source is great,but not everyone wants toAgenda We need to test external displays with Chromebooks,where and are both very large Lab space Labor Human errorProblem Statement Chameleon looks like a monitor HDMI and DisplayPort in
3、puts Programmable resolution Captures images into RAM instead of using a display panel Automate compatibility testing for external displays Identify graphics bugs and regressions in a reliable and scalable way Chameleon is open-sourceWhat Is ChameleonDisplayPort and HDMIArria 10 SX FPGADual Cortex A
4、92 GB RAMGigabit Ethernetruns Linux,connects to lab network12V powerkite graphic:Zephyr Project,see LICENSEWhat Is ChameleonTest Runner(IGT,tast,etc.)USB-CEthernet(Lab Network)ChameleonDUTDisplay DongleHDMI(x2)DisplayPort(x2)HDMI decoderFPGAECchameleondLinux kernelWhat Is Chameleon Chameleon used an
5、 STM32F103 for the embedded controller Zephyr supports the STM32F103 Buy a Nucleo evaluation board It just worksZephyr accelerated the development of the Chameleon project Linux system needs to send commands and queries to the EC EC controls the video stream switching and HDMI decoder IC,monitors th
6、e voltages and current sensors,etc.We have only a UART connection between the Linux system and the ECInterprocessor Communication Made Easy Chromebooks have similar needs and capabilities ec_commands.h defines commands and structs Raw bytes over a serial connection Assemble a message from structs on