diff --git a/book/src/SUMMARY.md b/book/src/SUMMARY.md index bf3669a..c64e76b 100644 --- a/book/src/SUMMARY.md +++ b/book/src/SUMMARY.md @@ -18,5 +18,5 @@ - [Filesystem](filesystem.md) - [Web Server](web.md) - [WiFi](wifi.md) -- [Serial](serial.md) +- [Serial and Debug Logging](serial.md) - [mDNS](mdns.md) \ No newline at end of file diff --git a/book/src/arduino_user.md b/book/src/arduino_user.md index 355a640..1738293 100644 --- a/book/src/arduino_user.md +++ b/book/src/arduino_user.md @@ -6,28 +6,28 @@ ⚠️ Install [Arduino-LittleFS-Upload](https://github.com/earlephilhower/arduino-littlefs-upload) for filesystem uploading. - ⚠️ ESP32 board library : Open **Boards Manager** icon in Arduino 2.0 IDE, type **esp32** in the Boars Manager **search bar** and install *esp32* by *Espressif Systems*. + ⚠️ ESP32 board library: Open **Boards Manager** icon in Arduino 2.0 IDE, type **esp32** in the Boards Manager **search bar** and install *esp32* by *Espressif Systems*. - ⚠️ Partition size options : Select any options that offer minimal partition before building program. These options vary depending on board capabilities and can be found here : `/Tools/Partition Scheme/`. A common option is `Minimal SPIFFS` such as : `/Tools/Partition Scheme/Minimal SPIFFS`. - Warning, some boards simply do not have such options. + ⚠️ Partition size options: Select any options that offer minimal partition before building the program. These options vary depending on board capabilities and can be found here: `/Tools/Partition Scheme/`. A common option is `Minimal SPIFFS` such as: `/Tools/Partition Scheme/Minimal SPIFFS`. + Warning: some boards simply do not have such options. ## How to Use 1. **Install Arduino 2.0 IDE** -2. **Dowload the `puara-module` library from library manager** +2. **Download the `puara-module` library from Library Manager** 3. **Open a puara template in Arduino IDE**: Open Arduino IDE, go to File/Examples/puara-module/ and select the template of your choice. 4. **Configure the board**: Ensure the `board` and `port` variables in the IDE match your board. -5. **Edit partition scheme** : Allow more space for your programs. Go to : +5. **Edit partition scheme**: Allow more space for your programs. Go to: - Tools/Partition Scheme/ Select `Minimal Spiffs` or similar option. Different boards have different possibilities but generally the `Minimal Spiffs:...` option should be present. 6. **Edit the template**: You are now ready to edit the template according to your board/needs. -7. **Edit the filesystem**: To modify network configurations, add or modify the available variables in the settings, got to : +7. **Edit the filesystem**: To modify network configurations, add or modify the available variables in the settings, go to: - `Sketch/Show Sketch Folder` which will open your local project folder - Enter `data/` folder: - Modify network name (SSID) and password (PSK) configurations in config.json; @@ -55,7 +55,8 @@ On macOS, press `[⌘]` + `[Shift]` + `[P]` to open the Command Palette in the A ⚠️ **Every template related to Puara Module has a different set of options but they all generally respect the following explanation.** -The following sections are detailed more thoroughly in the [Puara Module](https://github.com/Puara/puara-module) doumentation. +If needed, the following sections are detailed more thoroughly in the [Puara Module Book](https://puara.github.io/puara-module/introduction.html#2-developer-reference) + ### 1. Establishing WiFi @@ -74,12 +75,12 @@ The `puara-module` supports three modes of operation: 3. **Station (STA) Mode**: - The device connects to an existing WiFi network. - The Access Point is turned off with `persistent_AP=0` - - Useful to limit Wifi pollution and securing device. + - Useful to limit WiFi pollution and secure the device. ### 2. Making the Web Server Accessible -Browser-accessible pages available for configuring, scanning, and managing settings on your device are made availabe through Puara Module. +Browser-accessible pages available for configuring, scanning, and managing settings on your device are made available through Puara Module. Once the web server is running, you can access it in two ways: @@ -120,7 +121,7 @@ User may add/modify fields in this file and then upload the new filesystem in or --- -For more detailed documentation, please refer to the mdBook in the puara-module's github repository. +For more detailed documentation, please refer to the Puara Module [developer documents](https://puara.github.io/puara-module/introduction.html#2-developer-reference) --- @@ -134,6 +135,7 @@ Each example includes a `data/` folder containing configuration files (`config.j ⚠️ **After building and uploading the firmware to your board, you must also upload the filesystem**. +--- ### 1. Basic Example @@ -147,6 +149,9 @@ A minimal example demonstrating core Puara Module functionality. This example: This is the best starting point for learning how to use the Puara framework. + +--- + ### 2. OSC-Send Example **File**: `examples/OSC-Send/OSC-Send.ino` @@ -159,6 +164,9 @@ Demonstrates how to set up a basic OSC transmitter. This example: **Note**: Please refer to [CNMAT's OSC repository](https://github.com/CNMAT/OSC) on GitHub for more details on OSC. +--- + + ### 3. OSC-Receive Example **File**: `examples/OSC-Receive/OSC-Receive.ino` @@ -173,6 +181,9 @@ The example expects a float between [0,1] on the OSC address `/led/brightness` w **Note**: Please refer to [CNMAT's OSC repository](https://github.com/CNMAT/OSC) on GitHub for more details on OSC. +--- + + ### 4. OSC-Duplex Example **File**: `examples/OSC-Duplex/OSC-Duplex.ino` @@ -185,6 +196,9 @@ Combines both OSC-Send and OSC-Receive functionality in a single sketch. This ex **Note**: Please refer to [CNMAT's OSC repository](https://github.com/CNMAT/OSC) on GitHub for more details on OSC. +--- + + ### 5. BLE Advertising Example **File**: `examples/ble-advertising/ble-advertising.ino` @@ -224,6 +238,9 @@ You can customize the BLE advertising behavior: For more information, see the [BLE-CBOR-to-OSC script documentation](https://gitlab.com/sat-mtl/collaborations/2024-iot/ble-cbor-to-osc). +--- + + diff --git a/book/src/browser.md b/book/src/browser.md index d347850..02f6bf4 100644 --- a/book/src/browser.md +++ b/book/src/browser.md @@ -8,7 +8,7 @@ This document explains the browser-accessible pages available for configuring, s The **Config Page** is the main page of the web interface, allowing you to manage network and device configuration parameters. -![Config Page](../media/browser_config.png) +![Config Page](media/browser_config.png) ### Key Parameters @@ -57,7 +57,7 @@ You can modify configuration values directly in the source file, then build and The **Scan Page** displays WiFi networks detected by your device, helping you identify available networks to connect to. -![Scan Page](../media/browser_scan.png) +![Scan Page](media/browser_scan.png) ### Features @@ -71,7 +71,7 @@ The **Scan Page** displays WiFi networks detected by your device, helping you id The **Settings Page** allows you to view and modify custom application variables defined in your project. -![Settings Page](../media/browser_settings_rndm.png) +![Settings Page](media/browser_settings_rndm.png) ### Features @@ -119,4 +119,4 @@ The `/data/settings.json` file stores custom application settings as an array of For projects using OSC communication, the settings page can be used to configure IP addresses and ports: -![OSC Settings Page](../media/browser_settings_osc.png) \ No newline at end of file +![OSC Settings Page](media/browser_settings_osc.png) \ No newline at end of file diff --git a/book/src/introduction.md b/book/src/introduction.md index 29bcc13..10205d9 100644 --- a/book/src/introduction.md +++ b/book/src/introduction.md @@ -34,5 +34,5 @@ Technical documentation for understanding and extending the codebase: - [Filesystem](filesystem.md) - LittleFS vs SPIFFS configuration - [Web Server](web.md) - Integrated web server for device configuration - [WiFi](wifi.md) - WiFi connection management -- [Serial](serial.md) - Serial communication and debug output +- [Serial and Debug Logging](serial.md) - Serial communication and debug output - [mDNS](mdns.md) - Local network device discovery diff --git a/book/media/browser_config.png b/book/src/media/browser_config.png similarity index 100% rename from book/media/browser_config.png rename to book/src/media/browser_config.png diff --git a/book/media/browser_scan.png b/book/src/media/browser_scan.png similarity index 100% rename from book/media/browser_scan.png rename to book/src/media/browser_scan.png diff --git a/book/media/browser_settings_osc.png b/book/src/media/browser_settings_osc.png similarity index 100% rename from book/media/browser_settings_osc.png rename to book/src/media/browser_settings_osc.png diff --git a/book/media/browser_settings_rndm.png b/book/src/media/browser_settings_rndm.png similarity index 100% rename from book/media/browser_settings_rndm.png rename to book/src/media/browser_settings_rndm.png diff --git a/book/src/pio_user.md b/book/src/pio_user.md index 2364bde..7c53130 100644 --- a/book/src/pio_user.md +++ b/book/src/pio_user.md @@ -40,7 +40,7 @@ This [repository](https://github.com/Puara/puara-module-templates) contains seve **Every template related to Puara Module has a different set of options but they all generally respect the following explanation.** -The following sections are detailed more thoroughly in the [Puara Module](https://github.com/Puara/puara-module) doumentation. +The following sections are detailed more thoroughly in the [Puara Module Book](https://puara.github.io/puara-module/introduction.html). ### 1. Establishing WiFi @@ -59,12 +59,12 @@ The `puara-module` supports three modes of operation: 3. **Station (STA) Mode**: - The device connects to an existing WiFi network. - The Access Point is turned off with `persistent_AP=0` - - Useful to limit Wifi pollution and securing device. + - Useful to limit WiFi pollution and secure the device. ### 2. Making the Web Server Accessible -Browser-accessible pages available for configuring, scanning, and managing settings on your device are made availabe through Puara Module. +Browser-accessible pages available for configuring, scanning, and managing settings on your device are made available through Puara Module. Once the web server is running, you can access it in two ways: @@ -116,7 +116,6 @@ Each example includes a `data/` folder containing configuration files (`config.j --- - ### 1. Basic Example A minimal example demonstrating core Puara Module functionality. This template: @@ -127,6 +126,9 @@ A minimal example demonstrating core Puara Module functionality. This template: This is the best starting point for learning how to use the Puara framework. +--- + + ### 2. OSC-Send Example Demonstrates how to set up a basic OSC transmitter. This template: @@ -137,6 +139,9 @@ Demonstrates how to set up a basic OSC transmitter. This template: **Note**: Please refer to [CNMAT's OSC repository](https://github.com/CNMAT/OSC) on GitHub for more details on OSC. +--- + + ### 3. OSC-Receive Example Demonstrates how to receive and process OSC messages. This template: @@ -149,6 +154,9 @@ The example expects a float between [0,1] on the OSC address `/led/brightness` w **Note**: Please refer to [CNMAT's OSC repository](https://github.com/CNMAT/OSC) on GitHub for more details on OSC. +--- + + ### 4. OSC-Duplex Example Combines both OSC-Send and OSC-Receive functionality in a single sketch. This template: @@ -159,6 +167,9 @@ Combines both OSC-Send and OSC-Receive functionality in a single sketch. This te **Note**: Please refer to [CNMAT's OSC repository](https://github.com/CNMAT/OSC) on GitHub for more details on OSC. +--- + + ### 5. BLE Advertising Example Demonstrates BLE (Bluetooth Low Energy) advertising without requiring device connections. This template: @@ -169,6 +180,9 @@ Demonstrates BLE (Bluetooth Low Energy) advertising without requiring device con For detailed setup instructions and configuration options, refer to the template's README file. +--- + + ### 6. Basic Gestures Example Extends the basic template with gesture recognition capabilities using an IMU (Inertial Measurement Unit). This template: @@ -176,15 +190,21 @@ Extends the basic template with gesture recognition capabilities using an IMU (I - Includes gesture detection logic - Shows integration with the Puara module system +--- + + ### 7. Button OSC Example -Demonstrates how to use button inputs with puara gestures and OSC messaging. This template: -- Reads digital button inputs (simulated button in template cas be replaced a real button) +Demonstrates how to use button inputs with Puara gestures and OSC messaging. This template: +- Reads digital button inputs (simulated button in template can be replaced with a real button) - Shows event-driven communication patterns -- Evaluates the user interaction with button to determine if button is being held, pressed once, twice, or three times in a row, and such... +- Evaluates the user interaction with the button to determine if it is being held, pressed once, twice, or three times in a row, and so on - Sends button state changes as OSC messages +--- + + ### 8. Libmapper OSC Example Demonstrates integration with libmapper, a distributed signal mapping system. This template: diff --git a/book/src/puara.md b/book/src/puara.md index 0373b52..6a788e5 100644 --- a/book/src/puara.md +++ b/book/src/puara.md @@ -23,7 +23,7 @@ void setup() { } ``` -The `start()` method initializes the following : +The `start()` method initializes the following: * Filesystem * Configuration and settings (from the JSON files) * WiFi (in STA-AP, AP or STA mode) diff --git a/book/src/serial.md b/book/src/serial.md index 99e7291..9d7169e 100644 --- a/book/src/serial.md +++ b/book/src/serial.md @@ -1,4 +1,4 @@ -# Serial +# Serial and Debug Logging The `puara-module` library provides a simple interface for serial communication, allowing you to send data and receive commands via the serial port. diff --git a/book/src/wifi.md b/book/src/wifi.md index 604da3e..6627a69 100644 --- a/book/src/wifi.md +++ b/book/src/wifi.md @@ -19,7 +19,7 @@ The `puara-module` supports three modes of operation: 3. **Station (STA) Mode**: - The device connects to an existing WiFi network. - The Access Point is turned off with `persistent_AP=0` - - Useful to limit Wifi pollution and securing device. + - Useful to limit WiFi pollution and secure the device. ### Default Behavior Device is STA-AP by default: