PSoC™ 4 Forum Discussions
text.format{('custom.tabs.no.results')}
My Pioneer Kit not communicate to PC ( No one port in Teraterm). Status LED blinks slow.
In Guide I see that need " bootload the new .cyacd file using the Bootloader Host tool shipped with PSoC Creator."
I run Bootloader Host tool but it can't communicate by USB because this problem.
So I connected to Kit with MiniProg3 by 5 pin connector (J7) .
I can comunicate to device by this MiniProg3 for write firmware (see attached PK1.png) but Bootloader Host tool can`t ( see attached PK2.png)
Other same Kit is working well so it`s only this Kit problem.
How can I solve this problem ?
Show LessFirst of all, after program the code (build the project + program main.c). and press SW 2 the motor not rotate as well. (And i redo it press SW1 to reset and SW2 to start the motor). By the way the problem is.
1. No bug ( successful when compile the code, also update the component), no blinking and light on LED 2 on EVK board
2. my input is 5VDD on 042 pioneer kit, and the wire connected red ,yellow, black. and the jumper.
So anyone can tell me what's the factor of this problem and how can i fixed. Thanks for your advise.
Show LessHello,
I would like to know what is the good approach to structurers custom services and caracteristics :
What i have actually is :
2 custom services, let say Custom service A and custom service B
Custom service A has 6 characteristics
Custom service B own 11 characteristics
+ generic access service + generic attribute + batterie services
Does i have to rework that to keep the number of custom services and caracteristics lower ? Does i have to just use 1 service, because 1 custom service for 1 product is just sufficient.
What the maximum number of services or characteristics that Posc or Proc devices can handle ?
I had a problem actually with my phone app, when sometimes the connection just fail (it's totally random, and the BLE stack don't even enter in the connection state, but my app catch a connection error, and from HCI log on the phone i have a "connection failed to be etablished (0x3e)".
Other thing that i don't understand is about customm uuid (i have read the Cypress app note about UUID but it doesn't help me).
What i have done actually is to generate for each service or caracteristic a random UUID made by a generator, is that a correct way ? I have seen that in other device some generate a base UUID and have some incrementations of a part of the UUID. Cypress app note doesn' t help me because my companie doesn't own an UUID from sig.
Thanks for you help in advance.
Show LessHi everyone,
I used a CY5677 USB dongle with cysmart.py CySmart api.
Python script:
from CySmart import * import serial import time import binascii from struct import * import threading import Queue import sys import datetime def main(): cySmart = CySmart() cySmart.start(0x00, r'\.\COM5') cySmart.sendCommand(cySmart.Commands['CMD_START_SCAN']) cySmart.close() if __name__ == "__main__": main() |
After running the program I got a Timeout.
If I used the CySmart Debugger tool, everything was OK.
If I used the script above, I did not receive any data from USB dongle.
The CySmart.py script was waiting buffer data(self.serin.inwaiting()), but after timeout (2 sec), it was exited.
Any suggestion or advice?
Thanks so much.
Show LessDear all,
I'm building a custom BLE-Service and i've stumbled on the folowing problem:
Since I am required to use a ATT_MTU-3 Size i can only send 20 bytes of data in each notification. But I have to send a notification which is longer (e.g. 36 bytes) and all these bytes need to be stored in the same characteristic. Now I am wondering if there is a way to split this data into 2 notifications.
The part i have now will send a notification of 20 bytes of data and i can receive it on the client side. When i use the READ function on the client side i get the full 36 bytes of data. Whenever i change the length from 20 to anything larger the notification will not be send, I am aware that this has to do with the ATT_MTU size. (I do not want to increase the ATT_MTU size!!)
void UpdateGaid(void)
{
if(CyBle_GetState() != CYBLE_STATE_CONNECTED)
{
return;
}
CYBLE_GATTS_HANDLE_VALUE_NTF_T tempHandle;
tempHandle.attrHandle = CYBLE_CHARACTER_HANDLE;
tempHandle.value.val = (uint8 *)&MyData;
tempHandle.value.len = sizeof(MyData);
CyBle_GattsWriteAttributeValue(&tempHandle, 0, &cyBle_connHandle, 0);
if(CyBle_GattGetBusStatus() == CYBLE_STACK_STATE_FREE && Notify)
{
ble_SendNotification(CYBLE_CHARACTER_HANDLE, (uint8 *)&GaiData, 20);
}
}
void ble_SendNotification(CYBLE_GATT_DB_ATTR_HANDLE_T characteristic, uint8* data, uint16 length)
{
CYBLE_GATTS_HANDLE_VALUE_NTF_T notification;
notification.value.val = data;
notification.value.len = length;
notification.attrHandle = characteristic;
if (CyBle_GattsNotification(cyBle_connHandle, ¬ification) != CYBLE_ERROR_OK)
{
DBG_PRINTF("ERROR sending notification\r\n");
}
else
{
DBG_PRINTF("sending notification\r\n");
}
}
Show LessDoes anyone know the details of the format of the following commands use in BLE Dongle
0400 | CyBleEvtGetDeviceIdRsp |
0401 | CyBleEvtGetSupportedToolVersionRsp |
0402 | CyBleEvtGetFirmwareVersionRsp |
0403 | CyBleEvtGetBleStackVersionRsp |
0404 | CyBleEvtMiscNotification |
0405 | CyBleEvtGetSupportedGapRolesRsp |
0406 | CyBleEvtGetCurrentGapRoleRsp |
0407 | CyBleEvtGetSupportedGattRolesRsp |
0408 | CyBleEvtGetCurrentGattRoleRsp |
0409 | CyBleEvtGetRssiRsp |
040A | CyBleEvtGetDeviceDescriptionRsp |
040B | CyBleEvtGetHardwareVersionRsp |
047E | CyBleEvtCmdStatus |
047F | CyBleEvtCmdComplete |
0500 | CyBleEvtCbfcConnectionIndication |
0501 | CyBleEvtCbfcConnectionConfirmation |
0502 | CyBleEvtCbfcDisconnectIndication |
0503 | CyBleEvtCbfcDisconnectConfirmation |
0504 | CyBleEvtCbfcDataReceivedNotification |
0505 | CyBleEvtCbfcRxCreditIndication |
0506 | CyBleEvtCbfcTxCreditIndication |
0600 | CyBleEvtDiscoverAllPrimaryServicesResultProgress |
0601 | CyBleEvtDiscoverPrimaryServicesByUUIDResultProgress |
0602 | CyBleEvtFindIncludedServicesResultProgress |
0603 | CyBleEvtDiscoverAllCharacteristicsResultProgress |
0604 | CyBleEvtDiscoverCharacteristicsByUUIDResultProgress |
0605 | CyBleEvtDiscoverAllCharacteristicDescriptorsResultProgress |
0606 | CyBleEvtReadCharacteristicValueRsp |
0607 | CyBleEvtReadUsingCharacteristicUUIDRsp |
0608 | CyBleEvtReadLongCharacteristicValueRsp |
0609 | CyBleEvtReadMultipleCharacteristicsValueRsp |
060A | CyBleEvtReadCharacteristicDescriptorRsp |
060B | CyBleEvtReadLongCharacteristicDescriptorRsp |
060C | CyBleEvtCharacteristicValueNotification |
060D | CyBleEvtCharacteristicValueIndication |
060E | CyBleEvtGattErrorNotification |
060F | CyBleEvtExchangeGattMtuSizeRsp |
0610 | CyBleEvtGattStopNotification |
0680 | CyBleEvtGetDeviceIoCapabilitiesRsp |
0681 | CyBleEvtGetLocalBDAddrRsp |
0682 | CyBleEvtGetPeerBDAddrRsp |
0683 | CyBleEvtGetPeerDeviceHandleRsp |
0684 | CyBleEvtUpdateConnectionParametersRsp |
0685 | CyBleEvtGetConnectionParametersRsp |
0686 | CyBleEvtGetScanParametersRsp |
0687 | CyBleEvtGetLocalDeviceSecurityRsp |
0688 | CyBleEvtGetPeerDeviceSecurityRsp |
0689 | CyBleEvtGetWhiteListRsp |
0690 | CyBleEvtConnectionTerminatedNotification |
068A | CyBleEvtScanProgressResult |
068B | CyBleEvtGenerateBdAddrRsp |
068C | CyBleEvtGenerateKeysRsp |
068D | CyBleEvtPasskeyEntryRequest |
068E | CyBleEvtPasskeyDisplayRequest |
068F | CyBleEvtEstablishConnectionRsp |
0690 | CyBleEvtConnectionTerminatedNotification |
0691 | CyBleEvtScanStoppedNotification |
0692 | CyBleEvtPairingRequestReceivedNotificaion |
0693 | CyBleEvtAuthenticationErrorNotificaion |
0694 | CyBleEvtConnectionCancelledNotification |
0695 | CyBleEvtGetBondedDevicesListRsp |
06FF | CyBleEvtInternalScanStopInProgressNotification |
FC00 | CyBleCmdGetDeviceId |
FC01 | CyBleCmdGetSupportedToolVersion |
FC02 | CyBleCmdGetFirmwareVersion |
FC03 | CyBleCmdGetSupportedGapRoles |
FC04 | CyBleCmdGetCurrentGapRole |
FC05 | CyBleCmdGetSupportedGattRoles |
FC06 | CyBleCmdGetCurrentGattRole |
FC07 | CyBleCmdInitBleStack |
FC08 | CyBleCmdHostDisconnectNotification |
FC09 | CyBleCmdHostTimedoutNotification |
FC0A | CyBleCmdGetDeviceDescription |
FC0B | CyBleCmdGetHardwareVersion |
FC0C | CyBleCmdGetBleStackVersion |
FC0D | CyBleCmdGetRssi |
FC0E | CyBleCmdResetBleStack |
FD00 | CyBleCmdRegisterPsm |
FD01 | CyBleCmdUnregisterPsm |
FD02 | CyBleCmdCbfcEstablishConnection |
FD03 | CyBleCmdCbfcSendConnectionResponse |
FD04 | CyBleCmdCbfcSendFlowControlCredit |
FD05 | CyBleCmdCbfcSendData |
FD06 | CyBleCmdCbfcSendDisconnect |
FE00 | CyBleCmdDiscoverAllPrimaryServices |
FE01 | CyBleCmdDiscoverPrimaryServicesByUUID |
FE02 | CyBleCmdFindIncludedServices |
FE03 | CyBleCmdDiscoverAllCharacteristics |
FE04 | CyBleCmdDiscoverCharacteristicsByUUID |
FE05 | CyBleCmdDiscoverAllCharacteristicDescriptors |
FE06 | CyBleCmdReadCharacteristicValue |
FE07 | CyBleCmdReadUsingCharacteristicUUID |
FE08 | CyBleCmdReadLongCharacteristicValue |
FE09 | CyBleCmdReadMultipleCharacteristicValues |
FE0A | CyBleCmdWriteCharacteristicValueWithoutResponse |
FE0B | CyBleCmdWriteCharacteristicValue |
FE0C | CyBleCmdWriteLongCharacteristicValue |
FE0D | CyBleCmdReliableCharacteristicValueWrites |
FE0E | CyBleCmdReadCharacteristicDescriptor |
FE0F | CyBleCmdReadLongCharacteristicDescriptor |
FE10 | CyBleCmdWriteCharacteristicDescriptor |
FE11 | CyBleCmdWriteLongCharacteristicDescriptor |
FE12 | CyBleCmdExchangeGattMtuSize |
FE13 | CyBleCmdGattStop |
FE80 | CyBleCmdSetDeviceIoCapabilities |
FE81 | CyBleCmdGetDeviceIoCapabilities |
FE82 | CyBleCmdGetLocalBDAddr |
FE83 | CyBleCmdSetLocalBDAddr |
FE84 | CyBleCmdGetPeerBDAddr |
FE85 | CyBleCmdGetPeerDeviceHandle |
FE86 | CyBleCmdGenerateBdAddr |
FE87 | CyBleCmdSetOOBData |
FE88 | CyBleCmdGetConnectionParameters |
FE89 | CyBleCmdSetConnectionParameters |
FE8A | CyBleCmdGetScanParameters |
FE8B | CyBleCmdSetScanParameters |
FE8C | CyBleCmdGetLocalDeviceSecurity |
FE8D | CyBleCmdSetLocalDeviceSecurity |
FE8E | CyBleCmdGetPeerDeviceSecurity |
FE8F | CyBleCmdGetWhiteList |
FE90 | CyBleCmdAddDeviceToWhiteList |
FE91 | CyBleCmdRemoveDeviceFromWhiteList |
FE92 | CyBleCmdClearWhiteList |
FE93 | CyBleCmdStartScan |
FE94 | CyBleCmdStopScan |
FE95 | CyBleCmdGenerateKeys |
FE96 | CyBleCmdSetAuthenticationKeys |
FE97 | CyBleCmdEstablishConnection |
FE98 | CyBleCmdTerminateConnection |
FE99 | CyBleCmdInitiatePairingRequest |
FE9A | CyBleCmdTerminatePairingRequest |
FE9B | CyBleCmdPairingPasskeyResponse |
FE9C | CyBleCmdUpdateConnectionParameters |
FE9D | CyBleCmdCancelConnection |
FE9E | CyBleCmdGetBondedDevicesList |
Hi,
I try to use the code example BLE_Battery_Level.
I change the target decice to use CYBLE-222014-01 eval board with the CY8CKIT-042-BLE Pioneer kit.
I connect the jumper from P3[5] to VREF on the Pioneer board
The reading it not good. It's 100% all the time.
How can I fix that?
Regards
Martin
Show LessHI
I have a small issue, I have made an application on a PSOC 4 BLE, and in this application I’m using
Custom characteristic some with Read and write properties, and one use Indicate.
Every things work fine with the CySmart dongle, a laptop with an internal Bluetooth radio and with my android phone.
But on windows 10 mobile I’m not getting a acknowledges form the mobile when it has received a data packet, when doing Indicate, read and write works fine here as well.
The Custom characteristic with Indicate, use a data length of 450 byte.
I’m not doing the windows software I’m just trying to help the software guy.
Has any of you experienced similar problems, please let me know. Thanks in advance.
best regards.
Show LessIm attempting to run the BLE101 example, everything compiles and runs fine in Android Studio and the BLE101 app launches on the device. When I click "Start Bluetooth" on the device "BLE has stopped, restart app" immediately pops up. I click the restart app on the device and the BLE101 app reboots. When I click "Start Bluetooth" I then get "BLE101 keeps stopping, close app".Clicking restart app on the device stops the Android Studio debug session. Any Ideas?
PC AMD A8; Windows10 Home64, Android Studio 3.0.1, latest updates installed
Samsung -SM-J727V Android ver 7.0, latest updates installed
Thanks Wayne
Show Less