Detecting exact frequency of Bluetooth signal - ios

I was wondering if there was a way that I could detect the exact frequency of a BLE signal with an iphone. I know it will be in the 2.4 GHz range but i would like to know the difference down to the 1 Hz range between the transmitted frequency and the received frequency. The difference would be caused by the doppler effect meaning that the central or the peripheral would have to be moving. Also is there an exact frequency that iphones transmit BLE at or does it depend on the iphone's antenna?

Bluetooth doesn't have one particular frequency it operates on. Via bluetooth.com:
Bluetooth technology operates in the unlicensed industrial, scientific and medical (ISM) band at 2.4 to 2.485 GHz, using a spread spectrum, frequency hopping, full-duplex signal at a nominal rate of 1600 hops/sec.
… adaptive hopping among 79 frequencies at 1 MHz intervals gives a high degree of interference immunity and also allows for more efficient transmission within the spectrum.
So there'll be a wide spread of frequencies in use for even a single connection to a single device. There's hardware on the market like the Ubertooth that can do packet captures and spectrum analysis.
To my knowledge, iOS doesn't offer API to find out this information. OS X does at some level, probably via SPI or an IOBluetooth API, because Apple's Hardware Tools (search for "Bluetooth") offer a way to monitor spectrum usage of Bluetooth Classic devices on OS X.
As to your desire to detect movement via the Doppler effect on the radios, my instincts say that it's going to be very, very difficult to do. I'm not sure what the exact mathematics behind it would look like, but you'll want to examine what the Doppler effect on a transmission at 2.4 GHz would be as a result of low-to-moderate rates of motion. (A higher rate of motion or relative speed, say, over a few tens of miles an hour, will be quickly make Bluetooth the wrong radio technology to use because of its low transmit power.)

Related

Is it possible to run a speaker recognition algorithm on a low-level embedded system(like Cortex-M0)?

I'm trying to implement a hello-world algorithm in speaker recognition, GMM-UBM, on an end-device MCU. Wifi/BLE...etc are not available due to some limitation.
The UBM is pre-trained on PC then downloaded to a flash memory that my MCU can access.
What will actually be run on the MCU are only speaker enrollment and testing, as known as a GMM model adaptation procedure and score(log-likelihood ratio) calculation.
For the purpose of this system is to tell if an input voice segment is from a target speaker or not, a score threshold should be selected. Hence, currently, after speaker enrollment, I use a bunch of impostor voices(pre-saved in flash memory) to calculate the impostor scores corresponding to the target speaker. Assuming the impostor scores is a 1-D Gaussian distribution, then I can decide the score threshold depend on the false alarm rate acceptable.
But here's the problem, the procedure above for threshold selection is time-consuming especially on a device with CPU clock rate < 100MHz. Imagine that you have to wait 1 minute or even longer time to get response from Google assistant first time you use it, that will be embarrassing.
The question are as below:
Is my concept right or there is some misunderstanding?
Is this a standard procedure to enroll a speaker and select a threshold?
Is there some method to reduce the computing time of the threshold selection procedure, or even a pre-defined threshold to avoid the on-chip computing?
Thanks a billion!!

Can I use a 2.4 GHz rated parabolic antenna for 700 MHz Verizon 4G LTE data?

Can I use a 2.4 GHz rated parabolic antenna for 700 MHz Verizon 4G LTE data?
It seems 700 MHz are a long ways from the range of a 2.4 GHz antenna, but I have seen people marketing similar looking parabolic antennas that claim they are wide spectrum and go down to 600 Mhz and up to 5GHz... I'm just not sure at what attenuation though?
Will the same Verizon tower switch me from 700 MHz to one of their higher frequencies with better reception?
Verizon Wireless appears to utilize multiple 4G LTE frequencies like 2.1 GHz, 1.9 GHz, 1.7 GHz, 850 MHz, and 700 MHz. I don't know if they would they would responsively switch me from 700 MHz to a higher frequency if my signal improves though??? This would be important if I need an antenna that would work on more than one frequency.
How I know the band I'm using: I used my iPhone to figure out I'm using band 13 for communication with my local Verizon tower, which is 700 Mhz by following these direction. I have LTE data miles away from the tower but it's not a good connection so I'm looking to get a highly directional antenna for my JetPack 7730L.
Specific use case
Here's the 900mm-wide (about 3 feet) parabolic antenna I'm looking at so you can have a specific example to pick on.
More than likely the answer to this is going to be no. Although it seems plausible that a 2.4Ghz antenna will be able to pick up or transmit frequency that are in a similar range - the reality is that cell phone signals and WiFi are drastically different technologies.
Moreover, stackoverflow is unlikely to provide a concrete answer to this question. You might have better luck in the Signal Processing area: https://dsp.stackexchange.com/
As a side note: the frequencies that Verizon is using are dependent on the environment and other cell towers that are in the area. It isn't something that you can just change on your phone.

Does iPhone/iPad use GPS and GLONASS in the same time? Can I manage them?

