Is there a tool (or Linux command) that can detect the OS running on IoT devices, such as smartwatches or wearable tracker devices?
Or a tool that can list as much information as possible about the device.
There is an
-O option on nmap that will try to detect what OS the device is running, it is by no means perfect. It analyzes the TCP/IP stack's behavior.
If the device has port 22 (ssh) or 23 (telnet) open you could try to log/break in using some default username and password. (IoT devices aren't meant to be secure, they're meant to be stupid, so the chance of successfully logging in is too high.) And then run the
uname command as suggested in the comment.
There are many many search engines that could have indexed a page that happens to mention which operating system the specific device is running.
If there is any open port at all, you can dig in and start looking for clues. Ex: a webserver might send the
Server header which might happen to name the OS. (Be aware that it could also be lying.)
If all above fails, it is quite likely to be running something with Linux as a kernel or a proprietary BSD clone.