Christian’s Status Report for 4/25/26

This week I’ve mainly been working on getting the tip mechanics for the stylus printed out, and helping with physically integrating the components. I’ve had some hiccups in getting the tip sturdy and stable since it is the only moving component in our design, but I am making progress and should be done with the integration within the next two days. We are almost ready for the final demo!

Christian’s Status Report for 4/4/26

This week I worked on beginning to physically integrate the force sensing resistor and optical sensor into the stylus housing. I extended the end of the stylus housing to include supports for mounting the optical sensor at an angle. For the FSR, I decided the optimal place for it is on the top of the USB-C port on the MCU. My progress is on schedule, and this next week, I plan to have a sliding-push tip mechanism in place for physically pressing the FSR.

For verification, since we have functionality for taking in data from the MCU and displaying writing on our canvas, I will work with Jamari to develop a testbench that measures the latency between when our data is received on the OS to when a line drawing appears on our canvas application. In addition, I will make a testbench that measures the amount of power draw from our lithium ion battery and gives an estimate of how much wireless writing time is left. For the 3D housing, I will weigh it with and without the internal components to verify it meets our requirements.

Christian’s Status Report for 3/28/26

This week I worked on more iterations for our stylus housing, connected our battery to the MCU, and did the first testing of our conversion module with MCU data.

I did a lot more refining of the stylus housing this week to account our PCB wire placement, battery connection, and USB-C wire length. I created more  openings for wires and hollowed out the internals to make more room for the slack that the battery wire connection made.

Since we had some trouble with our sensor PCB, I’m using IMU data from the MCU as dummy dx/dy values, using the BLEHID Adafruit library to feed these values into the OS, and using these values in a largely unchanged conversion module.

My progress is on track, and for next week I hope to help with integrating the optical sensor into our data flow.

Christian’s Status Report for 3/21/26

This week I did more refining on our stylus housing. I allocated a bit more room for the internal components since the fit was tight on the last iteration, and I also changed the tip shape to resemble more of a pencil shape. I also added a sliding latch on the back of the pen so that the two halves of the stylus can be held together better, and I extended the length to have a more comfortable hold. My goal right now is to make sure that all components fit well and the writing feels comfortable, then I will reduce the weight of the housing by hollowing out some of the material.

This week I focused more on iterating the housing since we’re still waiting on the optical sensor and pressure sensors to arrive. Both sensors should be in by early next week, so by the interim demo I will have basic functionality of the conversion module with the physical optical sensor and pressure sensor ready. I will take a step back from working on the housing when our sensors and PCB are in, since that is our most major delay.

Christian’s Status Report for 3/14/26

This week I made more edits to our housing design to account for the new size of our sensor PCB, and also experimented with code for integrating a pressure sensor into our design.

The idea behind the revised housing design is for our new sensor PCB to have a good field of view near the tip of the pen, while making the tip a lot narrower so that writing feels more natural.  This thinned out tip design is possible because our new optical sensor is a lot more compact that our initial one. This thinner tip also allows for our sensor to fully utilize its range of angle in the position it’s on our PCB.

I also worked a bit with code that replaces a button click for drawing with a pressure sensor threshold. As mentioned in our team report, we’re aiming to replace some of our button functionality with a pressure sensor, which will eliminate the need for a user to repeatedly press a button to draw versus move.

As mentioned before, progress is just a bit behind because of the waiting period for our sensor, but now that our PCB is getting in next week, I can expedite with lots of testing and tuning next week.

By next week, I will start integrating actual data from our MCU and sensor, since our physical PCB should be getting in by next week.

Christian’s Status Report for 3/7/26

This week I worked more on iterating the 3D housing, as well as planning out testing for when we receive our sensor.

For the 3D housing, I allocated ~1mm of extra space for each component to account for manufacturing differences, and I rearranged the parts so that our MCU can be closer to the tip where users will likely hold the pen, so that our IMU can be more accurate. I also separated out the portion of the housing for the tip so that I can slim out the rest of the body, which will allow for a more comfortable writing experience. I also had to adjust the tip dimensions to account for our new optical sensor.

I haven’t made much progress with the conversion module since I already have the software side of it down as much as I can without having the sensor. Going further with tuning the conversion module has been bottlenecked by our troubles with getting a sensor, so when we actually do have it physically and integrated with our PCB, I can continue in tuning and testing the conversion module for the latency and CPI setting of our physical part. My progress is a bit behind because of this, but since we have our MCU’s in-hand now, I plan to send some “fake” CPI data from the MCU to try and better prime the conversion module for the real data when we get our sensor physically. This, in addition to cutting down in weight on our 3D housing by trimming excess plastic, is what I plan to get done in the next week.

Christian’s Status Report for 2/21/26

This week I was able to get the first physical 3D print for our stylus housing and start on the next iteration, as well as update our conversion module plan.

Our current stylus housing is a bit short, but the thickness of it sits comfortably in the hand. Even though we don’t have our MCU yet, I personally have a different MCU model from the same company that has the same dimensions, so I was able to test the fit of the housing with that. Within this next week, in addition to making the stylus longer, I am splitting the body in two to make it easier to insert and remove parts. I will also rearrange the positioning of the parts some to account for our IMU needing to be tested in variable positions to get the most accurate reading in relation to hand motion.

In terms of the conversion module, I came upon a really great Python library called pygame that natively works with the OS to use pixels as its measurement distance and directly grabs dx/dy data from the Bluetooth device buffer before it’s optimized by the OS. This simplifies the work needed to be done for our conversion module, and allows me to focus more on helping make sure our MCU and sensor outputs the optimal CPI for our application so that our users have a smooth drawing experience. I used Gemini to help with making a test program that measures x and y differences of CPI and pixel counts using the pygame library.

Progress is going well, I just need to send in the next iteration of our 3D print this weekend.

 

Christian’s Status Report for 2/14/26

This week I completed the first draft iteration of our stylus parts housing, and started on the conversion module for our physical distance to pixel distance software module.

For the stylus housing, I imported a 3D CAD for the MCU we are using and formed a 3D block dimension for the MCU’s board. Since we are still leaning towards using the optical motion sensor rather than relying only on the IMU, I included a block for the PWM optical sensor that accounts for the ~1mm clearance needed for the sensor to work. I also included a block for our rechargeable Li-ion battery. I then formed the first iteration of our stylus housing around the dimensions of these parts.

For the conversion module, I started on the basic math needed to take x-y data from an external controller and convert it to distance on a computer screen with bounding boxes. The actual steps needed to implement this conversion are quite simple, so the real challenge will come from tuning these equations when we test with whichever motion sensor we order.

Progress this week is a bit behind because I needed to get used to using Fusion360 again after about a year. I will ensure I’m caught up by cutting the 3D CAD iteration time in half by potentially using multiple 3D printers at a time if resources allow for it.

In this next week I plan to test the fit of our initial housing iteration with some similarly sized MCU and sensor parts, and I further improve and iterate the design by adding sections for buttons and slots to more firmly hold our parts together. I will also test the current conversion module with an Arduino Nano microcontroller to make sure that the baseline equations work well before we move on to the optical sensor.

Christian’s Status Report for 2/7/26

This week I helped specify use case requirements for our project to ensure that our MVP is indeed viable, including tallying up the weight, price, and helping estimate the latency requirements to look towards how usable our product will be. In addition to this, I planned out our semester work schedule in the gantt chart, and recently edited it to account for our shifted work schedule.

Within the next week, I hope to have a rough draft of both the physical position to digital position conversion module and the 3D print housing CAD done. As long as I start on these two things this weekend, I should be on schedule.