Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/app specific board #24

Merged
merged 5 commits into from
Nov 2, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
129 changes: 92 additions & 37 deletions doc/configuration/uml/configuration.plantuml
Original file line number Diff line number Diff line change
Expand Up @@ -2,56 +2,111 @@

title Configuration

component "env:ConvoyLeaderTarget" <<pio>> as envConvoyLeader
component "env:ConvoyLeaderSim" <<pio>> as envConvoyLeaderSim
package "platformio.ini" {

component "env:LineFollowerTarget" <<pio>> as envLineFollower
component "env:LineFollowerSim" <<pio>> as envLineFollowerSim
package "working environments" {
component "env:<APPLICATION-NAME>Target" <<pio>> as pioEnvAppTarget
component "env:<APPLICATION-NAME>Sim" <<pio>> as pioEnvAppSim
}

component "env:RemoteControlTarget" <<pio>> as envRemoteControl
component "env:RemoteControlSim" <<pio>> as envRemoteControlSim
package "configuration environments" as cfgEnv {

component "app:ConvoyLeader" <<pio>> as appConvoyLeader
component "app:LineFollower" <<pio>> as appLineFollower
component "app:RemoteControl" <<pio>> as appRemoteControl
component "hal_app:<APPLICATION-NAME>Target" <<pio>> as pioHalAppTarget
component "app:<APPLICATION-NAME>" <<pio>> as pioAppApp
component "hal_app:<APPLICATION-NAME>Sim" <<pio>> as pioHalAppSim

component "ConvoyLeader" <<lib>> as convoyLeader
component "LineFollower" <<lib>> as lineFollower
component "RemoteControl" <<lib>> as remoteControl
component "Service" <<lib>> as service
component "hal:Target" <<pio>> as pioHalTarget
component "hal:Sim" <<pio>> as pioHalSim
}
}

component "target:Zumo32U4" <<pio>> as targetZumo
component "target:Sim" <<pio>> as targetSim
package "/lib" as libFolder {

component "HALTarget" <<lib>> as halTarget
component "HALSim" <<lib>> as halSim
component "HALInterfaces" <<lib>> as halInterfacesLib

envConvoyLeader ..> appConvoyLeader
envConvoyLeader ..> targetZumo
component "APP<APPLICATION-NAME>" <<lib>> as appLib
component "Service" <<lib>> as serviceLib

envConvoyLeaderSim ..> appConvoyLeader
envConvoyLeaderSim ..> targetSim
component "HAL<APPLICATION-NAME>Target" <<lib>> as halAppTarget
component "HAL<APPLICATION-NAME>Sim" <<lib>> as halAppSim

envLineFollower ..> appLineFollower
envLineFollower ..> targetZumo
component "HALTarget" <<lib>> as halTargetLib
component "HALSim" <<lib>> as halSimLib

envLineFollowerSim ..> appLineFollower
envLineFollowerSim ..> targetSim
component "Webots" <<lib>> as webotsLib
component "ArduinoNative" <<lib>> as arduinoNativeLib

envRemoteControl ..> appRemoteControl
envRemoteControl ..> targetZumo
note bottom of halAppTarget
Application specific target HAL
instantiation via Board class.
May use less peripherals, than
available.
end note

envRemoteControlSim ..> appRemoteControl
envRemoteControlSim ..> targetSim
note bottom of halAppSim
Application specific simulation HAL
instantiation via Board class.
May use less peripherals, than
available.
end note

appConvoyLeader ..> convoyLeader
appConvoyLeader ..> service
appLineFollower ..> lineFollower
appLineFollower ..> service
appRemoteControl ..> remoteControl
appRemoteControl ..> service
note bottom of halTargetLib
Contains the target HAL
peripheral classes.
end note

targetZumo ..> halTarget
targetSim ..> halSim
note bottom of halSimLib
Contains the simulation HAL
peripheral classes.
end note

note bottom of halInterfacesLib
Defines the interfaces
of the HAL peripherals.
end note

note bottom of appLib
Application specific functionality.
end note

note bottom of serviceLib
General services, used by
the applications.
end note

note bottom of webotsLib
Webots simulation glue code.
end note

note bottom of arduinoNativeLib
Some stubbed Arduino interfaces
for simulation.
end note
}

pioEnvAppTarget ...> pioAppApp: <<extends>>
pioEnvAppTarget ...> pioHalAppTarget: <<extends>>

pioHalAppTarget ..> pioHalTarget: <<extends>>
pioHalAppTarget ...> halAppTarget: <<depends>>

pioHalTarget ..> halTargetLib: <<depends>>
pioHalTarget ..> halInterfacesLib: <<depends>>


