Skip to content

Commit

Permalink
Silicon Labs CircuitPython Applications v1.2.1
Browse files Browse the repository at this point in the history
  • Loading branch information
silabs-DanielN authored Oct 13, 2023
1 parent bb77144 commit 8e434d9
Show file tree
Hide file tree
Showing 141 changed files with 132 additions and 76 deletions.
16 changes: 7 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

# Silicon Labs CircuitPython Applications #

[![Version Badge](https://img.shields.io/badge/-v1.2.0-green)](https://github.com/SiliconLabs/circuitpython_applications/releases)
[![Version Badge](https://img.shields.io/badge/-v1.2.1-green)](https://github.com/SiliconLabs/circuitpython_applications/releases)
[![CircuitPython](https://img.shields.io/badge/CircuitPython-v8.2.0+-green)](https://circuitpython.org/downloads?q=silabs)
![License badge](https://img.shields.io/badge/License-Zlib-green)

Expand Down Expand Up @@ -47,16 +47,14 @@ continuous builds. Full release notes are available through

## Project structure

* **bin**
* The bin folder contains binary files required by the project. (e.g.: fonts, pictures)
* **lib**
* The lib folder contains precompiled libraries provided by Adafruit, this folder provides the application logic related files too. These libraries and files are required to run the project.
* **src**
* The src folder provides the code.py named file, this file is the entry point of the example project.
* **device_root**
* This folder contains all of the required files to run the project. The files and folders should be copied into the root folder of the device.
* **lib**
* The lib folder contains precompiled libraries provided by Adafruit, this folder provides the application logic related files too. These libraries and files are required to run the project.

The files from the src and bin folders should be copied into the root of the target board's file system.

Libraries and other application modules should be copied from the lib folder into the lib named folder on the target board.
Ensure that the files and folders from the device_root folder are copied into the root of the target board's file system.


## Documentation ##

Expand Down
11 changes: 6 additions & 5 deletions cp_bluetooth_distance_monitor/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# CircuitPython - Bluetooth - Distance Monitor (VL53L1X) #

![Type badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_distance_monitor_common.json&label=Type&query=type&color=green)
![Technology badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_distance_monitor_common.json&label=Technology&query=technology&color=green)
![License badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_distance_monitor_common.json&label=License&query=license&color=green)
## Overview ##

This project shows a demonstration of a Bluetooth Low Energy distance monitor system using SparkFun Thing Plus Matter - MGM240P development kit and the integrated CircuitPython BLE Stack.
Expand Down Expand Up @@ -32,19 +35,17 @@ To run the example you need to install **Thonny** editor and then follow the ste

> **_NOTE:_** The examples in this repository require CircuitPython v8.2.0 or higher.
2. Install the necessary libraries from Adafruit CircuitPython bundle. You can download the bundle from [here](https://circuitpython.org/libraries). The libraries that used in this project and their version are list in this table below.
2. The lib folder on github contains the necessary library files. You can get updates from the bundle [here](https://circuitpython.org/libraries). The libraries used in this project are listed below.

| Library | Version |
|:----------------- |:------------------|
| adafruit_framebuf | 1.6.1 |
| adafruit_ssd1306 | 2.12.2 |
| adafruit_vl53l1x | 1.1.10 |

3. Upload all the libraries of the lib folder to the CircuitPython device. The binary files should not be uploaded to lib folder in the device, they should have the same hierarchy as the code.py file.
3. Upload all the files and folders from the device_root folder to the CircuitPython device. The files and folders should be copied into the root of the file system on the target device.

4. Copy the content of the code.py and paste it to the code.py file on the CircuitPython device.

5. Run the scripts on the board.
4. Run the scripts on the board.


## How it Works ##
Expand Down
File renamed without changes.
File renamed without changes.
15 changes: 7 additions & 8 deletions cp_bluetooth_environmental_sensing/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# CircuitPython - Bluetooth - Environmental Sensing (CCS811/BME280) #

![Type badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_environmental_sensing_common.json&label=Type&query=type&color=green)
![Technology badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_environmental_sensing_common.json&label=Technology&query=technology&color=green)
![License badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_environmental_sensing_common.json&label=License&query=license&color=green)
## Overview ##

This project aims to implement an environmental sensing system using Sparkfun Thing Plus for Matter - MGM240 development kits and external sensors integrated with the BLE wireless stack and CircuitPython.
Expand Down Expand Up @@ -48,7 +51,8 @@ To run the example you need to install **Thonny** editor and then follow the ste

> **_NOTE:_** The examples in this repository require CircuitPython v8.2.0 or higher.
2. Install the necessary libraries from Adafruit CircuitPython bundle. You can download the bundle from [here](https://circuitpython.org/libraries). The libraries that used in this project and their version are list in this table below.
2. The lib folder on github contains the necessary library files. You can get updates from the bundle [here](https://circuitpython.org/libraries). The libraries used in this project are listed below.

- Sensor device

| Library | Version |
Expand All @@ -64,15 +68,10 @@ To run the example you need to install **Thonny** editor and then follow the ste
| adafruit_framebuf | 1.6.1 |
| adafruit_ssd1306 | 2.12.12 |

3. Upload all the libraries and files of the lib folder to the CircuitPython device. The files in binary folder should not be uploaded to lib folder in the device, they should have the same hierarchy as the **code.py** file.

4. Copy the content of the **code.py** and paste it to the **code.py** file on the CircuitPython device.

- Sensor device: [code.py](application/sensor/code.py)

- Client device: [code.py](application/client/code.py)
3. Upload all the files and folders from the device_root folder to the CircuitPython device. The files and folders should be copied into the root of the file system on the target device.

5. Run the scripts on the board.
4. Run the scripts on the board.

## How it Works ##

Expand Down
16 changes: 7 additions & 9 deletions cp_bluetooth_light_detector/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# CircuitPython - Bluetooth - Light Detector (AS7265x) #

![Type badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_light_detector_common.json&label=Type&query=type&color=green)
![Technology badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_light_detector_common.json&label=Technology&query=technology&color=green)
![License badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_light_detector_common.json&label=License&query=license&color=green)
## Overview ##

This project aims to implement a wireless light detector system using Sparkfun Thing Plus for Matter - MGM240 development kits and external sensors integrated with the BLE wireless stack and CircuitPython.
Expand Down Expand Up @@ -45,6 +48,7 @@ The NeoPixel and SparkFun Thing Plus Matter board can connect via SPI. Connect t

Getting started with [CircuitPython on EFR32 boards](../doc/running_circuitpython.md).


## Setup ##

To run the example you need to install **Thonny** editor and then follow the steps below:
Expand All @@ -53,7 +57,7 @@ To run the example you need to install **Thonny** editor and then follow the ste

> **_NOTE:_** The examples in this repository require CircuitPython v8.2.0 or higher.
2. Install the necessary libraries from Adafruit CircuitPython bundle. You can download the bundle from [here](https://circuitpython.org/libraries). The libraries that are used in this project and their version are listed in the table below.
2. The lib folder on github contains the necessary library files. You can get updates from the bundle [here](https://circuitpython.org/libraries). The libraries used in this project are listed below.
- Sensor device

| Library | Version |
Expand All @@ -66,15 +70,9 @@ To run the example you need to install **Thonny** editor and then follow the ste
|:----------------- |:------------------|
| neopixel_spi | 1.6.1 |

3. Upload all the libraries and files of the lib folder to the CircuitPython device. The files in the binary folder should not be uploaded to the lib folder in the device, they should have the same hierarchy as the **code.py** file.

4. Copy the content of the **code.py** and paste it to the **code.py** file on the CircuitPython device.

- Sensor device: [code.py](sensor/src/code.py)

- Client device: [code.py](client/src/code.py)
3. Upload all the files and folders from the device_root folder to the CircuitPython device. The files and folders should be copied into the root of the file system on the target device.

5. Run the scripts on boards.
4. Run the scripts on the board.

## How it Works ##

Expand Down
17 changes: 7 additions & 10 deletions cp_bluetooth_neopixel_humidity_gauge/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# CircuitPython - Bluetooth - Neopixel humidity gauge (SHTC3) #

![Type badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_neopixel_humidity_gauge_common.json&label=Type&query=type&color=green)
![Technology badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_neopixel_humidity_gauge_common.json&label=Technology&query=technology&color=green)
![License badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_bluetooth_neopixel_humidity_gauge_common.json&label=License&query=license&color=green)
## Overview ##

This project aims to implement a wireless humidity gauge sensing system using Sparkfun Thing Plus for Matter - MGM240 development kits and external sensors integrated with the BLE wireless stack and CircuitPython.
Expand Down Expand Up @@ -40,9 +43,9 @@ To run the example you need to install **Thonny** editor and then follow the ste

1. Flash the corresponding CircuitPython binary for your board. You can visit [circuitpython.org/downloads](https://circuitpython.org/downloads?q=silabs) to download the binary.

>**_NOTE:_** The examples in this repository require CircuitPython v8.2.0 or higher.
> **_NOTE:_** The examples in this repository require CircuitPython v8.2.0 or higher.
2. Install the necessary libraries from Adafruit CircuitPython bundle. You can download the bundle from [here](https://circuitpython.org/libraries). The libraries that used in this project and their version are list in this table below.
2. The lib folder on github contains the necessary library files. You can get updates from the bundle [here](https://circuitpython.org/libraries). The libraries used in this project are listed below.
- Sensor device

| Library | Version |
Expand All @@ -55,15 +58,9 @@ To run the example you need to install **Thonny** editor and then follow the ste
|:----------------- |:------------------|
| neopixel_spi | 1.6.1 |

3. Upload all the libraries and files of the lib folder to the CircuitPython device. The files in binary folder should not be uploaded to lib folder in the device, they should have the same hierarchy as the **code.py** file.
3. Upload all the files and folders from the device_root folder to the CircuitPython device. The files and folders should be copied into the root of the file system on the target device.

4. Copy the content of the **code.py** and paste it to the **code.py** file on the CircuitPython device.

- Sensor device: [code.py](sensor/src/code.py)

- Client device: [code.py](client/src/code.py)

5. Run the scripts on the board.
4. Run the scripts on the board.

## How it Works ##

Expand Down
16 changes: 12 additions & 4 deletions cp_non_wireless_display_demo/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# CircuitPython - Non-Wireless Display Demo (IS31FL3741) #

![Type badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_non_wireless_display_demo_common.json&label=Type&query=type&color=green)
![Technology badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_non_wireless_display_demo_common.json&label=Technology&query=technology&color=green)
![License badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_non_wireless_display_demo_common.json&label=License&query=license&color=green)
## Overview ##

This application code demonstrates the integration of CircuitPython into Silicon Labs Development Kits. It also provides support how to use of an Adafruit IS31FL3741 LED display with Silicon Labs Development Kits. The example showcases how to program the Silabs devkits using CircuitPython and how to display text on Adafruit LED Displays. In this example, you can see how a text displayed on the LED Display: **"Silabs now supports CircuitPython!!!"**.
Expand All @@ -22,6 +25,7 @@ The RGB LED Matrix can easily connected with Sparkfun Thing Plus for Matter - MG

Getting started with [CircuitPython on EFR32 boards](../doc/running_circuitpython.md).


## Setup ##

To run the example you need to install **Thonny** editor and then follow the steps below:
Expand All @@ -30,13 +34,17 @@ To run the example you need to install **Thonny** editor and then follow the ste

> **_NOTE:_** The examples in this repository require CircuitPython v8.2.0 or higher.
2. Install the necessary libraries from Adafruit CircuitPython bundle. You can download the bundle from [here](https://circuitpython.org/libraries).
2. The lib folder on github contains the necessary library files. You can get updates from the bundle [here](https://circuitpython.org/libraries). The libraries used in this project are listed below.

| Library | Version |
|:----------------- |:------------------|
| adafruit_framebuf | 1.6.1 |
| adafruit_is31fl3741 | 1.4.1 |

3. Upload all the libraries and files of the lib folder to the CircuitPython device. The binary files should not be uploaded to lib folder in the device, they should have the same hierarchy as the **code.py** file.

4. Copy the content of the **code.py** and paste it to the **code.py** file on the CircuitPython device.
3. Upload all the files and folders from the device_root folder to the CircuitPython device. The files and folders should be copied into the root of the file system on the target device.

5. Run the scripts on the board.
4. Run the scripts on the board.

## How it Works ##

Expand Down
File renamed without changes.
19 changes: 13 additions & 6 deletions cp_rgb_display_drawing_ili9341/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# CircuitPython - RGB Display Drawing (ILI9341) #

![Type badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_rgb_display_drawing_ili9341_common.json&label=Type&query=type&color=green)
![Technology badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_rgb_display_drawing_ili9341_common.json&label=Technology&query=technology&color=green)
![License badge](https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/SiliconLabs/application_examples_ci/master/circuitpython/cp_rgb_display_drawing_ili9341_common.json&label=License&query=license&color=green)
## Summary ##

This example application code demonstrates how to use CircuitPython and the adafruit_rgb_display and adafruit_touchscreen drivers on Silabs development kits, such as "Sparkfun ThingPlus Matter board," the "xG24 explorer kit," and the "xG24 devkit."
Expand Down Expand Up @@ -44,17 +47,21 @@ Getting started with [CircuitPython on EFR32 boards](../doc/running_circuitpytho

To run the example you need to install **Thonny** editor and then follow the steps below:

1. Install the necessary libraries from Adafruit CircuitPython bundle. You can download the bundle from [here](https://github.com/adafruit/Adafruit_CircuitPython_Bundle). To upload the libraries to CircuitPython device.
1. Flash the corresponding CircuitPython binary for your board. You can visit [circuitpython.org/downloads](https://circuitpython.org/downloads?q=silabs) to download the binary.

2. Upload all the files in lib folder in to CircuitPython device.
> **_NOTE:_** The examples in this repository require CircuitPython v8.2.0 or higher.
3. Copy the content of the **code.py** file in the src folder and paste it to the **code.py** file on the CircuitPython device.
2. The lib folder on github contains the necessary library files. You can get updates from the bundle [here](https://circuitpython.org/libraries). The libraries used in this project are listed below.

4. Run the scripts on the board.
| Library | Version |
|:----------------- |:------------------|
| adafruit_imageload | 1.17.1 |
| adafruit_ili9341 | 1.3.8 |
| adafruit_touchscreen | 1.2.1 |

**Note:** Make sure that you have flashed the corresponding CircuitPython firmware for your board. You can visit [circuitpython.org/downloads](https://circuitpython.org/downloads?q=silabs) to download the firmware.
3. Upload all the files and folders from the device_root folder to the CircuitPython device. The files and folders should be copied into the root of the file system on the target device.

> **_NOTE:_** The examples in this repository require CircuitPython v8.2.0 or higher.
4. Run the scripts on the board.

## How it Works ##

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ def __init__(self,
def show_start_up(self):

# show Silabs big logo
image, palette = load("lib/silabs80.bmp")
image, palette = load("silabs80.bmp")
logo_silabs80 = TileGrid(image, pixel_shader = palette,
x=80, y=60)
self.group.append(logo_silabs80)
Expand Down Expand Up @@ -127,12 +127,12 @@ def show_color_palette(self):
self.bitmap[i,j] = self.pen_color

def show_footer_logo(self):
image, palette = load("lib/cpython.bmp")
image, palette = load("cpython.bmp")
logo_cpython = TileGrid(image, pixel_shader = palette,
x=0, y=200)
self.group.append(logo_cpython)

image, palette = load("lib/silabs.bmp")
image, palette = load("silabs.bmp")
logo_silabs = TileGrid(image, pixel_shader = palette,
x=240, y=200)
self.group.append(logo_silabs)
Expand Down
Loading

0 comments on commit 8e434d9

Please sign in to comment.