I am/was a teaching assistant of the following modules at the University of York:

  • EMPR (Autumn, 2016-2017): Embedded System Projects
  • PROM (Summer, 2016-2017): Programmable Microcontroller
  • EMPR (Spring, 2016-2017): Embedded System Projects
  • MFCS (Spring, 2016-2017): Mathematical Foundations of CS
  • PROM (Summer, 2015-2016): Programmable Microcontroller
  • ICAR (Spring, 2015-2016): Introduction to Computer Architecture


  • 2015 - 2017: Postgraduate Teaching Assistant (part-time), University of York, UK
  • 2012 - 2013: Embedded System Engineer, Linkage Technology, China
  • 2011 - 2012: Embedded Software Engineer, Nanda Automation, China


As a B.Sc. and M.Sc. in automatic control and previously as an embedded system engineer, my knowledge and skills on engineering are quite rich and variant: skills

  • Embedded Systems and Microcontrollers
  • Mobile Robots
  • Control Engineering
  • Real-time Scheduling
  • Machine Learning
  • General Programming: C/C++/Python/Java
  • Scientific Programming: MATLAB/Simulink, Python + NumPy + SciPy

Recent Publications

Recent & Upcoming Talks

  • June 15, 2017: Dynamic Worst-Case Execution Times Analysis in Adaptive Scheduling, Ada-Europe 2017, Vienna [PPT]
  • May 05, 2015: Using Feedback in Real-time Systems: A Literature Review, University of York

Recent Posts

Since founded by N. Weiner in 1947, the control theory has been evolved for more than 60 years and is still full of challenges and opportunities. The most important principle of the control theory, in my opinion, is the feedback mechanism. Without feedback and closed-loop, almost no algorithm and control technique can be implied. The idea of feedback is that by comparing the reference input and the actual output, an error signal can be obtained and then can be used by the controller to trace and eliminate the difference between the input and the output.


OpenWeatherMap.org is a free weather forecast website, where you can get up-to-date weather reports. One nice thing about this website is that it does provide weather APIs which you can use to fetch current weather data, and use them to build your own weather-forecasting program. In this post, I will describe how to use python to access the weather APIs and fetch the current weather information. The full documentation of the APIs can be find here: http://openweathermap.


When you study your first lecture in Embedded Systems, you will definitely hear the term ‘hard’ real-time and ‘soft’ real-time. Systems such as avionic systems, automobile engine control systems and cardiac pacemakers could be included in the category of hard real-time systems, while web servers, human-machine interfaces and multimedia systems are soft real-time systems. By intuition, we can infer that these hard real-time systems are more critical and important than the soft ones.


Real-time Scheduling Theory has been developed over last 40 years, since the first published work of Liu and Layland in 1973. Before that, real-times systems were designed with cyclic executives, which is in a ad-hoc manner and very difficult to maintain. In general, the theory is consist of task modelling, scheduling policy and schedulability test. Some other issues, e.g., resource management, response time analysis, worst-case execution time analysis, are also involved in the design of real-time systems.