A method of enabling a USB I/O device to operate as an IoT device, comprising: providing a USB I/O device; providing a network interface module having a USB signal port, wherein the USB I/O device is plugged into the USB signal port, the network interface module further comprising an interface in data communication with a network, USB host controller circuitry, a USB communication interface in data communication with the USB host controller circuitry and logic circuitry that is in data communication with the USB communication interface and represents a Thing Interaction Model of the USB I/O device plugged into the USB signal port; providing a central repository that is in data communication with the Internet and which comprises a database having stored therein a plurality of Thing Description documents with specific USB extensions, wherein each Thing Description document corresponds to a particular USB I/O device; acquiring, by the network interface module, the vendor and product identifications of the USB I/O device plugged into the USB signal port of the network interface module; querying, by the network interface module, the database of the central repository for the Thing Description document with specific USB extension that corresponds to the acquired vendor and product identifications; retrieving, by the network interface module, the Thing Description documents with USB extension that correspond to the acquired vendor and product identifications; and utilizing the retrieved Thing Description document and the logic circuitry of the USB host controller to construct communication pipes that are compatible with the USB I/O device plugged into the USB signal port and construct communication sockets that match the Thing Interaction Model of the USB I/O device plugged into the USB signal port, characterized in that the step of utilizing the retrieved Thing Description document and the logic circuitry of the USB host controller further comprises parsing, by the network interface module, the retrieved Thing Description Document to construct the communication pipes, and the step of parsing further comprises establishing communication sockets using the communication pipes to enable the USB I/O device plugged into the USB signal port to operate according to the Thing Interaction Model. providing a USB I/O device; providing a network interface module having a USB signal port, wherein the USB I/O device is plugged into the USB signal port, the network interface module further comprising an interface in data communication with a network, USB host controller circuitry, a USB communication interface in data communication with the USB host controller circuitry and logic circuitry that is in data communication with the USB communication interface and represents a Thing Interaction Model of the USB I/O device plugged into the USB signal port; providing a central repository that is in data communication with the Internet and which comprises a database having stored therein a plurality of Thing Description documents with specific USB extensions, wherein each Thing Description document corresponds to a particular USB I/O device; acquiring, by the network interface module, the vendor and product identifications of the USB I/O device plugged into the USB signal port of the network interface module; querying, by the network interface module, the database of the central repository for the Thing Description document with specific USB extension that corresponds to the acquired vendor and product identifications; retrieving, by the network interface module, the Thing Description documents with USB extension that correspond to the acquired vendor and product identifications; and utilizing the retrieved Thing Description document and the logic circuitry of the USB host controller to construct communication pipes that are compatible with the USB I/O device plugged into the USB signal port and construct communication sockets that match the Thing Interaction Model of the USB I/O device plugged into the USB signal port, characterized in that the step of utilizing the retrieved Thing Description document and the logic circuitry of the USB host controller further comprises parsing, by the network interface module, the retrieved Thing Description Document to construct the communication pipes, and the step of parsing further comprises establishing communication sockets using the communication pipes to enable the USB I/O device plugged into the USB signal port to operate according to the Thing Interaction Model.