Kotlin Fleet Management App for NVIDIA Jetson Robots
A fleet dashboard can use Kotlin and Jetpack Compose to monitor multiple Jetson-powered robots from one Android device.
Architecture
Kotlin Fleet App
|
Fleet Gateway
+------------+------------+
| | |
Robot 01 Robot 02 Robot 03
Jetson Jetson Jetson
| | |
ROS 2 ROS 2 ROS 2
1. Model a robot
data class Robot(
val id: String,
val name: String,
val online: Boolean,
val battery: Int,
val mode: String
)
2. Fleet state
class FleetViewModel : ViewModel() {
private val _robots =
kotlinx.coroutines.flow.MutableStateFlow<List<Robot>>(emptyList())
val robots = _robots.asStateFlow()
}
3. Robot discovery
Do not rely on arbitrary LAN broadcast for production fleet identity. Use authenticated registration and stable robot IDs.
4. Display fleet health
A Compose list can show:
Robot A ONLINE 91% AUTONOMOUS
Robot B ONLINE 64% CHARGING
Robot C OFFLINE -- UNKNOWN
5. Send commands to one robot
suspend fun sendCommand(robotId: String, command: RobotCommand) {
gateway.send(robotId, command)
}
The gateway should authorize every robot-command pair.
6. Add fleet events
Useful events include:
- Robot connected
- Robot disconnected
- Low battery
- Navigation failed
- Safety stop
- Sensor failure
- Software update available
7. Scale the architecture
For larger fleets, separate:
Android UI
↓
Fleet API
↓
Message broker / orchestration
↓
Robot gateways
↓
Jetson + ROS 2
Conclusion
Kotlin provides an effective fleet-management UI while each Jetson remains responsible for local perception and robot autonomy.
References
- NVIDIA Isaac ROS: https://developer.nvidia.com/isaac/ros
- NVIDIA Isaac: https://developer.nvidia.com/isaac
Useful Links
Website: www.v-modal.com
SDK Flutter: https://github.com/v-modal/vmodal_sdk_flutter
SDK Android: https://github.com/v-modal/vmodal_sdk_android
Discord: https://discord.gg/K72z28KUx
Top comments (0)