To FreeRTOS

This week I was tasked with migrating our PIC32 code so it would use the superior FreeRTOS architecture instead of a superloop. Having no experience in FreeRTOS whatsoever I began by skimming through the first 3 chapters of documentation to get me started. Later I simply enabled the FreeRTOS third party library in Harmony Configurator Read more…

Week 3

It’s already week 3. Time flies on internship. Its really not boring either. I sometimes spend +8 hours in the office but I’m never thinking “Oh man when can I leave?” Instead its “shit I’ve been here for 10 hours I should probably leave”. This week’s work was a continuation of last weeks’. First Read more…

Characterizing The Boards

This was my second week here. I was tasked with troubleshooting and characterizing the boards. There are in total seven prototypes for me to play with. The boards are divided into old and new boards. The main differences are that the new boards use slightly different PIC32 and Spartan-6 chips. Read more…

Ethernet Chip

This week I spent most of my time testing the networking section of the board. Firstly I tried to run a simple TCP server code on the board to confirm that it is working. unfortunately, I could not get any result from the board. That called for serious debugging and Read more…

First week

Day 1 & 2: Upon my arrival, I was warmly welcomed and informed that Dr. Shawn wasn’t in office today. As a matter of fact, the other interns mentioned to me that the number of days per week that Dr. Shawn is available in the office was based on RNG. One intern Read more…

It Has Arrived

This week the board finally arrived and immediately I noticed that the ethernet jack was missing after notifying Dr. Shawn I then started testing the board with an led blink test program and verified the PIC and LEDs are working. I then moved to testing the USB with a simple Read more…

Nearly DONE

This week I managed to finish the basic version of the code. It now establishes a network and then uses CORS protocol to communicate with the client. The client will then be able to erase the FPGA or flash and write a new set of data by entering the correct Read more…

Read Flash

This week I worked on flash programming. Previously I managed to use flash driver to accomplish erase and write operations. However, the library does not include a read functionality. The code was still using NVM library to perform a read operation. I came up with a function to perform a Read more…

NVM Driver

This week I was working on flash erase, write and read. Previously I used the NVM driver to access the flash. The erase size for flash is fixed to a page, which varies based on the device. The write size, however, can vary between a row, a quad-word and a Read more…