I am using ESP8266 SMING framework.
I would like to adjust the signal strength of the soft-ap. Are there any APIs to do this?
Reviewing the Espressif sdk yields no such option for the AP mode. It seems like you are out of luck.
I think you'll find that you can do that with
WiFi.setOutputPower(20.5); // set highest WiFi power
I'm using the Arduino API.
Using the (free) Android wifi analyzer app
https://play.google.com/store/apps/details?id=com.farproc.wifi.analyzer&hl=en_GB
I observed an increase in signal strength
Related
I am having trouble getting a straight answer.
I want to access iOS Wifi:
SSID
Channel
Frequency
Signal strength dBm
Lan Speed
Neighbor APs
Devices Connected to WLAN
did I miss any?
Apparently this URL is NOT for accessing the above:
https://developer.apple.com/documentation/networkextension/hotspot_helper
This is for NEHotspotHelper.
NEHotspotHelper is not for harvesting the low level data.
All Apple docs send folks to NEHotspotHelper and this is not the information for wifi harvesting.
My QUESTION is:
Where exactly is the specific documentation on how to harvest this low level data for iOS devices, please?
I am looking for a way to load data from an embedded device via a serial port (RS232) to an iPhone. The app needs to be on the AppStore and our company is not part of the MFI program.
Before you say, it can't be done, we are looking into Bluetooth Low Energy 4.0 as a possible solution. We can create a device that can turn ConnectBlue's OBS421 module into a serial port adapter (with the speed bursts limitation). To that effect, connectBlue provides their own protocol called Serial Port Service, but it is documented only on a very high level.
Does anyone have any experience in using this protocol? If so, can you provide an example(objective C) code that establishes communication in this way?
Has anyone submitted an app to Apple that does this without getting rejected for infringing MFI rules?
One more question.. The device I am trying to connect only supports serial commands in the EZII Escape Computer Command Set standard (PROG ID of "EZ2 2.0" and higher). They look different than the common ATT-Commands. Example: <ESC>Gc100<EOT>.
Any idea if I can send such commands via ConnectBlue's LE-SPS?
Your help is much appreciated.
Thank you!
I haven't used this protocol but from the documentation it seems quite straight-forward. You should be able to take any of the core-bluetooth examples and adapt it fairly quickly.
You need to look for a peripheral that is offering service 0x2456e1b926e28f83e744f34f01e9d701
This service exposes two characteristics -
0x2456e1b926e28f83e744f34f01e9d703 to read & write to the serial port
0x2456e1b926e28f83e744f34f01e9d704 for "credits" if you need flow control. Essentially it seems that this value indicates the number of bytes you can send to the device and you can write a value to indicate the number of bytes you are prepared to receive from the device
The device should support a full 8-bit data path, so I don't see why you would have a problem sending the serial commands.
Bluetooth Low Energy is specifically excluded from the MFI program, so you won't get rejected on that basis -
I want to develop an accessory that communicates with an Apple device
using only Bluetooth Low Energy. Do I need to join the MFi Program?
No. Accessories which connect to an Apple device using only Bluetooth
Low Energy/BTLE/Bluetooth 4.0 or standard Bluetooth profiles supported
by iOS are not part of the MFi Program.
Bluetooth Low Energy does not have a SPP defined as a standard protocol.
You have to program it yourself using the GATT service/characteristics, you just need to generate your own 128bit UUID (google it, there are plenty of UUID generators and even on Mac or Linux it's easy to generate from command prompt)
GATT sends smaller chunks of data which you would have to concatenate yourself in the other end.
Be aware that the throughput of BLE is quite low compared to Bluetooth Classic SPP. Maybe around 3kbytes/sec.
I am trying to find a way to access the battery levels from my beacons through an iOS application I am currently working on. I am using Kontakt's iBeacon devices. I browsed the Estimote iOS SDK and they provide a method to achieve this. I was wondering if it is at all able to access the raw beacon packet and manually extract the data since I know the beacon packet structure and the information is there.
Any thoughts on how to achieve this by the method mentioned here or any other way?
Thanks Guys.
This is Rafal from kontakt.io. Firstly, let me thank you for choosing us, it means a lot for us.
Propagation of battery level is not standard for iBeacons nor it is in any official iBeacon documentation, so that is why you cannot find the value using custom SDKs. Our iBeacons are propagating battery level in scan response packet which may be discovered using CoreBluetooth API in iOS. The level is one byte value at the 23rd byte in the packet.
Hope it helps :)
As far as I am aware there is nothing in the iBeacon advertisement itself that contains the battery level. Some beacons may expose additional BLE ATT services that contain this information. You could try using an application like LightBlue from the app store to explore the services available from your devices
I am trying to set one pin of the old iPhone 30-Pin Connect from low to high so the best would be from 0V to 3,3V. Is that possible with a simple PodBreakout board like this?
https://www.sparkfun.com/products/8295
If not can you send a constant voltage out of the iPhones audio jack (This could be a good method too, cause now apple used its 9-Pin Lightning Connector).
I already searched the web, some say you have to jailbreak your iDevice, some say you need an authentication Chip, and some say it works flawlessly without an authentication chip, but I cant find any help online.
Thanks
You can't "send a constant voltage" out of the audio jack. There is a series capacitor there that filters out DC and very low frequency signal components.
To get proper help on this you can apply for the MFi program. I think it's free for educational purposes. It's under 100$ for sure. There is an NDA involved.
If you want to avoid the MFi you can always use BLE to communicate with periphery.
Or try to implement software FSK (or DTMF) modem on one side and a hardware one on the other side (using the audio lines).
Since it seems you simply want so see a binary (on/off) signal - you could generate a fixed pitch tone in the app (2kHz for example) and use a narrow-band filter on the hardware side (audio-jack connection).
Or maybe (to make sure your app is present on the other side a 2kHz tone would mean 0 and a 4kHz tone could stand for 1.
The authentication chip (and an MFi license)) you are talking about is needed when you try to communicate with the iOs device:
via BT (excluding BLE)
via USB (30 pin connector or lighting connector)
via UART (30 pin connector or lighting connector)
I would like to develop an (personal) iphone app to use the iPhone as a controller for a small device such as a fan or for example a light bulb. Does anyone know if there is some kind of controllable iphone-dock to use for something like this. And are there some kind of methods to use with such a dock? For example the fan just needs a variable voltage for different rpm.
Thanks in advance,
EAAccessory requires that you become a Apple hardware partner, which is very expensive and not easy (this is why you only see large companies releasing hardware accessories for iOS devices).
There's a few ways around this. The easiest way is to have your app send OSC signals over WIFI to an OSC server. I've set this up before using TouchOSC on the iPhone and an Arduino connected to my desktop via USB. It's not hard at all, but it requires that you have an Arduino connected to a computer; it's not ideal.
Alternatively you can use audio output to send commands over the line output in the iPhone's dock connector, effectively turning the iPhone into a software modem.
Good luck and if you get this figured out, post the code on github. :-D
EAAccessory framework might not be what you want because of the requirement for you to have the license and hardware. You could better implement some sort of small webserver that runs an arduino or something similar. check this out for an example of that. on the arduino, you could just have a 5v relay to control the switch of whatever device and have the other pins of the relay connected to a hot (or cold depending on the relay state) standard 120v plug so you can plug anything into it. here is a good project for arduino controlled relay
for direct serial control, you could do something like this but it would require being jailbroken. i think for a personal app, doing it via wifi would be the best way unless you jailbreak and install the full bluetooth stack where you do not need EAAccessory stuff
Check out EAAccessory Framework. Used to handle external devices.
You could try using an ultrasound detector attached to your device, and playing an audio file at the appropriate frequency etc. on the iPhone.