I2C core and accelerators switch

The I2C core made a lot of progress this week. While I was hoping last week not to use a FSM in my slave I couldn’t resist the temptation. My slave have a FSM and is almost 95% ready. The hardest part is the acknowledge part. Not only that the slave need to send acknowledge when the master is writing to it but has to receive acknowledge when it’s writing to the master. Each acknowledge signal has it’s own meaning. Read more

Text Area Input and Base64 Decoder

My next task would be to work on making the HTTP to upload the data in data-form instead of file form. I had the text field input integrated with my current HTTP code so I tried to upload a 350KB file with it. It turns out that the upload is not working. My supervisor then told me to change the input from text field into text area. I then looked up the internet for information on the text area. I Read more

Deeper into the realm of SD cards

After scratching the surface into the world of SD cards and how they store data, almost all of the week was spent into trying to figure out as much as possible about the abilities of these storage devices. Admittedly, I was led astray by my own curiosity about the File system on the SD card and wasted a lot of time troubleshooting and studying up on something that is not relevant to what we are trying to do. Promptly I Read more

SD Card Inactive State

During the process of trying to write my own MDD stack, I found a comment in the code given by Microchip. It states: //Check if all attempts failed and we timed out. Normally, this won’t happen, //unless maybe the SD card was busy, because it was previously performing a //read or write operation, when it was interrupted by the microcontroller getting //reset or power cycled, without also resetting or power cycling the SD card. //In this case, the SD card Read more

I2C core

I2C is the last IO device going into our system, for now. I2C is more complicated than both UART and SPI. It’s complication is due to it’s ability to have many masters and slaves on the same bus. Moreover, having only one bidirectional line(SDA)  for data transfer adds to it’s design complexity. The latest specification for I2C from NXP should be your main source for learning about I2C. I2c online guides like this and this can be very helpful. While Read more

UART and Testing Accelerators

This week had a lot of testing going. First of all UART is 90% done. It has been tested by simulation and on FPGA communicating with the PC through Minicom. I’ve faced a very interesting issue while testing UART on Spartan 6 ATLYS board. My UART can transmit data to the PC but it doesn’t seem to be receiving any data sent by the PC except when I send a Break Signal. I’ve tried slowing down the PCs Baud Rate, Read more

Final Modifications and Documentation

This is my last week interning at AESTE, what I have done were doing the final checking and making some modifications during the first three days of the week. I had to change the drivers into class templates whereas my colleague, Mostafa tested the ARC4 and ECDSA drivers on the hardware to check if they are working properly. Maybe the programs that I have written are not robust yet, but they are functionally working correctly now. So, at least I Read more

GPIO’s, UARTS and SD Cards… First impressions

Running to the bus-stop to try to catch the 9:00am UCSI bust before it runs away, all I could think was “God, I don’t want to be late on the first day!”. But the butterflies in my stomach gave me enough of a kick to get on the bus in time, and although some pretty terrible traffic tried to derail my hopes and dreams of the perfect first day at work, I managed to touch base at the front door Read more

The last hurdle

This is my last week at Aeste. I’m glad that I managed to complete the task assigned to me! Basically, this week is all about wrapping up all my works. I continued working on my sphinx documentation although there were not many things to add because I’ve put everything that I deem useful and essential to the documentation last week. This week I’ve been re-reading my documentation for any potential grammar or technical mistakes. Apart from improving my documentation, I corrected Read more

PCB Complete, Documentation Done and Final Thoughts

In my final week, we wrap up with the PCB design of the product prototype and retrace & document the work completed in my nine weeks at Aeste. For one last time, click here to skip to the conclusion. Routing Completion The design of the circuit board is complete. Last week, it was suggested that it might be necessary to make compromises in the layout, perhaps in routing the RB1, RB2 or Port E pins to the Spartan-6. However, with Read more