我将致力于一个项目,尝试使用来自几个接入点的wifi信号强度来确定您的位置.我想知道是否有人知道任何类似的项目或任何关于该主题的文章
如果有人关心:它是我大学的一个研究项目.应用程序编写用作开发新的wifi天线,更适合这种类型的使用.我只是在项目的编码部分工作.哦,用c#写的,不是可选的
澄清:它唯一的无线网络.我们没有GPS优势,因为它应该在室内工作,软件应该通过使用接入点的已知位置及其信号强度来确定您的位置,以告诉您您的位置.它目前大约4-5米的精度,除了我已经有一个工作原型,只是想知道之前是否有任何相似的事情,或者如果有人对项目有任何提示或想法
我希望有人能给我你的帮助...(任何示例代码将不胜感激)
我打算做的是在ListBox中显示无线网络检测到我的电脑.
(连接和断开所选网络)
我打算在C#2010中这样做
谢谢.
我是否可以检查无线是否已启用,即使未连接到任何网络也是如此.我需要启用无线功能才能获得更准确的GPS读数.但我不需要承认任何网络(除非wi-fi处于活动状态,否则设备无法使用网络进行定位).对于数据传输,我将使用移动网络.
那么,如何检查无线是否被激活?
我正在使用套接字编程在C中编写应用程序.我希望将数据从服务器节点发送到客户端节点.我使用套接字描述符上的读写命令分别通过网络获取和发送数据.因为,使用的底层协议是TCP/IP,最后我收到了正确的数据.是否有可能在客户端检查是否正确接收数据,实际丢失和重新传输了多少数据包?我正在Linux(debian)环境中编写这个应用程序.
任何帮助都非常感谢!
-Rahulkumar
我使用一些 PIC 微控制器和 nRF24L01 无线 RF 模块创建了一个小型无线网络。其中一张 PIC 是 PIC18F46K22,它用作向所有其他 PIC 发送命令的主控制器。所有其他(从)微控制器都是PIC16F1454,到目前为止共有5个。这些从控制器连接到各种设备(主要是灯)。主微控制器用于向这些设备传输命令,例如打开或关闭灯。这些设备还将所连接设备的状态报告回主控制器,然后将其显示在 LCD 屏幕上。整个设置工作得非常好。
\n\n问题是,任何拥有这些廉价 nRF24L01 模块的人都可以简单地监听主控制器发送的命令,然后重复这些命令来控制设备。
\n\n加密命令\xe2\x80\x99不会有帮助,因为这些是简单的指令,如果加密,它们将始终看起来相同,并且不需要解密它就能够重新传输消息。
\n\n那么我该如何在这个系统中实现一定程度的安全性呢?
\n我有一个运行Linux内核2.6.32的机顶盒(无法升级,请不要这样做)。我正在使用配置为使用WEXT驱动程序的Realtek 8192CU驱动程序。是什么会导致iwlist扫描不断返回缓存的结果?看起来,当STB启动并进行第一次扫描时,它会获得准确的列表并连接到接入点就可以了。但是,后续扫描将返回完全相同的信息(即使信号强度和质量相同)。
很少有扫描会返回新结果,但是我找不到成功扫描之间的时间间隔(有时是几小时)的任何模式。
当有新结果集可用时,dmesg中将显示“调查完成事件(xx)”消息。
使用wpa_cli,我运行以下命令并获得响应。
>scan ra0
OK
<3>CTRL-EVENT-SCAN-RESULTS
Run Code Online (Sandbox Code Playgroud)
但是,“ wpa_cli scan_results”返回的缓存信息与iwlist完全相同,并且dmesg中没有“调查完成事件(xx)”消息。
任何人都可以阐明这里可能发生的情况吗?我想弄清楚如何可靠地触发对新AP的扫描。
感谢您的任何帮助!
我想获得与我的设备连接的这个wifi的信号强度.这可能很容易.但我是初学者.这是家庭作业.怎么弄?
我试过这段代码.但它不起作用.
registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
int state = wifi.getWifiState();
if(state == WifiManager.WIFI_STATE_ENABLED) {
List<ScanResult> results = wifi.getScanResults();
for (ScanResult result : results) {
if(result.BSSID.equals(wifi.getConnectionInfo().getBSSID())) {
int level = WifiManager.calculateSignalLevel(wifi.getConnectionInfo().getRssi(),
result.level);
int difference = level * 100 / result.level;
int signalStrangth= 0;
if(difference >= 100)
signalStrangth = 4;
else if(difference >= 75)
signalStrangth = 3;
else if(difference >= 50)
signalStrangth = 2;
else if(difference >= 25)
signalStrangth …Run Code Online (Sandbox Code Playgroud) 通常,如果我想打印命令的输出,并在文件中捕获该输出,tee就是解决方案。但我正在使用一个似乎有特殊行为的实用程序制作一个脚本。它就是wps无线评估工具bully。
如果我正常运行 bully 命令(不带 tee),输出将以标准方式逐步显示。但是,如果我将管道放在末尾这样进行记录,| tee "/path/to/my/logfile"屏幕上的输出就会冻结。在命令结束之前它什么也不显示。结束后,它一次性显示所有内容(不是一步一步),当然它也将输出放入日志 tee 文件中。
bully 命令的示例:bully wlan0mon -b 00:11:22:33:44:55 -c 8 -L -F -B -v 3 -p 12345670 | tee /root/Desktop/log.txt
为什么?不确定这是否只发生在恶霸身上,或者是否还有其他程序具有相同的行为。
是否有另一种方法可以将输出捕获到实时在屏幕上显示输出的文件中?
我的 HP Pavilion 笔记本电脑出现问题。wifi 随机断开,Ubuntu 屏幕顶部出现提示,提示您需要进行身份验证,点击提示,显示当前 wifi 的密码条目。通过单击确定或什么都不做,一分钟后 wifi 再次连接。
我找不到断开连接的原因或模式。
这是我的wifi规格:
'''
*-network
description: Wireless interface
product: Dual Band Wireless-AC 3168NGW [Stone Peak]
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:05:00.0
logical name: wlo1
version: 10
serial: f8:94:c2:4f:86:6b
width: 64 bits
clock: 33MHz
capabilities: bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=5.4.0-26-generic firmware=29.1654887522.0 ip=192.168.1.3 latency=0 link=yes multicast=yes wireless=IEEE 802.11
Run Code Online (Sandbox Code Playgroud)
'''
我的 ubuntu 是 20.04,在更新到 20.04 之前,我在 ubuntu 18.04 上遇到了同样的问题。我在这台笔记本电脑上装有 Windows 10,但问题从未发生在 Windows 中。
我尝试使用“软件和更新”设备更新 wifi 的驱动程序,但在我使用它时显示“此设备无法工作”。
另外,我尝试了“apt …
我正在寻找可以模拟3G无线网络的数据包丢失和延迟特性的Windows网络仿真器.
我过去常常使用GIP中已经过期的工具.我也尝试过Shunra Virtual Enterprise,但发现它有点太基础了