pioEnvAppSim ..> pioAppApp: <<extends>>
pioEnvAppSim ..> pioHalAppSim: <<extends>>

pioHalAppSim ..> pioHalSim: <<extends>>
pioHalAppSim ...> halAppSim: <<depends>>

pioHalSim ..> halSimLib: <<depends>>
pioHalSim ..> webotsLib: <<depends>>
pioHalSim ..> halInterfacesLib: <<depends>>
pioHalSim ..> arduinoNativeLib: <<depends>>


pioAppApp ...> appLib: <<depends>>
pioAppApp ...> serviceLib: <<depends>>

@enduml
3 changes: 2 additions & 1 deletion doc/doxygen/ConvoyLeaderSimDoxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -913,7 +913,8 @@ INPUT = mainpage.dox \
../../lib/Service \
../../lib/HALSim \
../../lib/HALInterfaces \
../../lib/ConvoyLeader
../../lib/APPConvoyLeader \
../../lib/HALConvoyLeaderSim

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
3 changes: 2 additions & 1 deletion doc/doxygen/ConvoyLeaderTargetDoxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -913,7 +913,8 @@ INPUT = mainpage.dox \
../../lib/Service \
../../lib/HALTarget \
../../lib/HALInterfaces \
../../lib/ConvoyLeader
../../lib/APPConvoyLeader \
../../lib/HALConvoyLeaderTarget

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
5 changes: 3 additions & 2 deletions doc/doxygen/LineFollowerSimDoxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -910,10 +910,11 @@ WARN_LOGFILE = doxygen_warnings.txt

INPUT = mainpage.dox \
../../src \
../../lib/LineFollower \
../../lib/APPLineFollower \
../../lib/Service \
../../lib/HALSim \
../../lib/HALInterfaces
../../lib/HALInterfaces \
../../lib/HALLineFollowerSim

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
5 changes: 3 additions & 2 deletions doc/doxygen/LineFollowerTargetDoxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -910,10 +910,11 @@ WARN_LOGFILE = doxygen_warnings.txt

INPUT = mainpage.dox \
../../src \
../../lib/LineFollower \
../../lib/APPLineFollower \
../../lib/Service \
../../lib/HALTarget \
../../lib/HALInterfaces
../../lib/HALInterfaces \
../../lib/HALLineFollowerTarget

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
3 changes: 2 additions & 1 deletion doc/doxygen/RemoteControlSimDoxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -913,7 +913,8 @@ INPUT = mainpage.dox \
../../lib/Service \
../../lib/HALSim \
../../lib/HALInterfaces \
../../lib/RemoteControl
../../lib/HALRemoteControlSim \
../../lib/APPRemoteControl

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
3 changes: 2 additions & 1 deletion doc/doxygen/RemoteControlTargetDoxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -913,7 +913,8 @@ INPUT = mainpage.dox \
../../lib/Service \
../../lib/HALTarget \
../../lib/HALInterfaces \
../../lib/RemoteControl
../../lib/APPRemoteControl \
../../lib/HALRemoteControlTarget

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "ConvoyLeader",
"name": "APPConvoyLeader",
"version": "0.1.0",
"description": "Convoy leader application",
"authors": [{
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "LineFollower",
"name": "APPLineFollower",
"version": "0.1.0",
"description": "LineFollower application",
"authors": [{
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "RemoteControl",
"name": "APPRemoteControl",
"version": "0.1.0",
"description": "RemoteControl application",
"authors": [{
Expand Down
File renamed without changes.
File renamed without changes.
21 changes: 21 additions & 0 deletions lib/HALConvoyLeaderSim/library.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"name": "HALConvoyLeaderSim",
"version": "0.1.0",
"description": "...",
"authors": [{
"name": "Andreas Merkle",
"email": "[email protected]",
"url": "https://github.com/BlueAndi",
"maintainer": true
}],
"license": "MIT",
"dependencies": [{
"name": "HALInterfaces"
}, {
"name": "HALSim"
}, {
"name": "Webots"
}],
"frameworks": "*",
"platforms": "*"
}
File renamed without changes.
File renamed without changes.
23 changes: 23 additions & 0 deletions lib/HALConvoyLeaderTarget/library.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"name": "HALConvoyLeaderTarget",
"version": "0.1.0",
"description": "...",
"authors": [{
"name": "Andreas Merkle",
"email": "[email protected]",
"url": "https://github.com/BlueAndi",
"maintainer": true
}],
"license": "MIT",
"dependencies": [{
"name": "HALInterfaces"
}, {
"name": "HALTarget"
}, {
"owner": "pololu",
"name": "Zumo32U4",
"version": "^2.0.1"
}],
"frameworks": "arduino",
"platforms": "*"
}
Loading