I know that iPhone/iPad could use GPS and GLONASS, but does they use they in the same time?
I didn't find that info in documentation. GPS demand 4 satellites for proper work, (3 without altitude). Same thing with GLONASS. So, if we use just GPS we get 4 satellites and get's our standard GPS accuracy, and it's tolerance about 10-20 meters in open sky. I didn't find specified accuracy on wiki GPS page, maybe I just missed, but anyway my numbers is close. As said wikipedia, GLONASS accuracy for civilian usage is very slightly less accurate than GPS, but on high latitudes (north or south), GLONASS' accuracy is better than that of GPS due to the orbital position of the satellites. GLONASS
So, if we use both systems simultaneously, we have a great accuracy improvement because we have 8+ satellites from both systems. My question is: does iPhone/iPad use both systems and their location coordinates still sometimes very inaccurate? Is there a way to turn on/off one of the systems?
iOS locates the current location with all available services. That means GPS, mobile telephony transmitters (mobile cells), WLAN, and the newer iPhone with GLONASS. We have no way to decide programmatically which system exactly we want to use, but there are different ways to use the iOS location services. The desired accuracy and other parameters can be set via the CoreLocation Framework classes.
You should read the Location Awareness Programming Guide from Apple.
The main advantage of using GLONASS together with GPS is in situations with bad view to the sky, e.g., in urban canyons.
In that case, the additional GLONASS satellites may help.
In open sky situations, a combined GPS/GLONASS has no accuracy benefit to a GPS chip alone.
You cannot switch off any one of the GNSS systems in iOS. (iPhone 4S is the first iPhone that uses combined GPS/GLONASS).

What units of power/energy consumption have Energy Levels in the Energy Instrument for an iOS app?

I'm actually measuring the energy consumption of my iOS application through the Energy instrument. I want to know the measure (e.g., in Joules) of the energy levels given by the Energy Instrument for an iOS app. Is there any relationship between the common energy consumption unit (Joules) and those energy levels? Thanks in advance for your response!
Energy Diagnostics reports power consumption as an un-united number between 0 and 20; we call them "electricities" at my office. Powergremlin gives you some insight into the actual numbers that make up said "electicity" units.
Depending on which app is set up on the platform, also the specified standard to the calculations such as British/American/SI standards. In general, in the European measurement system, the energy unit can be expressed in GWh/MWh/kWh and in the British system is "BTU" or "ktoe". Also, there are online platforms to convert these units to each other

Use Digital Signal Processors to accelerate calculations in the same fashion than GPUs

I read that several DSP cards that process audio, can calculate very fast Fourier Transforms and some other functions involved in Sound processing and others. There are some scientific problems (not many), like Quantum mechanics, that involver Fourier Transform calculations. I wonder if DSP could be used to accelerate calculations in this fashion, like GPUs do in some other cases, and if you know succcessful examples.
Thanks
Any linear operations are easier and faster to do on DSP chips. Their architecture allows you to perform a linear operation (take two numbers, multiply each of them by a constant and add the results) in a single clock cycle. This is one of the reasons FFT can be calculated so quickly on a DSP chip. This is also a reason many other linear operations can be accelerated with their use. I guess I have three main points to make concerning performance and code optimization for such processors.
1) Perhaps less relevant, but I'd like to mention it nonetheless. In order to take full advantage of DSP processor's architecture, you have to code in Assembly. I'm pretty sure that regular C code will not be fully optimized by the compiler to do what you want. You literally have to specify each register, etc. It does pay off, however. The same way, you are able to make use of circular buffers and other DSP-specific things. Circular buffers are also very useful for calculating the FFT and FFT-based (circular) convolution.
2) FFT can be found in solutions to many problems, such as heat flow (Fourier himself actually came up with the solution back in the 1800s), analysis of mechanical oscillations (or any linear oscillators for that matter, including oscillators in quantum physics), analysis of brain waves (EEG), seismic activity, planetary motion and many other things. Any mathematical problem that involves convolution can be easily solved via the Fourier transform, analog or discrete.
3) For some of the applications listed above, including audio processing, other transforms other than FFT are constantly being invented, discovered, and applied to processing, such as Mel-Cepstrum (e.g. MPEG codecs), wavelet transform (e.g. JPEG2000 codecs), discrete cosine transform (e.g. JPEG codecs) and many others. In quantum physics, however, the Fourier Transform is inherent in the equation of angular momentum. It arises naturally, not just for the purposes of analysis or easy of calculations. For this reason, I would not necessarily put the reasons to use Fourier Transform in audio processing and quantum mechanics into the same category. For signal processing, it's a tool; for quantum physics, it's in the nature of the phenomenon.
Before GPUs and SIMD instruction sets in mainstream CPUs this was the only way to get performance for some applications. In the late 20th Century I worked for a company that made PCI cards to place extra processors in a PCI slot. Some of these were DSP cards using a TI C64x DSP, others were PowerPC cards to provide Altivec. The processor on the cards would typically have no operating system to give more predicatable real-time scheduling than the host. Customers would buy an industrial PC with a large PCI backplace, and attach multiple cards. We would also make cards in form factors such as PMC, CompactPCI, and VME for more rugged environments.
People would develop code to run on these cards, and host applications which communicated with the add-in card over the PCI bus. These weren't easy platforms to develop for, and the modern libraries for GPU computing are much easier.
Nowadays this is much less common. The price/performance ratio is so much better for general purpose CPUs and GPUs, and DSPs for scientific computing are vanishing. Current DSP manufacturers tend to target lower power embedded applications or cost sensitive high volume devices like digital cameras. Compare GPUFFTW with these Analog Devices benchmarks. The DSP peaks at 3.2GFlops, and the Nvidia 8800 reachs 29GFlops.

Resources