Photo by rawpixel on Unsplash

Memorable and Well Worth Journey

My 12 weeks’ internship at Aeste has finally comes to an end. In this final blog, I would like to share my experiences working as an intern here in Aeste and also introduce a little bit of myself. I am third year Mechanical Engineering student studying in a local university who has interest in programming. It’s compulsory for me to do an internship during my third year and I had a hard time deciding what should I do. It was Read more

UART Demo Progress

As I mentioned last week, I am working on simulating a real UART device. Do you know what UART device is? Well, let me start by explaining a little bit about it. UART stands for Universal Asynchronous Receiver/Transmitter. A UART is a microchip with programming that controls a computer’s interface to its attached serial devices. It allows the computer to talk to and exchange data with modems, serial ports and other serial devices. UARTs are commonly included in microcontrollers and Read more

Photo by Charles Deluvio 🇵🇭🇨🇦 on Unsplash
Photo by Nicolas Thomas on Unsplash

Off I go

Time flies, I could not believe I have already finished 12 weeks of internship in Aeste. In the last week, my main job is to write the documentation about all the coding I have done in the P3MUAT project. Still, a few minor changes are done: i) Create our EC keys and self-signed certificate with openSSL. Step1: To view the available curves: openssl ecparam -list_curves Step 2: We chose the EC key with 384 bit prime field (secp384r1). Generate it Read more

Finalizing visualizations and C++ backend

This week, I continued working on the visualizations for displaying the results of analyses using the plotly.js library. Previously, I have already implemented bar charts for illustrating the percentile scores of each performance record. The bar chart looks fine but I was not very satisfied with it because I feel that a user with little background knowledge in statistics might not find it interesting at all. I decided to explore plotly.js library a little further to see if there are Read more

Spring Cleaning Part 5

Nothing much was done for this week, except for the fact that project thumbnails are now obtained from the server’s REST endpoint instead of a hardcoded image path. The REST endpoint basically extracts the thumbnail from a specific project archive, that is fetched from the cache or from user’s storage if not in the cache. Then, the thumbnail would be searched for in the archive and if found, it is extracted to a temporary directory. The thumbnail is searched based Read more

Final Testing and Cleaning Up

Week 11, last week I managed to use Wtemplate function inside the template file linking with the information that I needed. I am really excited about this because previously I had problem linking the information into the another function due to some c++ structure and syntax issue. To be more specific, the function I am using right now is “handleUnresolvedVariable()” which can be found in the member function documentation of Wt::Wtemplate Class Reference. I have customized the function so that Read more

Photo by Fabian Grohs on Unsplash
Photo by Nicolas Thomas on Unsplash

Flash Mutex check & Firmware OTA update

In last week, bearSSL server in CORS thread and bearSSL client in OTA thread can already run simultaneously except the bitstream download & firmware download part as both of them write to flash memory at different addresses (the board gets rebooted). Therefore, a mutex (mutual exclusion) check is needed to make sure only one instance of flash is running over all threads at one time. Since the multithread process is provided by freeRTOS, we need to use mutex API of freeRTOS Read more

UART Demo

Last week, I talked about how I was able to run STORE and LOAD related functions which are methods of JavaScript Objects. Maybe I have not explained this part very well, so, I will review it first. I have added methods to an object from which all modules objects inherit. Thus, these methods will be shared among all the modules. Let’s say we have only two methods declared in our objects, store() and load(), which are defined accordingly: store(data){ // Read more

Photo by Charles Deluvio 🇵🇭🇨🇦 on Unsplash

Spring Cleaning Part 4

The race against time continues as I strive to complete the things that I need to do for the project for good by the end of this month. One of the things that I have done for this week was implementing a basic search and sort functionality for the projects as part of the UI. In recent versions of Vuetify, they added a few new components, one of which helps to deal with auto-completion for a search bar which is Read more

Syncing data from CRS and CMS, more visualizations

This week, I spent some time working on CRS to implement a new REST API endpoint for exporting data in the form of TSV. This is needed for CAS because the existing export function in CRS does not export any information regarding registrants. Next, I implemented a new class, CRSTSVParser in CAS to handle the parsing of string content from the imported TSV. Since I had already implemented a parsing class, CMSTSVParser before this, I thought it might be a Read more

Photo by Giorgio Tomassetti on Unsplash