PSoC™ 4 Forum Discussions
So I got the New BLE 042 Kit... great kit got it working fast! Heres my problem i am very new to bluetooth and i have gone through many example projects trying to dissect them and see how they work. After days of work i know how they all fit together and how each file intertwines, but honestly as a noob to even PSOC i find my self struggling to get the whole picture. My previous experiences have been with Arduino which has tons of people making tutorial videos....i really would like to move on to PSOC and i have fallen in love with the system already. My main question is.... how do i learn? What resources can i tap into that can give me clear instruction?I simply want to learn a basic way to get my board to talk to my dongle. Then i can move on to intergrating more complex logic. I have done an immense amount of search but cannot find any resources that have really helped alot... most of it assumes you are an expert in the subject . any help would be greatly apreaciated.
-Thanks
Show LessIn my current PSoC 4200BLE project the enabling of an isr seems to "block" the rest of the main function.
In main there is a for loop after the ISR is enabled where I want to "print" to the UART some data calculated in the ISR, but the system naver reaches that part of the code:
CyGlobalIntEnable;
isr1_Disable();
isr1_SetVector(InterruptHandler1);
isr1_Enable();
for(;;)
{
UART_UartPutString("in main \n");
}
If I don't enable the ISR, the message in the for loop is sent. But if I do enable the ISR, it is not.
Show LessHello,
I am currently working on a project to design a BLE Server/ Pheriperal device that connects to the Client/ Central device in order to pass some small data to the Central.
I have my have my data service (a modified Bas service), my periodic timer (a cascaded watchdog timer) and my Advertising, Conneted, and DeepSleep states working. I am currently working with the CY8CKIT and Dongle, so my device "connects" after I use the CySmart to scan and connect.
However, I need to make the Pheripheral forcibly disconnect after it is done with the BLE service (a notify service), so that it can rapidly enter DeepSleep mode.
I see some of the API's inside the GAP and GATT layers refering to disconnecting (such as CyBle_GapDisconnect(bdHandle) ), but I am currently struggeling to get this disconnects to work without crashing the Pheriphal or Central device.
Are there any API guides for the BLE GATT/GAP layers?
Are there any extra example projects that demonstrate this kind of disconnection? I did not see any in the Creator 3.1 examples.
Any assitance or pointers to more advanced documentation is appreciated
Thank you
ngohara
Show LessHello,
I would like command a DC motor with regulation PID.
I ave:
1 motor dc 0 to 35V for 0 to 3000 rpm. I command with PWM.
1 tachimeter 0 to 5 v for 0 to 3000 rpm.
I think enter at the ADC with 0-5V and i use the digital value to change a compare value.
I find the tutorial Lab 1 to 4.
For PWM and change the value of compare it's ok.
When i try to copy past the C command for get value of adc they don't work.
Can you help me.
I work with PSoC 4 CY8CKIT-049 4xxx and the tutorial is for psoc 5.
Thank
Fabrice
Show LessHi,
I am working on a quadrature decoder project for a friend. It is working well, but he wants to have storage of the precise position of the encoder so that if the power goes out or the machine is turned off, it remembers where it was. I have heard about the flash wearing out, and this would have to be something that could be stored many times a second when the machine is running.
Do I have to worry about it wearing out? How long will that take? Is there another non-volatile solution that I can use?
Thank you,
Tom
An example named BLE_Proximity does not work with CY8CKIT-042-BLE with PSOC BLE module on it.
HI
Just a background on my setup before I get into the issues I'm having.
There are 3 parts, the CY8CKIT-042 Pioneer Kit
This is hooked up to 1 ( eventually 2 ) Xilnix XC9572XL CPLDs ( the dangerous prototype's dev boards ) 10ns pin to pin.
It/Those are then connected to a Commodore 64 Computer. For those who were born post 1990 it is a 1Mhz 8bit computer with 64KB of RAM using the 6510 processor which is a custom variant of the 6502.
Although it is 1Mhz the CPU runs at 2Mhz but is only active for half the time ( 470~500ns ) so the timings are 2Mhz but it only does stuff for 1Mhz of those 2. The VIC chip takes the other half.
My theory was 1Mhz VS 48Mhz the 48Mhz will be able to easily outfox the 1Mhz and I will have no worries doing anything before the 6510 catches me. So far not so much.
The 64 has a Dot Clock of 7.88Mhz ( PAL ) which is /4 to get the two 2mhz phase clocks. I use the Dot Clock to Clock the CPLD side that talks to the C64. So the CPLD sees and talks in terms of 7.88mhz pulses.
I want to use the ARM to be able to feed 28bits of data down to the CPLD for it to use when perfroming operations on the C64 and then sometimes pull back 8bits .16bits Address and 8 Bits data and probably 4bits of contol lines. Once the CPLD detects the C64 saying "Do something" it will fire a 1 7.88mhz pulse at the ARM (~125ns) .To which the ARM should trap and then respond with more instructions. Ultimatly forming something like this CPLD ARM
Do This take over, addr, data ,write done addr, data, write done addr, data, write done stop
Where done to done is about 1000ns the addr has about 470ns to get set up and the data has about 800ns to set up.
I have tried using a simple loop of
Read DDR
Branch Equal to Zero -1
When I would attemp to count 4 'done' the CPLD had actually said 'done' 16 . so it seemed the ARM was missing the pulses. I put the ARM into release mode, and turned all the optimsations to max. I wasn't happy with the ASM so I worked the C code until I was resonably happy. Given the ARM has 6 clocks for each Dot Clock, and 24 clocks for each 6510 clock, and has 48 clocks per 64 clock.
I then tried Interupts. 3 happen per 1 desired in this case, which has a knock on effect of starting the loop again and again and again.
How should I do this, what is the right way?
Show LessHi all,
I wanted to get some advice on the best product to attempt a project.
The project will require 2 parts; one the master and the other a slave connected by Bluetooth.
I want to have the master activated by a switch, the master will connect to the slave via Bluetooth "smaller the better regarding size for the slave part" once the master is activated via the switch, I want the slave to alert once it has moved out of range or say 10 meters form the master. A simple Beep once or twice would do the trick from the slave part.
Any advice would be awesome.
Thanks,
Mike
Show LessHi all,
I wanted to get some advice on the best product to attempt a project.
The project will require 2 parts; one the master and the other a slave connected by Bluetooth.
I want to have the master activated by a switch, the master will connect to the slave via Bluetooth "smaller the better regarding size for the slave part" once the master is activated via the switch, I want the slave to alert once it has moved out of range or say 10 meters form the master. A simple Beep once or twice would do the trick from the slave part.
Any advice would be awesome.
Thanks,
Mike
Show Less