PSoC™ 4 Forum Discussions
Hi everybody,
I'm working on CYBLE222014, to read data from an UV sensor from Vishay (VEML6070). This sensor has one write register(0x70>>1) and two read register(0x71>>1 and 0x73>>1), for UV MSB and LSB. In the datasheet they say to inizialize the sensor with 2 step: first read ACK register(0x18>>1) and second write 0x06 in write register(0x70>>1); than you can read the UV value from the 2 registers, but if i run my code i read only 0x0000. I think i make a mistake in the read function, but I checked many times and seems OK.
Any idea to solve?
Best Regards
Francesco
Show LessThere are two definitions with similar names but different values in CyBle_StackGap.h - CYBLE_GAP_ADDR_TYPE_PUBLIC (value 0), and CYBLE_GAP_PUBLIC_ADDR. (value 2). The structure CYBLE_GAP_BD_ADDR_T also has a field named type, which should be 0 for a public address and 1 for a random one.
I would like to clarify how I can correctly use those definitions - when or where is each one of them intended to be used?
Show LessHi All
I have the UART to Ble central code running on a CY5677 dongle along with the UART to Ble peripheral code on a CY8C4248LQI-BL583.
I have a 2 CoolTerm windows on my PC, one connected to the CY5677 dongle and the other connected to the CY8C4248LQI-BL583. module.
When I type in the dongle window I see the characters in the module window , and vice versa.
HOWEVER
When I uncomment
#define LOW_POWER_MODE
in the peripheral code main.h and rebuild, I only see traffic in the dongle to module direction.
I cannot see any traffic in the module to dongle (peripheral to central) direction.
Does any body know why ?
Tim
Show LessHello All,
I'm new to 4100s plus. I'm trying to achieve a 'storage' mode for a battery powered application. It's a very simple circuit from a CR2032, a sensor and a couple of LEDs.
I've got the consumption at between 1..2mA and I'm disappointed. My expectations were <100uA and the datasheet seems to indicate this is possible.
The application is in deepsleep for 30 seconds at a time, then wakes to check the sensor @ 1mA for 270ms. My CR2032 is flat in 10 days at the moment.
I'm using the Capsense Low power example as a starting point and it uses the WDT interrupt to wake from deep sleep. Capsense is turned off, was removed from project, not needed.
Any thoughts?
What is the 4100S plus family capable of?
Project is attached. Readable, but it's a mess, still need giant cleanup before going to client. Don't judge me.
Thanks,
Brent.
Show LessHas anyone had any luck getting a Fordata MCOB21605GX 16x2 OLED (using 4-bit OLED1311 controller) display working, who could help? I have been using LCDs for bar graphs & text, but this OLED is simply not playing!
Thankyou
Show LessHello all,
I would like to use authentication in my device so I started with Day016_Authentication
I added CyBle_GapFixAuthPassKey because I do not have a display, and CyBle_GappStartAdvertisement when CYBLE_EVT_GAP_DEVICE_DISCONNECTED
I input 0 -> DISPLAY_ONLY
Using an android phone I get:
Bluetooth Stack ON:
Set the I/O capabilities:
Updated the I/O capabilities:DISPLAY_ONLY
Started to advertise
Device Connected
CYBLE_EVT_GAP_AUTH_REQ from Master:
security: Authentication and Encryption
Bonding:yes
eKeySize: 0x10
err: 0x0
Encryption ON
KEYINFO_EXCHANGE_COMPLETED
Long term Key: 970be307d61ac437c93efa5df4763b72
Encrypted Diversifier: 316a
Random Number:1e85951f707114ad
Indentifier Resolving Key: 5ecc67062f22b1ff6c220ad7ef9593ae
Public device/Static Random address: 1cb72c56eec8
Address Type:PUBLIC
Connection Signature Resolving Key: 27f25b2540d5ab65bdfbc33982f8ee51
AUTHENTICATION_COMPLETED:
Security: Unauthenticated and Encryption
Bonding:yes
eKeySize: 0x10
err: 0x0
Device Disonnected
Started to advertise
On the phone the passkey was never asked and, as you can see, the connection is "Unauthenticated and Encryption"
What am I missing?
Show Less嗨,請問一個關於ADC Interrupt的問題,程式ADC的通道(CH0)只有一個,
為什麼ADC轉換完畢後,程式都會重複進入ADC中斷一次?
(我預期的程式為ADC轉換完畢後只會進入一次ADC中斷)
附上我的程式流程、執行結果與程式檔案。
提供程式流程:
Step1. 程式初始化時,我會執行ADC_Start(); 與 ADC_IRQ_ENABLE(); 。
Step2. Timer產生中斷後會執行ADC_StartConvert(),GPIO訊號(藍色波形)反向
一次確認已進入Timer中斷。
Step3. ADC轉換完畢後會進入ADC中斷,將運算結果取出後,清除旗標,
GPIO訊號(紅色波形)反向一次確認已進入ADC中斷。
CY_ISR(ADC_ISR)
{
Uint32 intr_status;
Intr_status = MotorCur_ADC_SAR_INTR_REG;
//執行GPIO 訊號反向
//讀取ADC結果
ADC_StopConvert();
ADC_SAR_INTR_REG=intr_status;
}
Step4. 等待Timer中斷產生。
提供示波器波形:
Show Less
Central/Master: Application built on CySmart 1.3, as well as the CySmart application, on a CY5677 BLE 4.2 dongle, Windows 10
Peripheral/Server: nRF52833-DK
40s after Central connects to the peripheral, the peripheral disconnects due to a LMP Response Timeout (0x22). My understanding is that this is a 40s timeout. In the attached Ellisis Bluetooth Analyzer trace (LMPTimeout.btt), we see that the peripheral resumed advertising at 48.702 455 000. Going back 40s, to 8.700 884 500, we have an incomplete LLCP Data Length Update sequence; the nRF sent a LL_LENGTH_REQ to the pSoC4. The pSoC4 never responds, and 40s latter the nRF disconnects and resumes advertising.
This happens 100% of the time! We use the CySmart/Dongle combination in our automated testing.
Given that I see it with the CySmart 1.3 application, I assume it's a BLE stack issue. However, is there a CySmart API callback I should implement to force the LL_LENGTH_REQ response?
Thanks,
Randy
Show LessHi
Im trying to add a OTA update funtion to my project, using a CYBLE-0222-014
I have followed this application note: https://www.cypress.com/file/198301/download
And Adding an Upgradable Stack OTA Bootloader
My problem is that when i programming my application to the device it start the BLE_OTA_UpgradableStackExample_Launcher, and does not start my application, as i expected.
How do the BLE_OTA_UpgradableStackExample_Launcher application knows which application to start.
I expected it will eiter start the Startbootloder or the Application. ?
I have allso tried to only load the BLE_OTA_UpgradableStackExample_Stack into the target, then i can start the process upgrading the application, but at the end i got an checksum error. How comes?
Show LessHi,
I'm using CySmart 1.3 with the CySmart BLE 4.2 USB Dongle (FW 1.2.2.32 / HW 2.0.0.0).
I'm pairing with different peripheral devices (JustWorks, LE Legacy Pairing) and sniffing the connection with BTLEjack.
I have found that the "Pairing Random" sent by the Master (the CySmart Dongle) does contain only 8 bytes of presumably random data. The other 8 bytes are zero.
e.g.: Random Value: 58dcabe6d25e32760000000000000000
Do you have any idea what caused this behaviour?
Even though the Random Value is not important when using the JustWorks Method, I still find this behaviour strange...
EDIT:
This also happens when pairing in Secure Connections Mode (ECDH)
EDIT2:
This also happens when using the CySmart BLE 4.1 USB Dongle (FW 1.2.1.21 / HW 1.0.0.0)
cheers,
Matthias
Show Less