Skip to content

Commit 64aac3f

Browse files
committed
squashed:
Fill in initial details after cookie-cutter creation. Eddystone URL Beacon works; LocationBeacon works but why wrong endian?? fix typos; add comment re big-endian UUID's in LocationBeacon Do UUID parsing in Python; beacon comments touchup Add UUID __repr__ don't subclass bleio; add PeripheralServer and UARTServer strawman uart Use CharacteristicBuffer.
1 parent e3fc959 commit 64aac3f

19 files changed

+1204
-1
lines changed

CODE_OF_CONDUCT.md

Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
# Adafruit Community Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as
6+
contributors and leaders pledge to making participation in our project and
7+
our community a harassment-free experience for everyone, regardless of age, body
8+
size, disability, ethnicity, gender identity and expression, level or type of
9+
experience, education, socio-economic status, nationality, personal appearance,
10+
race, religion, or sexual identity and orientation.
11+
12+
## Our Standards
13+
14+
We are committed to providing a friendly, safe and welcoming environment for
15+
all.
16+
17+
Examples of behavior that contributes to creating a positive environment
18+
include:
19+
20+
* Be kind and courteous to others
21+
* Using welcoming and inclusive language
22+
* Being respectful of differing viewpoints and experiences
23+
* Collaborating with other community members
24+
* Gracefully accepting constructive criticism
25+
* Focusing on what is best for the community
26+
* Showing empathy towards other community members
27+
28+
Examples of unacceptable behavior by participants include:
29+
30+
* The use of sexualized language or imagery and sexual attention or advances
31+
* The use of inappropriate images, including in a community member's avatar
32+
* The use of inappropriate language, including in a community member's nickname
33+
* Any spamming, flaming, baiting or other attention-stealing behavior
34+
* Excessive or unwelcome helping; answering outside the scope of the question
35+
asked
36+
* Trolling, insulting/derogatory comments, and personal or political attacks
37+
* Public or private harassment
38+
* Publishing others' private information, such as a physical or electronic
39+
address, without explicit permission
40+
* Other conduct which could reasonably be considered inappropriate
41+
42+
The goal of the standards and moderation guidelines outlined here is to build
43+
and maintain a respectful community. We ask that you don’t just aim to be
44+
"technically unimpeachable", but rather try to be your best self.
45+
46+
We value many things beyond technical expertise, including collaboration and
47+
supporting others within our community. Providing a positive experience for
48+
other community members can have a much more significant impact than simply
49+
providing the correct answer.
50+
51+
## Our Responsibilities
52+
53+
Project leaders are responsible for clarifying the standards of acceptable
54+
behavior and are expected to take appropriate and fair corrective action in
55+
response to any instances of unacceptable behavior.
56+
57+
Project leaders have the right and responsibility to remove, edit, or
58+
reject messages, comments, commits, code, issues, and other contributions
59+
that are not aligned to this Code of Conduct, or to ban temporarily or
60+
permanently any community member for other behaviors that they deem
61+
inappropriate, threatening, offensive, or harmful.
62+
63+
## Moderation
64+
65+
Instances of behaviors that violate the Adafruit Community Code of Conduct
66+
may be reported by any member of the community. Community members are
67+
encouraged to report these situations, including situations they witness
68+
involving other community members.
69+
70+
You may report in the following ways:
71+
72+
In any situation, you may send an email to <[email protected]>.
73+
74+
On the Adafruit Discord, you may send an open message from any channel
75+
to all Community Helpers by tagging @community helpers. You may also send an
76+
open message from any channel, or a direct message to @kattni#1507,
77+
@tannewt#4653, @Dan Halbert#1614, @cater#2442, @sommersoft#0222, or
78+
@Andon#8175.
79+
80+
Email and direct message reports will be kept confidential.
81+
82+
In situations on Discord where the issue is particularly egregious, possibly
83+
illegal, requires immediate action, or violates the Discord terms of service,
84+
you should also report the message directly to Discord.
85+
86+
These are the steps for upholding our community’s standards of conduct.
87+
88+
1. Any member of the community may report any situation that violates the
89+
Adafruit Community Code of Conduct. All reports will be reviewed and
90+
investigated.
91+
2. If the behavior is an egregious violation, the community member who
92+
committed the violation may be banned immediately, without warning.
93+
3. Otherwise, moderators will first respond to such behavior with a warning.
94+
4. Moderators follow a soft "three strikes" policy - the community member may
95+
be given another chance, if they are receptive to the warning and change their
96+
behavior.
97+
5. If the community member is unreceptive or unreasonable when warned by a
98+
moderator, or the warning goes unheeded, they may be banned for a first or
99+
second offense. Repeated offenses will result in the community member being
100+
banned.
101+
102+
## Scope
103+
104+
This Code of Conduct and the enforcement policies listed above apply to all
105+
Adafruit Community venues. This includes but is not limited to any community
106+
spaces (both public and private), the entire Adafruit Discord server, and
107+
Adafruit GitHub repositories. Examples of Adafruit Community spaces include
108+
but are not limited to meet-ups, audio chats on the Adafruit Discord, or
109+
interaction at a conference.
110+
111+
This Code of Conduct applies both within project spaces and in public spaces
112+
when an individual is representing the project or its community. As a community
113+
member, you are representing our community, and are expected to behave
114+
accordingly.
115+
116+
## Attribution
117+
118+
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
119+
version 1.4, available at
120+
<https://www.contributor-covenant.org/version/1/4/code-of-conduct.html>,
121+
and the [Rust Code of Conduct](https://www.rust-lang.org/en-US/conduct.html).
122+
123+
For other projects adopting the Adafruit Community Code of
124+
Conduct, please contact the maintainers of those projects for enforcement.
125+
If you wish to use this code of conduct for your own project, consider
126+
explicitly mentioning your moderation policy or making a copy with your
127+
own moderation policy so as to avoid confusion.

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
The MIT License (MIT)
2+
3+
Copyright (c) 2018 Dan Halbert for Adafruit Industries
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

README.rst

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
Introduction
2+
============
3+
4+
.. image:: https://readthedocs.org/projects/adafruit-circuitpython-ble/badge/?version=latest
5+
:target: https://circuitpython.readthedocs.io/projects/ble/en/latest/
6+
:alt: Documentation Status
7+
8+
.. image:: https://img.shields.io/discord/327254708534116352.svg
9+
:target: https://discord.gg/nBQh6qu
10+
:alt: Discord
11+
12+
.. image:: https://travis-ci.com/adafruit/Adafruit_CircuitPython_ble.svg?branch=master
13+
:target: https://travis-ci.com/adafruit/Adafruit_CircuitPython_ble
14+
:alt: Build Status
15+
16+
This module provides higher-level BLE (Bluetooth Low Energy) functionality, building on the native `bleio` module.
17+
18+
Dependencies
19+
=============
20+
This driver depends on:
21+
22+
* `Adafruit CircuitPython <https://github.com/adafruit/circuitpython>`_
23+
24+
Please ensure all dependencies are available on the CircuitPython filesystem.
25+
This is easily achieved by downloading
26+
`the Adafruit library and driver bundle <https://github.com/adafruit/Adafruit_CircuitPython_Bundle>`_.
27+
28+
Usage Example
29+
=============
30+
31+
.. code-block:: python
32+
33+
import ble
34+
# Put an advertising or simple peripheral example here.
35+
36+
Contributing
37+
============
38+
39+
Contributions are welcome! Please read our `Code of Conduct
40+
<https://github.com/adafruit/Adafruit_CircuitPython_ble/blob/master/CODE_OF_CONDUCT.md>`_
41+
before contributing to help this project stay welcoming.
42+
43+
Building locally
44+
================
45+
46+
Zip release files
47+
-----------------
48+
49+
To build this library locally you'll need to install the
50+
`circuitpython-build-tools <https://github.com/adafruit/circuitpython-build-tools>`_ package.
51+
52+
.. code-block:: shell
53+
54+
python3 -m venv .env
55+
source .env/bin/activate
56+
pip install circuitpython-build-tools
57+
58+
Once installed, make sure you are in the virtual environment:
59+
60+
.. code-block:: shell
61+
62+
source .env/bin/activate
63+
64+
Then run the build:
65+
66+
.. code-block:: shell
67+
68+
circuitpython-build-bundles --filename_prefix adafruit-circuitpython-ble --library_location .
69+
70+
Sphinx documentation
71+
-----------------------
72+
73+
Sphinx is used to build the documentation based on rST files and comments in the code. First,
74+
install dependencies (feel free to reuse the virtual environment from above):
75+
76+
.. code-block:: shell
77+
78+
python3 -m venv .env
79+
source .env/bin/activate
80+
pip install Sphinx sphinx-rtd-theme
81+
82+
Now, once you have the virtual environment activated:
83+
84+
.. code-block:: shell
85+
86+
cd docs
87+
sphinx-build -E -W -b html . _build/html
88+
89+
This will output the documentation to ``docs/_build/html``. Open the index.html in your browser to
90+
view them. It will also (due to -W) error out on any warning like Travis will. This is a good way to
91+
locally verify it will pass.

adafruit_ble/__init__.py

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# The MIT License (MIT)
2+
#
3+
# Copyright (c) 2018 Dan Halbert for Adafruit Industries
4+
#
5+
# Permission is hereby granted, free of charge, to any person obtaining a copy
6+
# of this software and associated documentation files (the "Software"), to deal
7+
# in the Software without restriction, including without limitation the rights
8+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
# copies of the Software, and to permit persons to whom the Software is
10+
# furnished to do so, subject to the following conditions:
11+
#
12+
# The above copyright notice and this permission notice shall be included in
13+
# all copies or substantial portions of the Software.
14+
#
15+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21+
# THE SOFTWARE.
22+
"""
23+
`adafruit_ble`
24+
====================================================
25+
26+
This module provides higher-level BLE (Bluetooth Low Energy) functionality,
27+
building on the native `bleio` module.
28+
29+
* Author(s): Dan Halbert for Adafruit Industries
30+
31+
Implementation Notes
32+
--------------------
33+
34+
The Python classes here wrap rather than subclass the native `bleio` classes, due to limitations of
35+
native subclassing in the current MicroPython language core.
36+
37+
**Hardware:**
38+
39+
inline format: "* `Adafruit Feather nRF52840 Express <https://www.adafruit.com/product/4062>`_"
40+
41+
**Software and Dependencies:**
42+
43+
* Adafruit CircuitPython firmware for the supported boards:
44+
https://github.com/adafruit/circuitpython/releases
45+
46+
"""
47+
48+
# imports
49+
50+
__version__ = "0.0.0-auto.0"
51+
__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_BLE.git"

0 commit comments

Comments
 (0)