PoW as Checksum

The purpose of a checksum is to determine whether a message was transmitted error free. There are many ways to determine a checksum and one of the ways to do this is to use a cryptographic hash. A cryptographic hash function has several useful properties to do this: A single bit change in the input produces a radical change in the output hash value. This means that even a small error in the input will result in a completely different Read more…

Head Judge Screen

I’m struggling to finish up the head judge screen this week and I’m facing few problems as well. I managed to assemble necessary information such as absolute score, comparative score and each judge’s scores for the screen At first, I’m having a problem to display scores on the screen because I wanted the scores to be displayed in progress circular with color according to gsb function and having tooltip function as well showing scores if the performance is multi-piece performance. Read more…

Photo by Nicolas Thomas on Unsplash

Chapter 10: Update new firmware by USB

This is my tenth week work in AESTE. This week I had successfully to test the Bootloader Live Update work. Although it is update by USB device (my actual project use Ethernet). But that is a good starting point, at least I know how to use the live update demo from Harmony. Next step I have to do are: Upload a file to localhost by TFTP. PIC32MZ get the file from localhost by Ethernet. Using PIC32MZ check the file is Read more…

Vuetiful Tales And Adventures Chapter 2

Hello again. Welcome to the second chapter of my series of developing the frontend of my current project using Vue.js and Vuetify mainly. This week, I continued working on the storage aspect of the dashboard application. I had already made an interface for storage configuration, now I would just need to display the list of configured storage to the user and also enable them to add and configure more storage services on demand. Apart from that, I also set up Read more…

Not Over Yet

Submit Score I had difficulty when I tried to add submit score functionality on the judging screen. I kept getting an error when I tried to submit the score for each performance. The parameters that need to be sent are performance Id, judging Id, absolute, scores and comparative. At first, the system gave me an error because I didn’t put the scores as a parameter.  Secondly, I didn’t put the comparative as the parameter since I’m not doing the comparative part Read more…

Chapter 9: PIC32MZ Bootloader Live Update

This is my ninth week in AESTE. I spent almost my whole week to study the theory of bootlaoder and how the dual memory work for PIC32MZ. Only the PIC32MZ has dual memory bank, other PIC32 only has one. Bootloader is used to upgrade the firmware of microcontroller without using any external programmer or debugger such as PICkit 3. Harmony provides two ways to implement this, one is basic method (all PIC32 can use this) and another is live update Read more…

Photo by Nicolas Thomas on Unsplash

Vuetiful Tales And Adventures Chapter 1

From here on, I would be writing a series of blogs conveying my trials and experiences developing for the frontend of my current project using Vue.js. The title of my blog posts after this one would follow a similar pattern to the one above, partly because I’m running out of blog posts titles ideas as well. Let’s get started then. Last week, I talked about making some changes to the backend of the application, given our new way of dealing Read more…

The Judging Screen

I can feel that I am more efficient this week since I’ve managed to complete the emcee screen and almost done with the judging screen. For the judging screen, it is completely different with the emcee screen and it gave me more headache. Dr.Shawn made some changes in my codes for attendance screen. He asked me to learn and apply it to the other screen too. It was the auto refresh, apps theme, adding an icon to the drop-down button Read more…

Photo by Nicolas Thomas on Unsplash

Chapter 8: Unlucky week

This is my eighth week in AESTE WORKS. I should put my work in Git release branch by Tuesday, but I only managed to do it on Thursday. This is due to I faced a few problems there. The flash memory cannot be read/ write. PIC32 cannot get the IP address. The code suddenly cannot run on the next day. (previously no problem) Solution: Before that, the code from previous intern it can work well and get the IP address. So, Read more…

PouchDB

This week we have decided to some changes to the application I’m currently working on for the better. Normally, server web applications would have a dedicated database to read, write and store crucial data. That was the case for this application as well, until Dr Shawn got the idea that we do not need to keep this single database at all. What? That was my reaction as well. Basically, we already knew that the application would interact with cloud storage Read more…