Author: davidx

(12/4) Weekly Status Update: David

(12/4) Weekly Status Update: David

This week I got a lot of work done. I successfully implemented extremely low power deep sleep modes. All that’s left is to profile it with a multimeter to see the sleep mode current drop to < 1mA. At the same time, I will be 

(11/22) Weekly Status Update: David

(11/22) Weekly Status Update: David

This week I got lots of things done. I successfully ported a fragile implementation of the current wifi signal scraping onto the wearable device. Next up is getting low power modes working as well as implementing a debug port for this wearable. I also need 

(11/15) Weekly Status Update: David

(11/15) Weekly Status Update: David

This week was spent primarily working out bugs with porting the code to the ATSAMD21 processor that the Trinket M0 uses. In addition, we ran into more problems with lack of I/O, which was solved with using all of the available data lines on the USB port provided by the ATSAMD21. I got clock switching to work so that the processor can now run at a clock speed suitable for communication with the board. In addition, I had issues with attaching one of the wifi breakout boards to the raspi zero w directly, so as a patch, I currently have an Arduino acting as a middleman between the Raspi Zero W and the wifi breakout board. I hope to have the ported code working by the next status update.

(11/08) Weekly Status Update: David

(11/08) Weekly Status Update: David

This time around, finally got the new hardware in. I spent this week soldering debug ports on the new hardware. Unfortunately, I ripped one of the debug pads off the board so… one of the boards is unprogrammable… but the other one works fine. I’m 

(11/08) Weekly Team Status Update

(11/08) Weekly Team Status Update

On the embedded side, there were major setbacks, mainly due to completely rendering one of our new boards unusable (thank soldering). There were also major toolchain changes needed in order to support two active branches of development between the wearable and the button, both of 

(11/01) Weekly Status Update: David

(11/01) Weekly Status Update: David

This week was pretty hectic. After realizing the the GEMMA M0 lacked sufficient I/O ports to adequately control the breakout board, we were in a frantic rush to replace it with new hardware. We settled on the Trinket M0, which offers more I/O. We almost ran into a similar issue, but luckily, it is possible to delegate one of the USB data pins as another control signal for our wifi board. As such, not much real programming got done besides waiting for hardware and preparing for demo.

(10/25) Weekly Status Update: David

(10/25) Weekly Status Update: David

This week was very exciting for me. In addition to working out some major kinks in my wifi connectivity, I was finally able to connect to Jeffrey’s test server that was set up on the RPi4. From there, it was only a little while longer 

(10/18) Weekly Status Update: David

(10/18) Weekly Status Update: David

This past week was a great time of development on the embedded systems side of things! We hit a couple milestones. I finally got communication working smoothly with the breakout board. The Wi-Fi driver is tentatively complete. I was able to successfully use the driver 

(10/11) Weekly Status Update: David

(10/11) Weekly Status Update: David

So there were lots of events that took place over the past week. First of all, I got to spend many hours looking over an oscilloscope and debugging SPI communication with the Nucleo board. Since the Wifi board does not have documentation on the format of the SPI commands, I needed to dig through some source code for the Adafruit firmware, looking for the format of the commands to send. Luckily, the format was easy enough to understand. Unfortunately, the source code was in Python, so I needed to convert this into C code. After ages missing timing requirements and getting corrupt data through SPI, I was finally able to send the first command to the wifi chip: a command to retrieve its own MAC address. Great. After this, the process went much more smoothly. I was actually able to control the Wifi chip to do a wifi scan in order to get a list of MAC addresses and RSSIs. Unfortunately, I ran into an issue where the device is hard faulting after some time, so I need to debug this whenever I get the chance. Either that, or have my library return an error for an unsuccessful wifi scan. I also spent a great deal of time working on the design report, coming up with some probability functions for our report as well as researching different methods of location detection using Wi-Fi. In hindsight, it would have been great to use FTM RTT to calculate the location, but I don’t believe there are any sufficiently small form factor wifi breakout boards for our purpose. I also made major changes to our schedule and remade all of the diagrams to have them be more specific.

(10/4) Weekly Update: David

(10/4) Weekly Update: David

This week was a lot of actually getting stuff working. All of our parts came in so I deep dived into the embedded side of things. The hardest part was trying to get a working toolchain to program the STM32. I had to make major