From 196df0b4ee3bc6b95dbad505c4d390d3a4bd02e3 Mon Sep 17 00:00:00 2001 From: Patrick Balsiger Date: Sun, 23 Sep 2018 21:54:23 +0200 Subject: [PATCH] separate documentation --- README.md | 53 +++++++---------------------------------------------- api.md | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 46 deletions(-) create mode 100644 api.md diff --git a/README.md b/README.md index da251d6..c6e6823 100644 --- a/README.md +++ b/README.md @@ -1,48 +1,9 @@ # Illumination-Cat -This is the brain of the the almighty [Illumination Cat](https://www.thingiverse.com/thing:2974862). +This is the brain of the the almighty Illumination-Cat. -## API -Two API architectures are supported: WebSocket and REST. -Both can be used with the same set of fields. -Everything is propagated to the mesh network automatically. - -Fields: -| Field | Type | Description | -| ------- | ------- | -----------------------------------------------| -| topic | String | Name of the topic where the data is dispatched | -| payload | Integer/String | Data | - -### WebSocket -Endpoint: /pixel -Send a JSON String containing the mandatory fields. - -Example: -``` json -{ - "topic": "pixels/color", - "payload": 13505813 -} -``` -#### Topics -All functionality can be used by sending messages to these topics. - -| topic | type | payload | -| ----- | ---- | ---- | -| pixels/colorWheel | Integer | Value from 0 to 255 to cycle through all colors | -| pixels/color | Integer | RGB color as integer. By calling this topic, all LEDs of the strip are set synchronously, stopping current running animation. | -| pixels/color2 | Integer |RGB color as integer. Sets the second color used in animations. Does not stop current running animation. | -| pixels/pattern | Integer | Value from 0 to 5 to set the current animation. Available animations: { NONE = 0, RAINBOW_CYCLE = 1, THEATER_CHASE = 2, COLOR_WIPE = 3, SCANNER = 4, FADE = 5 } | -| pixels/totalSteps | Integer | Number of steps of an animation. | -| pixels/brightness | Integer | Integer from 0 to 255 to set the overall brightness of the strip by bitshifting the current colors in memory. Use with caution as running the LEDs on full brightness requires a lot of power. | - -### REST -#### Endpoints -Content-Type: application/x-www-form-urlencoded -POST /pixel/api - -## Features -- Enduser setup: initial setup where the cat opens an access point for configuration -- WiFi: connect to existing AP as client or build a mesh network where all cats act as a collective -- Web controls: colors and patterns can be changed through the web interface -- OTA plugin: cats connected to an AP can be updated over-the-air via TCP flash method -- [0%] audio output \ No newline at end of file +## Resources & Documentation +[3D Model](https://www.thingiverse.com/thing:2974862) +[Installation](https://gitlab.com/0x1d/illucat/blob/master/installation.md) +[API](https://gitlab.com/0x1d/illucat/blob/master/api.md) +[OctoPrint Stuff](https://github.com/FrYakaTKoP/simple-octo-ws2812) + diff --git a/api.md b/api.md new file mode 100644 index 0000000..2508b9f --- /dev/null +++ b/api.md @@ -0,0 +1,40 @@ +# API +Two API architectures are supported: WebSocket and REST. +Both can be used with the same set of fields. +Everything is propagated to the mesh network automatically. + +Fields: +| Field | Type | Description | +| ------- | ------- | -----------------------------------------------| +| topic | String | Name of the topic where the data is dispatched | +| payload | Integer/String | Data | + +## Topics +All functionality can be used by sending messages to these topics. + +| topic | type | payload | +| ----- | ---- | ---- | +| pixels/colorWheel | Integer | Value from 0 to 255 to cycle through all colors | +| pixels/color | Integer | RGB color as integer. By calling this topic, all LEDs of the strip are set synchronously, stopping current running animation. | +| pixels/color2 | Integer |RGB color as integer. Sets the second color used in animations. Does not stop current running animation. | +| pixels/pattern | Integer | Value from 0 to 5 to set the current animation. Available animations: { NONE = 0, RAINBOW_CYCLE = 1, THEATER_CHASE = 2, COLOR_WIPE = 3, SCANNER = 4, FADE = 5 } | +| pixels/totalSteps | Integer | Number of steps of an animation. | +| pixels/brightness | Integer | Integer from 0 to 255 to set the overall brightness of the strip by bitshifting the current colors in memory. Use with caution as running the LEDs on full brightness requires a lot of power. | + +## WebSocket +Endpoint: /pixel +Send a JSON String containing the mandatory fields. + +Example: +``` json +{ + "topic": "pixels/color", + "payload": 13505813 +} +``` + +## REST +#### Endpoints +Content-Type: application/x-www-form-urlencoded +POST /pixel/api + \ No newline at end of file