Saniya’s Status Report for April 29

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

This week I met with Madi and Shize to work through putting our parts together. I worked with the Feather code that Shize put together and added various movement and animation functions. I have also been researching and running tests for using UART with iOS Core Bluetooth in order to help Madi with the app. I worked up a new circuit design for adding an external switch and battery to the earring and received preliminary CAD designs from Madi, which I hope to elaborate on soon.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

My progress is on schedule.

What deliverables do you hope to complete in the next week?

I hope to finish working with Madi to integrate the BLE functionality with the UI of the app she has already built and complete the design report.

Shize’s Status Report for April 22

The version built with feather m0 board is done. I’m now finalizing the code to make moving patterns.

The current design of the earring have the LED matrix and the feather m0 board soldered closely together and the whole thing plus battery weights 20g. The battery (350mAh) is rechargeable by just plugging in to USB and it lasts more than 2hrs.

The current settings for user including choosing pixel color on their phone and typing letters in Bluetooth uart to define how they want the pattern to move. The types of moving and their corresponding ascii letters are: up (^), down (_), left (<), right(>), rotate left (l), rotate right (r), expand (e), shrink (s), and stop (.). Stop (.) is used to make the moving pattern stop. By using this current setting, users should be able to design interesting patterns for different moving styles.

We will make our attempt on using our customized PCB that fits the LED matrix better, but to account for the possibility that we couldn’t get the PCB working, our final project will just be the feather m0 version.

Saniya’s Status Report for April 1

What did you personally accomplish this week on the project?

This week I built the circuit with our RGB matrix and tested it first using basic Arduino demos. I also worked through some Bluetooth examples for the STM32WB using Zephyr, which is the software that my 349 TA showed us. I also spent a good amount of time laying out the basic schematic for our PCB using the Nucleo board’s design for reference. However, since the Nucleo board has far more subsystems and functionality than we require, I have had a little difficulty in understanding which sections of the power management circuitry I need to integrate into my design, and which of the many STLINK programming options I need to add. I hope to clear these questions up in our meeting with Professor Nace on Wednesday.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

We were a bit behind schedule due to issues working with the STM board, but this week Shize and I will meet with Professor Nace to finalize our PCB design and try to get some basic patterns working with STM control.

What deliverables do you hope to complete in the next week?

This week I will work with Shize to make sure the circuit works properly with the STM32 and finish out the PCB design.

Saniya’s Status Report for March 25

What did you personally accomplish this week on the project?

This past week I worked more on the PCB. Since we were hitting some roadblocks with being able to program the STM32WB, I did some research on my own and tried generating projects through ST softwares such as STM32CubeIDE and CubeMX. I was still having no luck with these, so I brought our board to my Embedded OH, where a TA was able to help me get the board working using the Zephyr development environment. We were also able to test sending a simple Bluetooth packet that was received over iOS and an existing STM app that lets you view wireless data transfers from ST devices. I spent a few hours running samples and will be bringing Shize up to speed on what I worked on with the TA.

 Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

We are a bit behind schedule due to the issues we were having with configuring the board, but now that those have been amended, I plan to spend time with Shize this week hashing out our hardware code. Using Zephyr seems to be far less complicated, so I don’t think it will take too long if we work together.

What deliverables do you hope to complete in the next week?

In the next week, I hope to have all the base code for the hardware finished and if that is done, then I can get the PCB design ready for fabrication.

Saniya’s Status Report for March 11

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

In the week preceding spring break, I spent some time working with my team on our Design Report. During break, I spent a significant amount of time working on the library for LED matrix. I attempted to integrate my work with the HAL library Shize compiled on our Github and was unsuccessful.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

My progress is a bit behind schedule due to the inability to coordinate efficiently and work collaboratively over break on the code for the device. This coming week, I will spend time working with Shize in person to see if we can hopefully debug our issues, and if that fails, we will create an alternative plan to implement our device using Adafruit extension boards.

What deliverables do you hope to complete in the next week?

In the next week, I hope to debug the interface we’ve created with the STM HAL library and help Shize in completing the PCB design.

Saniya’s Status Report for Feb 25

What did you personally accomplish this week on the project?

I spent time earlier in the week working on the design report with my team members and since our parts arrived, I started familiarizing myself with the DotStar Matrix interface. I first tested basic functionality with simple Arduino tutorial scripts and then began connecting the device to the STM32 with a breadboard to start testing basic I/O connection. Finally, I began practicing with PCB design to able to better work with Shize on developing our schematic in the coming weeks. I acquired Fusion 360 and created a few simple circuits from tutorials, schematic and board and ran the ERC/DRC checks successfully.

 Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

While I was able to get a solid start on writing the connection interface, I would have liked to get further with the matrix functions. I anticipated that I would have significantly less time this past week due to my exam/lab schedule in other courses, but I factored the time to catch up into the coming week and my break since I won’t be traveling.

What deliverables do you hope to complete in the next week?

In the next week, I hope to (1) complete the design report with my teammates and (2) have a more complete interface for the STM32 to control the DotStar matrix in some basic functions such as color-changes and simple shape designs via buttons or stdin commands.

Saniya’s Status Report for Feb 18

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours). 

During this week, I began working on our design report and continued planning out the structure of our sysem. Since our W series STM32WB55s had not arrived yet, I did some practice with an STM32 board I had access to and set up a few simple peripherals: LEDs,  buttons (assuming we will need to incorporate at least one into our earring design. Since the device we are using is from Adafruit, it works with the CircuitPython library and is designed to be easily configurable with Arduino devices and other hobbyist microcontrollers. To connect with the DotStar matrix from an STM32 device, the most efficient way is to image the device with CircuitPython, which I tested with my personal STM32 to start getting a feel for the interface.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?  

According to the plan set out in our Gantt chart, I am currently on schedule.

What deliverables do you hope to complete in the next week?

Since our parts have begun arriving, I plan to start getting our basic peripherals working with our STM32 and creating a preliminary interface and writing any baseline library functions necessary for communicating with the DotPixel LED matrix

Please list the particular ECE courses (if any) that covered the engineering science and mathematics principles your team used to develop your design? If there are no courses please tells us how you learned those principles over the last week ?

The course that I have found most relevant to the work I did this past week is probably 18349 Embedded Systems and 18240.  As I began working through the preliminary setup, I found myself applying my skills from 18349 to  properly understand the datasheets independently. Going forward, we will need to design our own PCB, which will also involve skills from 18349.

Saniya’s Status Report for Feb 11

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours). 

During this week, I focused my time on two objectives: preparing the proposal presentation and handling the parts for our project. After submitting the presentation material last Sunday, I prepared during the week leading up to the presentation on Wednesday. To prepare, I familiarized myself with all the concerns relating to the execution of our project and researched our implementation strategies to better be able to answer any questions that were asked of me.

After the presentation, I was able to submit our parts for order and I began going through the datasheets for each of the major components (primarily the microcontroller and the two screens: the LED matrix and the LCD).  I also began familiarizing myself with the frameworks for connectivity protocols in iOS and researching other projects using the Swift Core Bluetooth (BLE) framework. Additionally, while waiting for the parts to arrive, I began researching manufacturing options for the physical casing of the earring and the electrical components. I’ve looked into SLA printing for some of the internal structure compoments, since the material options for SLA printing are far less heavy and heat conductive, and metal 3D printing (ideally 316L stainless surgical-grade steel) manufacturing companies. Finally, I read up on the specific capabilities of DotStar LEDs. We were intially thinking to build our MVP with a NeoPixel LED matrix component, but after some searching, we found the form factor of the DotStar LED matrix we selected better suited our interests. Dotstars have much faster data rates than NeoPixels, which expands our pattern options to involve movement.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?  

According to the plan set out in our Gantt chart, I am currently on schedule.

What deliverables do you hope to complete in the next week?

In the next week, I hope to begin developing preliminary hardware designs (block diagrams, drawings preceding CAD for the earring casing) while waiting on the parts to arrive.  Once the parts arrive, I intend to start building test circuits immediately and learning to invoke basic functionalities in isolated testing.