¿Se podrían detectar las balizas desde el módulo SKB360 usando
¿AT + SCAN_BLE en el comando en modo UART?
Bueno, ya que ambos productos son fabricados por la misma compañía, debe preguntarles.
Sin embargo, utilizando mi experiencia, aunque con un conjunto diferente de productos, de un fabricante diferente, así es como hice las pruebas iniciales.
Tal vez tengan una placa de desarrollo que puedas probar primero, antes de enviar un diseño personalizado a un PCB.
He visto proyectos que utilizan Raspberry Pi y algunos módulos BLE.
requiere bibliotecas complejas
Las bibliotecas complejas son el resultado de la palabra dura de otra persona. Si desea utilizar este producto, profundícelo y compréndalo lo mejor que pueda. Dedicar algo de tiempo y esfuerzo a aprender las bibliotecas existentes casi siempre le ahorrará más tiempo y esfuerzo a largo plazo. A menudo, también abrirá nuevos caminos para el desarrollo futuro de su sistema, tal vez en formas que no anticipó.
Hay ocasiones en las que encontrarás que es mejor volver a crear la rueda. En mi opinión, es mejor aprender primero las herramientas existentes, para que luego se pueda tomar una decisión informada.
Muchas veces el fabricante del módulo tendrá un conjunto de bibliotecas para los uC que requieren ajustes menores para la plataforma de su elección. Deberías contactarlos.
¡Buena suerte!
A continuación se muestra un código de prueba pirateado (python), donde busco dispositivos Bluetooth específicos desde una computadora de escritorio mediante la llave de desarrollo Bluetooth del fabricante conectada a través de un puerto de comunicaciones virtual:
#Scan the area for remote bluetooth devices
#Return boolean and a list of addresses
def ATDI(port):
port.flushInput()
ok, data = br_RCV_Event(port, 'ATDI\r', ['DONE'], timeout = 50, show=True)
if (ok) :
#get a list of discovered items
data = filter(lambda x: 'DISCOVERY' in x,data)
if (DEBUG):
print "ATDI: Data from Event: ", data
#itemize all discovered addresses
newdata = []
for item in data:
device = [x.strip() for x in item.split(',')]
address = device[2]
signal_strength = device[4]
#only add OUR devices to the list
if (address.find('ECFE') >= 0) :
newdevice = []
newdevice.append(address)
newdevice.append(signal_strength)
newdata.append(newdevice)
#reduce list to remove duplicates
dev_dict = {}
for device in newdata:
address = device[0]
signal_strength = device[1]
dev_dict[address] = signal_strength
#we now have a dictionary of devices and signal strengths
#convert back to a list to keep the output consistant
data = []
for address, signal_strength in dev_dict.iteritems():
device = [address, signal_strength]
data.append(device)
if (len(data) < 1) :
ok = False
print "ATDI: BlueTooth devices found. But none of OUR devices were found."
else:
print
print "ATDI: Found (" + str(len(data)) + ") compatible BlueTooth devices:"
for device in data:
print "Address: ",device[0], " -- Signal Strength: ", device[1]+"dBm"
print "--------------------------------------------------"
print
return ok, data