Avatar of Tommy Liu.
Tommy Liu
Staff Device Software Engineer
ProfilePortfolio
Posts
15Connections
Print
Avatar of the user.

Tommy Liu

Staff Device Software Engineer
Having 10+ years working experience in both Cortex-M(FreeRTOS) and Cortex-A(embedded linux). Having rich experience in sensors integration in MCU for IoT purpose with record proof. Design/implement/maintain highly density application in single MCU, including BLE, WIFI, SDIO, SPI, I2C, LED and GPIO interrupt. Enthusiastic in new technologies and skills. So far, focus on voice control(AVS/ASK/Google assistant) and edge computing(greengrass) as personal study. I DON'T care about MANUFACTURE and PRODUCTION, but I DO really care about product itself - does it useful? what technologies inside? how it interact with user? It's easy to build things by maker but what's the next? Most of creators just focus on perfect HW/SW, but real use cases are more important than that. If you CAN NOT design a useful product, that is, you just create a ART at most. Let's flip the world! Welcome to visit my personal Wiki: http://tommy0804.ddns.net/wiki Please feel free to contact me for further discussion.
All.health
National Yang-Ming University
Taipei City, 台灣

Professional Background

  • Current status
    Employed
    Ready to interview
  • Profession
    Other
  • Fields
    Consumer Electronics
  • Work experience
    10-15 years (10-15 years relevant)
  • Management
    None
  • Skills
    PowerPoint
    Excel
    Logic Analyzer
    Linux
    FreeRTOS
    UML
    MySQL
    PHP
    C
    C#
    IoT
    Speech Recognition
    AWS
    IFTTT
    Mqtt
    embedded system
    mcu
    YOCTO
    OpenWRT
    RS485
    Git
  • Languages
    English
    Intermediate
  • Highest level of education
    Master

Job search preferences

  • Desired job type
    Full-time
    Remote Only
  • Desired positions
    Manager
  • Desired work locations
    Taipei, Taiwan
  • Freelance
    Part-time freelancer

Work Experience

Staff Device Software Engineer

All.health
Full-time
Sep 2021 - Present
New Taipei City, Taiwan
1. Integrated WiFi/LTE-M with BLE on Zephyr/FreeRTOS. 2. Implemented CLI through USB virtual com port. 3. Enabled SD card logging with FATFS. 4. Controlled buzzer using PWM. 5. Developed drivers for Ethernet, humidity/temperature sensor, LED, and RTC. 6. Used MEMS microphones for PCM recording to SD card. 7. Managed system settings with JSON files. 8. Created API for server data transmission. 9. Automated NTP synchronization. 10. Migrated file system to emFile. 11. Maintained smart band/Hub SDK. 12. Improved BLE data transmission speed. 13. Implemented default route setting and switching (WIFI/LTE/ETH) with failover and failback. 14. Integrated drivers for fuel gauge, PMIC, IO expander, and capacitive touch. 15. Tuned battery charging/discharging. 16. Developed network applications for Wi-Fi/LTE/ETH, including HTTPS communication, data upload/download, heartbeat timer, NTP client, DHCP client, and RJ45 plug/unplug detection. 17. Used a genetic algorithm to optimize attack and decay for GSR. 18. Created a Python tool (x86/arm) for band interaction through BLE with a custom protocol using the factory pattern for command generation.

Senior R&D manager

Feb 2020 - Sep 2021
1 yr 8 mos
1. Maintain Eye tracking SDK 2. Support IC simulation testing in Design phase 3. Eye tracking FW development based on RISC-V CPU - 3-party library porting and profiling 4. Discover more application for eye tracking in various platforms (windows, linux and android) 5. Planning and guide intern to accomplish project - eye tracking with voice (ALEXA) to control IoT things - MCU FW for IoT things (AWS Iot client + GPIO + PWM) - Embedded linux server (Wifi AP + WAN + restful API) - AWS (AVS + lambda + IoT Core) - Integrate with eye tracking system 6. QITC support - Camera sensor(OVM7251) bring up on Qualcomm platform (HDK8250) - Modify device tree according schematic - CCI debugging in waveform level - SCCB/I2C hacking by using Bus Pirate - 120 fps enabled - Unbrick device by using QFIL(debug in firehose protocol) 7. Porting stm32 project from Keil to ARM GCC 8. Optimize camera usecase - Add custom chi node - Streaming image to DSP - Remove IPE from usecase

