|
Re: Using a Kinect as a primary camera for drivers
Thanks for elaborating. It would seem like most of what you guys want to do is already available, but it is not called a Driver Station SDK. The DS laptop runs the Driver Station App -- bottom of the window. That app launches the Dashboard. The Driver Station App is closed-source in order to provide consistency and safety, but the dashboard is open and is actually in charge of many of the things you mention.
The DS reads joysticks and looks for Cypress I/O. It controls TeleOp, Auto, Test, Practice, Enable, and Disable. It reminds you of the laptop battery state, logs communications quality, supports setup, displays error messages, and has the LCD box on the front to mimic a feature of the Blue Box from 2009.
The Dashboard is anything you want. It can be written in any language you want, use any display technology you want, and can even be running on a separate laptop. The LabVIEW environment supplies dashboard example source code and an SDK for some aspects like camera. It includes realtime graphs, and a 2D drawing canvas used for Kinect. If you want animated rainbow text, it isn't in the SDK, and honestly I wouldn't have thought to include it or document it either, but it is open, so do your own.
Communications between robot and dashboard can use SmartDashboard variables, also known as Network Tables. It can also use UDP and TCP. Since there is no mandated way to do an onboard computer, it would be difficult to put it in an SDK. But the industry standard protocols will work to almost anything ethernet based.
If you choose to do a custom dashboard, I'd encourage you to first look at the ones provided if you need to access any of the protocol data sent it by the Driver Station App. Ask questions if you don't understand what you are looking at. You can also find many inspiring dashboard apps written and published by other teams. Not all of them look like Win98.
Greg McKaskle
|