A bikeshare for college students by college students previously hosted at redbarbikes.com
As a 13-person team in the Gemstone Program at the University of Maryland, College Park, we prototyped a smartlock to be used for a stationless bikeshare. We think that bikeshares are exciting systems that promote biking as a sustainable, convenient, and healthy alternative and we hope to see them on college campuses across the nation. This technology is one such concept that might help make stationless bikeshares more secure and cost-effective for college campuses.
In typical Gemstone fashion, our name is an acronym for: Bikeshare-Intended Keyless Encrypted Smartlocks
We hope you find this repository helpful and feel free to open an issue to reach out to me (@kyleking) and/or the rest of the team. For additional information on our smartlock and system, please see our complete thesis hosted as an interactive Gitbook.
Our system is based on a custom smartlock that sits below the bike seat and securely attaches to the frame. In the final implementation it would allow for the seat to be adjustable, but would use a mechanical catch to prevent the seat post from being completely removed. Additionally, the wheels would be secured using locking skewers, which freed us to develop an extremely convenient lock that only needed to directly secure the frame. The design rotates out to be locked to a bike rack and rotates back in for riding. Behind the lock ring there is an electronic control system based on an Arduino Uno.
Each lock is equipped with an RFID reader that approves user access using our wireless mesh network and web application. The wireless mesh network is built using XBee modules. The modules serve either as an end device on each bike, a router to send the signal over a greater distance, or attached to a Raspberry Pi as a coordinator to relay the information to the web application. This system allows for a great level of flexibility and rapid two-way communication.
Device | Operation |
---|---|
RFID - Elechouse NFC | Collects user RFID Tag |
Arduino and XBee End Device | Sends RFID tag, location, and lock state information to nearest router |
XBee router(s) | Passes the received information on to the coordinator |
Coordinator | Receives and parses the incoming message, then calls a remote Meteor method |
Web application | Confirms RFID authenticity, adds necessary information to the database, and returns a JSON object of results |
Coordinator | Runs callback function on Meteor method completion. Sends a return command to the specific end device based on the received results |
Arduino and XBee End Device | Receives message and makes appropriate action (keep the lock closed or unlock) and sends a "message received" response to the coordinator |
The web application can utilize the information received from the mesh network and display available bike locations, track user rides, and conduct administrative tasks. To explore the features and code that makes this possible see the website guide below. To test the features of the website, please visit redbarbikes.com.
Once on the site, you test different user roles by signing in as an administrator or student with the light blue buttons on the login page. Try out exploring the administrator dashboard by searching each table column, then click on any row to open up an additional slide in panel. On the map page, try reserving a bike by clicking any of the grey icons.
For additional information on our smartlock and system, please see our complete thesis on the literature review, methodology, and design of the smartlock.
Our lock was built to push the boundaries of the technology for stationless bikeshares. We wanted to explore the potential of the "new kid on the block" framework, Meteor; push the boundaries of XBee modules as a campus-wide mesh network; and design a user experience around a convenient and secure smartlock. While the foundation for a bikeshare, this lock would make the most sense to stationless bikeshare operators seeking to improve user value, while reducing system costs.
However, if we were to build this bike lock into a bikeshare, we conducted preliminary research into initial installation costs and branding. Our brand was specific to the Maryland campus that we started on. We were inspired by the "redbars" that would appear in between classes as a warning that a student would have difficulty in arriving on time. This would often appear when a class was on North Campus, but the student's next class was on South Campus and there would only be a ten minute gap to traverse the campus. Our bikeshare was meant to solve transportation issues exactly like this.
Download one of the version of the repository from the releases page (TODO: link). To get the most up to date version, press the Download Zip
button above.
Once downloaded and unzipped, enter the directory (i.e. cd ~/Downloads/TeamBikes
).
To learn about each subfolder, visit the specific README. For example, to learn more about the Meteor Web Application, go to /Meteor Web Application/README.md
.
Folder | Contents |
---|---|
/Meteor Web Application/ |
The source code for the deployed web application available at redbarbikes.com |
/Coordinator_Raspberry Pi/ |
The Node.js application that runs on the coordinator device for remote communication to the Meteor web application |
/End Device_Arduino/ |
Example Arduino code used in prototyping the smartlock |
/README/ |
Images and content used in the README.md page you are reading |
If you have any comments or questions, please visit the issues section and let us know!
See screenshots of previous and current iterations of the website
Explore the smartlock code