senior FW engineer

May 2019 - Dec 2019
8 mos
1. Develop/maintain a cortex-M platform: - Platforms survey, implement, optimization and porting - Using SPI to capture small signal (uV), 32 / 64 or more ADC channel with high sampling rate (30KS per channel) from existing ASIC - Optimizing SPI to reduce the period between transactions (approaching nano second level) - Streaming huge data from SPI and write to SD card with FATFS - Multitasking with SPI / SDIO / Wifi(TCP client) / BLE - BLE SPP(Serial protocol Profile) for control command and status report - DAC for stimulate biological target - ADC for battery monitor - IR for external event recording 2. Setup/develop/maintain a cortex-A platform: - TCP server - Wifi AP in (11AC mode) - GUI for multi-channel real-time displaying (by using pyqtgraph) 3. Design/develop/maintain FW in multi-platform concurrency and integrate as one system.

Software R&D Deputy Manager

Nov 2017 - Mar 2019
1 yr 5 mos
1. Working on MCU which running FreeRTOS, including topics: - MPU (Memory protect unit) study - Applications integration for GPS/RS485 - Smart lighting with dimming (0-10v) and on/off (relay) 2. Working on Xilinx FPGA platform which running linux by building from Yocto - GPIO control from PL & PS - Library porting, paho-MQTT /mosquitto / libmodbus / jo / jq… - Integrate USB peripheral, OTG / RS485 / LTE / Wifi (AP mode) - External Watch Dog - NAND flash integration (as storage with ubifs) - System sanity check and output as JSON format by shell script - System security enhancement - Secure boot with AES - Secure FW upgrade over Ethernet - Anti-DDoS(iptables) 3. Support production tool (VC#) 4. GitLab CI(.gitlab-ci.yml + gitlab-runner + Docker container) for x86 and ARM project

Staff engineer

Aug 2015 - Oct 2017
2 yrs 3 mos
1. IoT product bring-up which including Zigbee + Zwave + 3G + BT 2. Interview with candidates for tech qualification 3. SW schedule planning (EVT/DVT/PVT) 4. DIY Null Modem Cable and redirect console log to ttyUSB0 5. Control bulb@Zigbee by ZCL command 6. Building images based on Yocto / OpenWRT

Techincal Senior Manager

Aug 2009 - Jul 2015
6 yrs 0 mos
1. IP STB/DVB-S/DVB-T/DVB-C/VDSL bootloader/kernel/driver/middle ware/application programming 2. Testing script/application development for STB 3. Embedded system development for Audio/Video products (STB, media gateway, vDSL, Wifi router) 4. Working on most SDK 5. Driver porting - WIFI/Tuner/LTE/MoCA driver porting/bring-up in ARM/MIPS platform

Embedded engineer

Mar 2008 - May 2009
1 yr 3 mos
1. Develop & maintain RISC device (Sigma 8621/8635, uClinux, C and debug) 2. Add sensor driver to RISC device (GPIO, C, UPnP, and JSON) 3. Maintain media server (PHP, JS, and AJAX) 4. Communicate between pc and non-pc through bridge server (C#, SOAP) 5. Web service (XML, XSLT, UPnP, and SMIL) 6. Develop product - fancy schedule editor(C#, multi-thread, UPnP, WPF, and User Control)

Research assistant

Jul 2006 - Jan 2007
7 mos
1. Deriving a scoring matrix for protein local structure and sequence 2. Finding the scoring matrix which was better than all existing scoring matrices 3. Post the first results that using GA to optimize scoring matrix

Education

Master of Science (MS)
Bioinformatics
2004 - 2006
Master of Science (MS)
Information Management
2002 - 2004