Skip to content

Commit

Permalink
Fixes #56 (#62)
Browse files Browse the repository at this point in the history
* improve this doc button draft

* improve this doc feature as a link

* Separated sections into individual adocs

Each section of the documentation is now in its own adoc file. The
index.adoc file acts as the compile point for all sections. This
separation will allow the editing of the individual sections, without
effecting other sections.

* Added improve this doc link

Each section now has an improve this doc link. I dont know if the link
works without the changes being merged

* fixed spacing in index.adoc and fixed link in introduction.adoc
  • Loading branch information
SwindleA authored Sep 25, 2023
1 parent 1ba0cc0 commit e12f126
Show file tree
Hide file tree
Showing 30 changed files with 416 additions and 287 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@

=== Example Applications
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/Introduction/exampleApplications.adoc[Improve this doc]

If you're curious about what Pi4Micronaut is capable of, check out some of the working applications created using our library.

==== Remote Mointoring Check-In System
https://github.com/oss-slu/SLU_OSS_CheckIn
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
=== Currently Supported Hardware
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/Introduction/supportedHardware.adoc[Improve this doc]

If you plan on creating an application using any of the hardware components listed below, then our library is perfect for you!

We plan on offering support for many more hardware components in the future. If you have a hardware component you would like to use but can't find, feel free to checkout how you can add support for it under "Contributing to the Library"

* Push Button
* Slide Switch
* Rotary Encoder
* RFID Scanner
* LEDs
* RGB LEDs
* LCDs
* Photosensors
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@

== Adding to/Creating an Application
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/adding_creating_App.adoc[Improve this doc]

TODO: outline how to create a basic applicaton like we did for the start of the check-in system +
TODO: outline how someone should add our jar to their exsisting application
4 changes: 4 additions & 0 deletions micronautpi4j-utils/src/docs/asciidoc/components.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
== Components
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components.adoc[Improve this doc]

Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
=== Communicating with a Hardware Component
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/commun_WithHardware.adoc[Improve this doc]

TODO: outline the use and access of application.yaml for an app +
TODO: Consolidate the format and include examples of how each comm type is used
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@

==== Digital Input
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/commun_WithHardware/digitalInput.adoc[Improve this doc]

To define in application.yaml add digital-input as a field under pi4j, then add each component under digital-input
Each component will need

* name: Name of the component
* address: GPIO pin associated with component
* debounce:
* pull: Either PULL_UP or PULL_DOWN depending on component
* provider: pigpio-digital-input

[source,yaml]
----
include::../../../../../../components/src/main/resources/application.yml[tags=digitalInput]
----

<.> Component Identifier (Used in @Named annotations)
<.> Component Name
<.> Address of connected GPIO pin
<.> Debounce value
<.> Pull value (PULL_UP or PULL_DOWN)
<.> Provider (pigpio-digital-input)
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
==== Digital Output
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/commun_WithHardware/digitalOutput.adoc[Improve this doc]

To define in application.yaml add digital-output as a field under pi4j, then add each component under digital-input
Each component will need

* name: Name of the component
* address: GPIO pin associated with component
* initial: Initial value, either LOW or HIGH
* shutdown: State to take when program successfully shuts down properly, either LOW or HIGH
* provider: pigpio-digital-output
[source,yaml]
----
include::../../../../../../components/src/main/resources/application.yml[tags=digitalOutput]
----
<1> Component Identifier (Used in @Named annotations)
<2> Component Name
<3> Address of connected GPIO pin
<4> Value to have on shutdown (HIGH = Off, LOW = On)
<5> Value to have on startup
<6> Provider (pigpio-digital-output)
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
==== I2C
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/commun_WithHardware/i2c.adoc[Improve this doc]

[source,yaml]
----
include::../../../../../../components/src/main/resources/application.yml[tags=i2c]
----
<1> Component Identifier (Used in @Named annotations)
<2> Component Name
<3> Device bus (0 or 1)
<4> Device address

TODO: add I2C information
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@

==== Multipin Configurations
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/commun_WithHardware/multipinConfig.adoc[Improve this doc]

Multipin components are unique in that they require several of the same type of pin in order to function properly.
Each class of multipin component (Digital Input, PWM), is declared slightly differently in the application.yaml file

.Example Multipin Digital Input declaration
[source, yaml]
----
include::../../../../../../components/src/main/resources/application.yml[tags=multiInput]
----
<.> Top level field for multipin digital inputs (equivlent of digital-output declaration)
<.> Component Identifier (Used in @Named annotations)
<.> Component Name
<.> Addresses for each pin (Each component has a specific order outlined in the component description)
<.> Debounce values for each pin (same order as above)
<.> Pull values for each pin (same order as above)
<.> Shutdown value (All pins have the same shut down)
<.> Startup value (All pins have the same start up)
<.> Provider (All pins have the same provider)

.Example Multipin PWM declaration
[source, yaml]
----
include::../../../../../../components/src/main/resources/application.yml[tags=multipwm]
----
<.> Top level field for multipin PWMs (equivlent of digital-output declaration)
<.> Component Identifier (Used in @Named annotations)
<.> Component Name
<.> Addresses for each pin (Each component has a specific order outlined in the component description)
<.> PWM types for each pin (same order as above)
<.> Provider (All pins have the same provider)
<.> Startup values (Same order as above)
<.> Shutdown values (Same order as above)
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
==== PWM
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/commun_WithHardware/pwm.adoc[Improve this doc]

