All Projects → Fitbit → Golden Gate

Fitbit / Golden Gate

Licence: other
Framework to connect wearables and other IoT devices to mobile phones, tablets and PCs with an IP-based protocol stack over Bluetooth Low Energy

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Golden Gate

Ceras
Universal binary serializer for a wide variety of scenarios https://discord.gg/FGaCX4c
Stars: ✭ 374 (+67.71%)
Mutual labels:  network, networking, protocol
Iptools
PHP Library for manipulating network addresses (IPv4 and IPv6)
Stars: ✭ 163 (-26.91%)
Mutual labels:  network, networking, ip
Ruffles
Lightweight and fully managed reliable UDP library.
Stars: ✭ 131 (-41.26%)
Mutual labels:  network, networking, protocol
Exscript
A Python module making Telnet and SSH easy
Stars: ✭ 337 (+51.12%)
Mutual labels:  network, networking, protocol
Pypacker
📦 The fastest and simplest packet manipulation lib for Python
Stars: ✭ 216 (-3.14%)
Mutual labels:  network, protocol, ip
Medium
Independent telecommunication environment
Stars: ✭ 171 (-23.32%)
Mutual labels:  network, networking
H Ble
Android Ble类库,基于回调,暴露搜索、连接、发送、接收、断开连接等接口,无需关心细节操作即可进行Ble通信。
Stars: ✭ 171 (-23.32%)
Mutual labels:  ble, bluetooth
Quic.net
A .NET C# Implementation of QUIC protocol - Google's experimental transport layer.
Stars: ✭ 173 (-22.42%)
Mutual labels:  networking, protocol
Esp32 Ble Mouse
Bluetooth LE Mouse library for the ESP32 (Arduino IDE compatible)
Stars: ✭ 180 (-19.28%)
Mutual labels:  ble, bluetooth
Nstack
Userspace TCP/IP stack for Linux
Stars: ✭ 162 (-27.35%)
Mutual labels:  networking, tcp-ip
Androidblemanager
android BLE device scan and connect manager
Stars: ✭ 174 (-21.97%)
Mutual labels:  ble, bluetooth
Txeh
Go library and CLI utilty for /etc/hosts management.
Stars: ✭ 181 (-18.83%)
Mutual labels:  network, networking
Simplenet
An easy-to-use, event-driven, asynchronous network application framework compiled with Java 11.
Stars: ✭ 164 (-26.46%)
Mutual labels:  network, networking
Reactivebeacons
Android library scanning BLE beacons nearby with RxJava
Stars: ✭ 171 (-23.32%)
Mutual labels:  ble, bluetooth
Litenetlib
Lite reliable UDP library for Mono and .NET
Stars: ✭ 2,179 (+877.13%)
Mutual labels:  network, networking
Continuity
Apple Continuity Protocol Reverse Engineering and Dissector
Stars: ✭ 180 (-19.28%)
Mutual labels:  ble, bluetooth
Xiaomi Kettle
Xiaomi Kettle BLE protocol reverse-engineered
Stars: ✭ 187 (-16.14%)
Mutual labels:  ble, protocol
Scaproust
Implementation of the nanomsg "Scalability Protocols" in rust.
Stars: ✭ 183 (-17.94%)
Mutual labels:  network, networking
Hazel Networking
Hazel Networking is a low level networking library for C# providing connection orientated, message based communication via TCP, UDP and RUDP.
Stars: ✭ 194 (-13%)
Mutual labels:  networking, protocol
Ble
Connect to and interact with Bluetooth LE peripherals.
Stars: ✭ 156 (-30.04%)
Mutual labels:  ble, bluetooth

Project Golden Gate

Golden Gate bridge image - public domain photo via Good Free Photos

⚠️ Work In Progress

This documentation is not yet complete. As we migrate the project from an internal project to one that can be shared with others, we are busy migrating some of the documentation from internal Wiki pages, Google docs and slide decks.

Golden Gate is a portable cross-platform framework that offers reliable and secure network communication between different combinations of embedded devices, mobile applications and desktop applications over Bluetooth Low Energy.

The framework provides developers with a familiar model, allowing them to implement their functionality the same way they would in other networked environments, leveraging familiar standards like CoAP, WebSockets, HTTP, MQTT, TLS, and TCP/UDP/IP, even when the underlying operating system or transport doesn't natively support those. It can run in many environments, from embedded systems with very limited resources like wearables and IoT devices, to mobile and desktop. The initial focus is on Bluetooth Low Energy (BLE) connections, but the framework is general in nature, it is designed to work with any type of transport. BLE APIs on mobile operating systems like iOS and Android, as well as most embedded APIs, only offer the limited functionality of BLE GATT; so the Golden Gate framework's networking stack extends that low-level access, allowing a complete IP-based stack to be layered on top of it.

The project consists of:

  • A core library written in C
  • Language bindings for higher level languages, including Kotlin and Swift
  • A modular build system based on CMake
  • Code examples
  • Tools and applications
  • Support for test automation
  • Documentation

By building the core libraries and sample applications included in the project, you'll be able to start experimenting right away with different combinations of devices connecting and communicating with each other with CoAP clients and servers, over a Bluetooth or WiFi connection, including:

  • iPhones and iPads
  • Android phones and tablets
  • Desktops and laptops (macOS, Linux, Windows)
  • Embedded development boards (Nordic nRF52840-DK, Espressif ESP32, ...)

By integrating the library in your own app or IoT device, leveraging some of the examples included in the project, you will be able to start building your own communicating applications and services.

Where To Start

Visit the online documentation (or build the doc from within the project).

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].