The Process Blog

Week 3 - 02/15/2026: Issues, Issues, and More Issues

Updated on 02/22/2026

This week I felt like I didn't get a lot physically done or at least have nothing to show for the work I put in. This is because of the endless errors I would get when compiling different programs that have BLE in them and seem fruitful. I started out this week looking into Expo with development build instead of Expo Go. I started using the Android devices I recieved from Dr. McVey for this because it was easier to obtain Developer Options. It took little to no effort whereas for Apple I signed up to be a developer on the software, but there's procedures in place, so I stopped trying because it might actually cost money. Due to using Expo with a development build instead of Expo Go, I decided to try this website again: BLE Expo Blog. However, when I try to run this person's program that I downloaded from GitHub, it errors out with a versioning error. This means it may be too old to run even though it's from 2024. Although, the blog did provide some key details on how BLE devices function. I learned that there is a peripheral and a mode within BLE and that those are the two things connecting to each other.

The other part to this week other than all errors with BLE programs is that there was a project from 2024 that was similar to mine. I looked at his documentation and followed all the way through his installation instructions. This person who made the project, Elliot Ward, used React Native as well, but with no environment and only for Android. Following his documentation, I was able to run and compile his app; however, when the app scans for beacons I see a long list of null named bluetooth devices, and the application times out after searching for 20 seconds. No matter how many beacons are turned on or how close they are to the phone, changes this output. However, the idea is there, so I will need to parse out what needs to be done in order for at least one beacon to connect to the phone. At the moment, it doesn't seem like I have hit a lot of success with the project, so Dr. McVey has suggested to switch gears and make the UI of an outline for an application. This way I can still be productive while trying to figure out why the programs are not compiling or working with BLE. For this application, since I was able to build and compile Elliot's project, I will start out in bare React Native in union with Andriod Studio and will focus on one operating system at the moment.

Week 2 - 02/08/2026: Starting Line and Mini Poster Sessions

Updated on 02/13/2026

This week I started to look at React Native instead of React because of the format I want to build my app in. I want it to be as close to a physical app as possible. I started by looking at the implementation on the website for React Native and found that it was suggested to use Expo GO. I also liked that Expo GO was cross-platform between IOS and Android. Not knowing what this was, I researched it a bit first by half-creating one of their tutorials. I was able to create a partial app by doing this and it gave me an idea of the file structures and how the code works within Expo GO. Using this application, I was able to see this app on my phone as well as in a browser. However, when I started to investigate how to incorporate Bluetooth or BLE into Expo GO, I ran into some issues. Any program that I was able to find online that dealt with BLE was from 2024, and wouldn't function correctly on my phone or computer. It kept running something, but then stopping where the JavaScript started. This was largely frustrating as it seems that the software from 2 years ago should hypothetically work. It could have been due to me not knowing the software well and just needing to have packages I wasn't aware of or it could be due to Expo GO releasing new software in the past few years. I was unable to figure this bug out, so I need to pivot again and instead use a different environment from React Native. I haven't been able to test this out quite yet, but I will begin to try this next week.

The other part to this week were the Mini-Poster Sessions my class and I had. The sessions were held in class and each person presented twice to three different people each time. The sessions were helpful because it allowed people to learn about other projects and the technical details behind them, but also the presenter was able to gain insights into their project from others that they were maybe not thinking about. For me, it was helpful to think through where I am going to store the data both my app and "helper" application will need in order to communicate. I am thinking that the data will be stored somewhere on the CompSci04 server, so that both applications can communicate to the server and grab the information it needs. It also allowed me to think through which pieces of data each Clue will have. In this case, it will hold an UUID, a GPS Coordinate (to help guide before BLE kicks in), and the text of the clue. There may be some other elements to this, but the mini poster sessions encouraged me to find out what to store and where to store the data I will need to run both apps.

Week 1 - 02/02/2026: Basic Implementation

Updated on 02/04/2026

This week I started to use React and Node.js to create a "Hello world!" app. I was able to connect the different pieces together and was also able to connect my phone to the local instance on my pc. I did this by connecting them to the same wifi network and typing in the IP address before the port number on my phone's browser. My next steps will be to think throughly about what I want the user to do with the UI and a rough draft of what that may look like on the welcome screen. I also need to know quickly if the method I chose will allow me to connect and see the beacons with bluetooth. If this method doesn't work, I will pivot to use React Native instead.

Week 0 - 01/26/2026: Initial Research and New Website!

Updated on 02/04/2026

This week I was given my project and its requirements. I decided I wanted to work with React in order to make an application that connects to the beacons. My first steps were to research React and go through its documentation. I also needed to download some applications to connect to the computer science server and to make this website! During this week, I also needed to make a decision on where to create my website. I had two options: WordPress or from a html template. As you may have guessed, I decided to use the html template option.