For this week, I met up with a TA to discuss our issues in the communication modules between the Pi and the FPGA. The reasons we are dropping bits are mostly likely due to the fact that the clock is shorted and the FPGA is not sending on a frequency that the Pi can operates. Right now the pi is the host, but the FPGA is sending the clock signal instead of the Pi. When using the SPI library, the Pi also sends in a clock signal, so our clock signal is shorted which affected the results when we are receiving signal from the FPGA. The TA suggested a solution which involves changes on the SPI code on the FPGA side. I already informed my teammates about the TA’s suggestion and we will see if we can work something out. In the mean time, I’m working on the presentation slides that are due on Sunday. In terms of schedule, I think I’m behind since I need to wait for the FPGA side’s SPI code to change to test my SPI code on the Pi. I will continue to work with my teammates to resolve this issue.
Lulu’s Status Report for 4-16
This week I kept working on the GPIO communication modules, specifically the receiving function. While I was debugging, I realized that the MISO pin on the pi that we are using to receive data from the FPGA is stuck at 0. Using the other pin, I was able to get the receiving function working.
In addition, I was able to set up the web app environment on the pi and the web app is now running on the pi. I also set up the web app so it can display the decision that our machine learning algorithm outputs and the profit we get from the FPGA miners. In terms of schedule I think I’m overall behind but caught up with my teammates. For next week, I would like to test the receiving function with the FPGAs and display the metrics on the web app if the project is done. I will also help with improving the decision algorithm if my parts get done early.
Lulu’s Status Report for 4-10
For this week, I worked on debugging the GPIO’s sending and receiving functions. Sending is working, but receiving still needs some refinement. It needs to be on receiving mode whenever sending mode is off. In terms of schedule, I’m a little behind on the GPIO communication modules. I will consult with my teammates next week during our scheduled meeting to get the receiving function done ASAP. For next week, I would like to have the receiving function done and the web app displaying the current cryptocurrency that we are mining base on the ML algorithm as suggested by professor Kim. During the interim demo, there was a bug with the graphs that I would like to resolve for next week.
Lulu’s Status Report for 4-2
For this week, I figured out how to setup the RPi using a monitor, which took a long time. I also spent many hours attempting to hook it up to the wifi and then finally proceeded to work on the code. I finished implementing the communication and was able to test the send byte function.
For the receiving function, since I can’t manually change the input pin, we still have to hook it up to the FPGA to see if it works. In terms of schedule, I think I’m back on track. For next week, I will try to integrate this with the FPGA to debug any potential issues such as endianness, and the receiving function.
Lulu’s Status Report for 3-26
This week I tried working on the tasks using the RPi, mainly debugging the GPIO communication functions I wrote last week. We still need to work out a way to work on the RPi with CMU secure wifi, so we are doing RPi related tasks at home this week. Although David managed to ssh into the RPi at home using the ethernet connection, I couldn’t ssh into the RPi with the same ethernet connection, even though we literally live in the same building. I’ve looked into others ways to ssh into the RPi, but none of that seem to work. I’m currently a little behind on schedule because of that. In the end, I just kept working on the GPIO communication functions. Debugging sessions will happen next week when we meet up together and have other components ready. For next week, I will be catching up on the work that I needed to do this week.
Lulu’s Status Report for 3-19
For this week I worked on the table that will display cryptocurrency information from the past 24 hours. In addition, the website will now refresh every minute to ensure the current prices are up to date. I tried deploying the website using the Amazon EC2 instance. The instance was setup successfully but I need the final GitHub repository link to deploy the app, which is not yet available because we are working on separate branches individually and haven’t merged into the master branch yet. In terms of schedule, I’m a little behind on the integration between FPGA and the web app. I still need to move the code for the web app from my local computer to the RPi and test the data transmission from the FPGA to the web app. Since we are prioritizing getting connected to the mining pool first, the work for the web app is pushed back a bit. In the meantime, I was working on the SPI send byte function that will take in a byte and turn it into bit format to transmit through GPIO pins. I was also helping to get the historical data for the cryptocurrency and converting it into a format that will be easier to use for the decision tree that we implemented. For next week, I would like to have the FPGA send dummy data and have the web app display on the website to make sure I have the communication method set for these two components. I will also help with other components that we need to finish before the interim demo.
Lulu’s Status Report for 2-26
This week I kept working on the features for the website, specifically getting past data and plotting the trends for all the cryptocurrencies. I got the past data from the binance API and stored them using the pandas data frame. At first I tried to use matplotlib functions to plot the data and display it on the website, but I encountered many errors. In the end, I was able to plot the data using plotly functions instead. Right now the web app has candle charts and line charts displayed for bitcoin and ethereum, below are examples for each chart. Overall I’m on schedule for developing the web app, but since the RPI has not been delivered yet, I couldn’t work on tasks or testing related to the RPI for the past week. For now I will keep working on the web app and other parts of the project until the RPI comes, then I will switch to RPI related tasks. For next week, I will be working on the design review report and adding more features on the web app.
Lulu’s Status Report for 2-19
For this week, I kept working on the web app, specifically I made the model that will store the user information and customizations that they wish to make on the FPGA. On the home page there’s now a form with five different mining ratios that the user can choose from. The data is then stored in the Profile model’s sub model Customize’s field ratio. In addition, I also researched the API, Binance, that will be use to display the current price and the trends of the cryptocurrencies. This week I managed to have the current prices of BTC and ETH display on the home page. I’m going to work on displaying the trends on home page next week. I also redesign the website a bit and added a gif to make it less bare, and I will look into displaying more stuff in the future. In terms of schedule, I think I’m on track now that we pushed back the date for integrating with the raspberry pi. I will start working with the raspberry pi once it’s delivered.
Lulu’s Status Report for 2-12
For this week, I started working on the web app. I created a base design for the website that will apply to the whole web app. I have the login and registration page working. I setup the home page but it’s still bare since I’m still unsure what I want to put there yet.
In addition to setting up the website, I did a little bit of research on how to transfer data between raspberry pi and Django website. Apparently there’s a package named channels that can be used to achieve what we want.
Overall my progress is on schedule. For next week, I will be working on forms that will be used to customize the settings for the miners. If the raspberry pi is here, I would also like to work on integrating it with the web app.