Disabling Google Cast discovery without WiFi - google-cast

My app is integrated with the Google Cast SDK to cast videos to a Chromecast.
Since the device needs to be connected to a WiFi network to be able to connect and cast, I thought that maybe I could disable device discovery if the device is not connected to a WiFi network, so I don't waste battery and CPU cycles with useless tasks.
Then I wondered: do I really need to do this manually or is the SDK smart enough to make this decision?
I didn't find any information about it in the documentation, and I have no idea where else to look for it.

You should leave device discovery to the Cast SDK which has been optimized for various networking conditions.

Related

WebUSB API, for pushing commands/configuration to the device through webApp

I am doing some research on the WebUSB API for our company because we are going to start to manufacture devices in house.
Our current device manufacture comes with an application so the team can plug the device into a computer and diagnose it. Their application allows us to read outputs from the device, as well as pushing commands/configuration to the device over a wired connection.
Since this device is 100% ours, we are also responsible for building out the diagnostic tooling. We need some sort of interface that allows a user to read outputs and send commands/configuration to the device over a wired USB connection.
Is the webUSB the correct API? If not, what are some suggestions for accomplishing the requirement? Are we limited to building some sort of desktop or mobile application?
I would recommend resources below to read to help you understand if the WebUSB API fits your needs or not:
https://web.dev/devices-introduction/ helps you pick the appropriate API to communicate with a hardware device of your choice.
https://web.dev/build-for-webusb/ explains how to build a device to take full advantage of the WebUSB API.
From what you describe, WebUSB isn't strictly required but won't hurt either.
First and foremost, you will need to implement the USB interfaces reading data and sending configurations. It will be a custom protocol, and not one of the standard USB device classes such as HID, video or mass storage. The details of the protocol and if you use control, interrupt or bulk transfers is your choice.
I'm assuming you will connect the devices to Windows PCs, and you likely don't want to put money into writing device drivers. If so, the easiest approach is to add the required descriptors and control requests required for Microsoft OS 2.0 Descriptors. That way, the WinUSB driver will be installed automatically when the device is plugged in.
Using the WinUSB API, a Windows application will then be able to communicate with the USB device. No additional drivers are needed. (On macOS and Linux it's even easier as you don't need the Microsoft OS 2.0 Descriptors in the first place.)
On top of that you can implement the additional descriptors and control requests for WebUSB. It will provide the additional benefit that you can write a web application (instead of a native application) for communicating with the USB device. (Currently, you are restricted to the Chrome browser.) WebUSB devices should implement the WinUSB descriptors as the alternative (.INF files, manual installation process) is a pain.
The already mentioned web page https://web.dev/build-for-webusb/ is a complete example of how to implement it.

How to call from a 4g internet device

I have a Huawei e5573 4g device (connects to internet through 2g 3g or 4g via a regular sim card, same as that used in a mobile phone).
It can receive and send messages (sms) and ussd too.
I was wondering if there is any way of using the device to make voice calls with it from the sim inserted inside it, just like in as a phone ?
Has anyone done that before ?
Thanks
If you mean using the device itself, then the answer is no as it does not have audio functionality - i.e. speaker and microphone.
It does support SMS as you say, if you log in to the router's web admin.
You can use any VoIP service over the date network, provided your network operator does not restrict or block them, but I am sure you know this.
There are some discussions on the web about opening the box and 'hacking' it, loading firmware etc but I suspect even if you found a way to get this to work it would be a very high effort / expensive way to just make a voice call device.

Bluetooth Connection and Fileshaing

Is it possible to track bluetooth connections that are connected to eachother? and if yes, is it possible to see that they're sharing files/sending data with bluetooth?
It is for a personal chat program, that me and my friends are working on in C#.
The Bluetooth devices and related status can be found using APIs of Windows.Devices.Enumeration namespace that are available for C#. They shall help in getting general information about devices connected to or discoverable by the system. It shall help in finding devices internally connected to the system, externally connected, or nearby over wireless or networking protocols and get information about them. The DeviceWatcher in turn shall help in finding and receiving updates for devices (like getting notifications when devices get added, connected, disconnected, change online status, or change other properties.)

Why does Chromecast v2 have Bluetooth and how do I connect with it?

My Chromecast v2 shows up as an undefined Bluetooth device. Attempts to connect, however, have not been successful. This is most probably due to a secret pairing PIN.
Oddly, nowhere can I find documentation of this feature. Why wouldn't Google mention Bluetooth connectivity?
Can anyone explain what Chromecast uses Bluetooth for and how to connect with it? Eventually, I'd like to connect it with a Bluetooth audio receiver on my HiFi... (I know about external Bluetooth transmitters, I'd like to use the internal one, however, if possible.)
That is for internal use, for example setup, etc and doesn't have any profiles that can be useful to developers, nor is intended to be used by developers.

Is there a Novatel Wireless Modem Emulator or something similar?

Novatel Wireless provides their NovaCore SDK for developers wishing to interface with their line of modems. I'm currently developing an open source managed wrapper for it, but I'm having difficulties with testing. I own a Novatel MiFi and have mobile broadband service through Sprint, but that can only get me so far. The device is already activated, thus I can't test the network activation features of the NovaCore SDK. There are also certain features only available for HSPA modems, which I am not able to get in my area.
Is there an emulator capable of emulating a Novatel Wireless modem so that I can test my library without physical hardware and an actual data connection? If not, do you have any other suggestions that might help in this situation?
I've contacted Novatel Wireless via email and their developer forum, but have not received a response.
Thanks!

Resources