To define in application.yaml add digital-input as a field under pi4j, then add each component under digital-input
Each component will need

* name: Name of the component
* address: GPIO pin associated with component
* pwmType: Either SOFTWARE or HARDWARE based upon which type of PWM you wish to use
* provider: pigpio-pwm
[source,yaml]
----
include::../../../../../../components/src/main/resources/application.yml[tags=pwm]
----
<1> Component Identifier (Used in @Named annotations)
<2> Component Name
<3> Address of connected GPIO pin
<4> PWM Type (HARDWARE or SOFTWARE)
<5> Provider (pigpio-digital-output)
<6> Value to have on start up
<7> Value to have on shut down
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@

==== SPI

[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/commun_WithHardware/spi.adoc[Improve this doc]

[source,yaml]
----
include::../../../../../../components/src/main/resources/application.yml[tags=spi]
----
<1> Component Identifier (Used in @Named annotations)
<2> Component Name
<3> TO DO: Figure out what this address is
<4> Baud rate
<5> Address of GPIO Reset pin

TODO: add SPI information
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
=== Input Components
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/inputComponents.adoc[Improve this doc]
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
==== Photosensor
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/inputComponents/photosensor.adoc[Improve this doc]

TODO: add in photosensor support docs
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
==== Push Button
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/inputComponents/pushButton.adoc[Improve this doc]

===== Constructors

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/inputDevices/PushButtonHelper.java[tag=const]
----

===== Methods

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/inputDevices/PushButtonHelper.java[tags=method]
----

===== An Example Controller

====== This controller uses the push button to turn an LED on and off

[source, java]
----
include::../../../../../../components/src/main/java/com/opensourcewithslu/components/controllers/PushButtonController.java[tag=ex]
----
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
==== RFID Scanner

[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/inputComponents/rfidScanner.adoc[Improve this doc]

===== Constructors

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/inputDevices/RFidHelper.java[tag=const]
----

===== Methods

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/inputDevices/RFidHelper.java[tag=method]
----

===== An Example Controller

====== This controller uses the RFID scanner to write and read to a card

[source, java]
----
include::../../../../../../components/src/main/java/com/opensourcewithslu/components/controllers/RFidController.java[tag=ex]
----
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
==== Rotary Encoder
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/inputComponents/rotaryEncoder.adoc[Improve this doc]

===== YAML Pin Order
The order for declaring pins for a Rotary Encoder component in the application.yaml file is as follows

Expand All @@ -18,14 +22,14 @@ the sw pin would be the one connected to GPIO 17, the clk pin would be connected

[source, java]
----
include::../../../main/java/com/opensourcewithslu/inputDevices/RotaryEncoderHelper.java[tag=const]
include::../../../../main/java/com/opensourcewithslu/inputDevices/RotaryEncoderHelper.java[tag=const]
----

===== Methods

[source, java]
----
include::../../../main/java/com/opensourcewithslu/inputDevices/RotaryEncoderHelper.java[tags=method]
include::../../../../main/java/com/opensourcewithslu/inputDevices/RotaryEncoderHelper.java[tags=method]
----

===== An Example Controller
Expand All @@ -34,5 +38,5 @@ include::../../../main/java/com/opensourcewithslu/inputDevices/RotaryEncoderHelp

[source, java]
----
include::../../../../../components/src/main/java/com/opensourcewithslu/components/controllers/RotaryEncoderController.java[tag=ex]
include::../../../../../../components/src/main/java/com/opensourcewithslu/components/controllers/RotaryEncoderController.java[tag=ex]
----
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
==== Slide Switch

[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/inputComponents/slideSwitch.adoc[Improve this doc]

===== Constructors

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/inputDevices/SlideSwitchHelper.java[tag=const]
----

===== Methods

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/inputDevices/SlideSwitchHelper.java[tags=method]
----

===== An Example Controller

====== This controller sets up two slide switches

[source, java]
----
include::../../../../../../components/src/main/java/com/opensourcewithslu/components/controllers/SlideSwitchController.java[tag=ex]
----
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
=== Output Components

[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/outputComponents.adoc[Improve this doc]
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
==== LCD
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/outputComponents/lcdScreen.adoc[Improve this doc]

===== Constructors

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/outputDevices/LCD1602Helper.java[tag=const]
----

===== Methods

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/outputDevices/LCD1602Helper.java[tags=method]
----

===== An Example Controller

[source, java]
----
include::../../../../../../components/src/main/java/com/opensourcewithslu/components/controllers/lcdController.java[tag=ex]
----
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@

==== LED
[.text-right]
https://github.com/oss-slu/Pi4Micronaut/edit/develop/micronautpi4j-utils/src/docs/asciidoc/components/outputComponents/led.adoc[Improve this doc]

===== Constructors

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/outputDevices/LEDHelper.java[tag=const]
----

===== Methods

[source, java]
----
include::../../../../main/java/com/opensourcewithslu/outputDevices/LEDHelper.java[tags=method]
----

===== An Example Controller

====== This controller turns the LED on and off

TODO: Create an example LED Controller
Loading

0 comments on commit e12f126

Please sign in to comment.