All Projects → kapusta → pzgps

kapusta / pzgps

Licence: Apache-2.0 License
Read GPS data from a PiZero in a single page web app via a WebSocket

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to pzgps

rpi boat utils
Utilities for Raspberry Pi, mostly for usage on a boat. Includes UART control scripts, traffic measurement tools for Mikrotik (RouterOS) and OpenWrt, AIS wireless daemon, AIS decoder and an extensible boat & IoT sensor daemon for Signal K.
Stars: ✭ 71 (+491.67%)
Mutual labels:  gps, gpsd
chatr
Chat app using Azure Web PubSub, Static Web Apps and other Azure services
Stars: ✭ 51 (+325%)
Mutual labels:  websockets
crank4go
API Gateway implemented in Golang
Stars: ✭ 124 (+933.33%)
Mutual labels:  websockets
browserglue
Exposes multiple OSC connections to the browser through WebSockets
Stars: ✭ 21 (+75%)
Mutual labels:  websockets
addon-traccar
Traccar - Home Assistant Community Add-ons
Stars: ✭ 65 (+441.67%)
Mutual labels:  gps
Sessel
Document RDFizer for CouchDB
Stars: ✭ 22 (+83.33%)
Mutual labels:  couchdb
React-Help-Desk
Help desk style live chat with administrative control panel in React, Node.js and Websockets
Stars: ✭ 29 (+141.67%)
Mutual labels:  websockets
android-amap-track-collect
这阵子由于项目需要,需要从手机上采集用户的运动轨迹数据,这样的功能大家都见到的很多了,比如咕咚、悦动圈,对跑步运动轨迹数据进行采集,再如,微信运动、钉钉运动,对于每一天你走步进行计数,如果要记录轨迹就离不开的手机定位,如果要记录步数那就离不开陀螺仪(角速度传感器),花了一天多的时间实现了一个定位数据实时采集的功能。
Stars: ✭ 50 (+316.67%)
Mutual labels:  gps
AG NTRIP ESP
AG Rooftop controller with NTRIP client and IMU (ESP32 Controller)
Stars: ✭ 25 (+108.33%)
Mutual labels:  gps
bong-bong
Open public chat service built for the web.
Stars: ✭ 17 (+41.67%)
Mutual labels:  websockets
RouteDirectionMap
an android application that draws a possible google map route between two points. We’ll be using Google Maps Directions API in our application.
Stars: ✭ 17 (+41.67%)
Mutual labels:  gps
megaphone
Hear ye, hear ye 📣
Stars: ✭ 15 (+25%)
Mutual labels:  websockets
node-rtsp-stream-es6
Stream any RTSP stream and output to websocket for consumption by jsmpeg. 📹
Stars: ✭ 91 (+658.33%)
Mutual labels:  websockets
Ionic-CouchDB-chat-app
Simple chat mobile app, like whatsApp lite version
Stars: ✭ 13 (+8.33%)
Mutual labels:  couchdb
SnorkTracker
GPS IoT tracker board for scanning gps and environment information and sending this to a MQTT server via GPRS.
Stars: ✭ 38 (+216.67%)
Mutual labels:  gps
realtime-chat-go-react
An example of a Real-Time Chat Application built using React.js and Go!
Stars: ✭ 61 (+408.33%)
Mutual labels:  websockets
canvas
Draw on an HTML 2D canvas in a web browser from a server program using WebSockets.
Stars: ✭ 71 (+491.67%)
Mutual labels:  websockets
teltonika-fm-parser
Teltonika fm xxxx protocol encoder and decoder
Stars: ✭ 45 (+275%)
Mutual labels:  gps
Study-Room
Connect and study together with friends over text and voice channels, over a click of a button. Web application for chat and audio streaming.
Stars: ✭ 21 (+75%)
Mutual labels:  websockets
text
An experiment with WebSockets and the human condition.
Stars: ✭ 51 (+325%)
Mutual labels:  websockets

pzgps

The goal of this project is to collect data from a GPS unit connected to a Raspberry Pi Zero and stream that data out to a web front end via a WebSocket.

Lerna

This project uses Lerna to manage the server and front end packages (in --independant mode). If you want to develop anything, you'll need to install Lerna so you can lerna bootstrap which will install all of the dependencies for each repo.

npm install --global lerna

Pull Requests Accepted!

  • Please feel free to submit pull requests.
  • This project is meant to be a sandbox for learning various things, so expect things to change.
  • If this info turns out to be useful to you, please let me know!

Using the Server Package

The server package, that provides the GPS data over the WebSocket, resides in /packages/pzgps-server/ and has a thorough README.md that you should read.

Using the Front End Packages

Preact

Currently the Preact version of the front end has the most code/features/effort.

Run the webserver with npm start.

Note the packages/pzgps-preact/src/lib/conf.js file, which should be modified to match your pizero's name on your network. You can change the name by logging into the pizero, then...

  • raspi-config
  • Go to Advanced Options
  • Go to Hostname
  • Type in a new hostname then hit Ok

Enabling a MapQuest staticmap

One of the views can load a Mapquest "staticmap" if you have a "Consumer Key" and provide a module from the NodeJS application that includes that key.

  • Register for a developer account for free.

  • Go to your new profile, and click the "Manage Keys" on the left side menu.

  • Click the "Create a New Key" button and provide a name (callback url is not needed for this project).

  • You can always find your Consumer Key on the "Manage Keys" page after creating one.

  • Make a file in the /packages/pzgps-server/lib directory named mqkey.js and format it like the example below.

    module.exports = { 'consumerKey': 'PASTE YOUR CONSUMER KEY HERE' };

When starting the server use the --mq flag. An NPM command is provided in /packages/pzgps-server/package.json that will start with the MapQuest module included (eg, npm run withMapquest will execute node index.js --port 9000 --mq).

Assuming all of the above is in place, the MapQuest component in the UI will receive the key over the WebSocket and use it to formulate the URL to get the static map. Because the client is receiving updates from the server continually, the map will update if the coordinates change.

AngularJS

In the /packages/pzgps-angular1/ directory, run npm start to start the webserver. The default port of the webserver can be changed in the /packages/pzgps-angular1/bs-config.json file.

ReactJS

In the /packages/pzgps-reactjs/ directory, run npm start to start the webserver. This project uses webpack and will auto-reload your browser for you.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].