I am currently updating my page so that you have the best experience possible. Thank you for
your patience, and feel free to contact me at lienwhite7@gmail.com
Hi! I'm Lien
I'm a recent robotics engineering graduate from Arizona State University and newly admitted
electrical engineering graduate student at University of Southern California. I'm passionate
about all things hardware, electronics, and communications, with interest in clean energy and
space! On this webpage you'll get to learn about all of my projects and experiences that support
my current expertise as an electrical engineer, and the many lessons I have learned along the way.
Thank you for scrolling through my website, I hope you enjoy it. Forks Up and Fight On!
My primary project with First Mode is the CAN Saralcc: a electromechanical adapter meant to support 32 CAN busses in one PC for harware-in-the-loop testing. Across the span of two months, I was able to design a PCB in Altium that would take the company's 16 CAN JST connections, transition them through a DD-50 connector, and back out into 16 DE-9 connectors for hardware-in-the-loop testing purpose. I spent the second month primarly focusing on software bringup in Linex on a brand new PC, writing code in Python that would allow the company to test the sending/reciveing of random CAN traces (.trc) files.
While this project seems like a simple electro-mechanical adapter, the process of building this system came with many lessons to learn:
While I have strong hardware experience in Cadance, Altium was not an easy program for me to transition to.
It took me a week or two to create the first revision of my PCB when I think it should have only taken me a few days, but because of I had to overcome a huge learning curve with Altium's shortcut keys I found myself pushing my deadline often. My expeirence here taught me to always account for a few extra days when setting a deadline for myself and to always ask for help and be patient when learning a new modeling program.
On the mechanical side of things, harnessing is SUPER important.
I had to build my own DD-50 to DE-9 CAN octopus harness, and if I messed up the pin layout on my PCB then I could have potentially messed up the pin layout on my harness design as well. I originally had mislabeled the order of the pins for the DD-50 on my PCB, and I was luckily enough to have caught this mistake before building my harness. If I had not done so, I most likley would have connected CAN High to a CAN Low connection or Ground by accident.
I also had a length limit for the wires of my octopus harness, because it was possible for some of the CAN connections coming through my board would be a "stub" or a conneciton limited to a physical wire length of 0.3 meters or less. Leanring to design my harness and measuring the length of my wires with the connectors and PCB in mind was something I had never considered before this project, and now I can say I'm an expert in building stub approved harnesses.
In relationship to software, I learned so much about starting up a new PC in Linex and how to remotely run Python throguh SSH keys and GitHub.
Software isn't my most developed skill, and so using GitHub was and is still something I am getting used to. However, with this project I was taught how to set up my own SSH keys in Paegent/PuTTy and link such keys in GitHub.
Because I had to remotely run code in my new PC, I learned quickly how to run code in Visual Studios, update my code through GitHub desktop, and then test run my code on the system by watching outputs of my program in PuTTY.
Capstone
With a group of fellow robotics students, my team and I created a space grade communications box.
While this project seems like a simple electro-mechanical adapter, the process of building this system came with many lessons to learn:
While I have strong hardware experience in Cadance, Altium was not an easy program for me to transition to.
It took me a week or two to create the first revision of my PCB when I think it should have only taken me a few days, but because of I had to overcome a huge learning curve with Altium's shortcut keys I found myself pushing my deadline often. My expeirence here taught me to always account for a few extra days when setting a deadline for myself and to always ask for help and be patient when learning a new modeling program.
On the mechanical side of things, harnessing is SUPER important.
I had to build my own DD-50 to DE-9 CAN octopus harness, and if I messed up the pin layout on my PCB then I could have potentially messed up the pin layout on my harness design as well. I originally had mislabeled the order of the pins for the DD-50 on my PCB, and I was luckily enough to have caught this mistake before building my harness. If I had not done so, I most likley would have connected CAN High to a CAN Low connection or Ground by accident.
I also had a length limit for the wires of my octopus harness, because it was possible for some of the CAN connections coming through my board would be a "stub" or a conneciton limited to a physical wire length of 0.3 meters or less. Leanring to design my harness and measuring the length of my wires with the connectors and PCB in mind was something I had never considered before this project, and now I can say I'm an expert in building stub approved harnesses.
In relationship to software, I learned so much about starting up a new PC in Linex and how to remotely run Python throguh SSH keys and GitHub.
Software isn't my most developed skill, and so using GitHub was and is still something I am getting used to. However, with this project I was taught how to set up my own SSH keys in Paegent/PuTTy and link such keys in GitHub.
Because I had to remotely run code in my new PC, I learned quickly how to run code in Visual Studios, update my code through GitHub desktop, and then test run my code on the system by watching outputs of my program in PuTTY.