Eddystone is merely a software application running through BLE wireless, and thus it should be working/workable/already added :)
I don't know what the software interface/API usage for the eddystone projects are, but I know that you can write your own firmware on the device to implement the things you are asking about...
I am not an engineer or even an electronics hobbyist.
I am currently using a battery powered beacon that comes with an app that allows you to just enter a URL and immediately start broadcasting it.
Are there people here who have used these beacons to broadcast eddystone URL's?
Is it really going to require programming the firmware myself?
Anybody with some guidance or any experience with this I'd love to hear from you.
If you look through the forums, there are several people who have gotten eddystone working, I'm not sure if that was using the example projects, or if they had to do work on it themselves :/
If you can find an example project with everything you want on it, then it won't take any programming.
We'd be happy to help you walk through setting it up (or at least I think everyone on the forums here would be happy to ;) )
There is an example project for the eddystone setup here: https://github.com/cypresssemiconductorco/PSoC-4-BLE/tree/master/100_Projects_in_100_Days/Project050_Eddystone
You will probably have to change: Which device it is compiling for, possibly pins for the different hardware, and reading through the example PDF will definitely help you get it going.
I just bought the cyalkit 02. I spent the weekend trying to get it to work with eddystone. Using PSoC Creator 4, I tried clean and build, then program using the eddystone project file.
I am seeing cypress.com being broadcast, but only when the beacon is mounted on the debug board. It stops broadcasting as soon as you disconnect it.
I dont know if this is important, but I was getting a Wunused-variable e warning. The variable was "apiResult". Another one was unused parameter "eventParam". The eventParam error only shows in the editor and doesn't seem to generate any errors when programming. Any ideas where to go from here?
Another thing I tried with no luck was using PSoC programmer to program EZ-serial hex file, but was kind of lost.
An unused variable warning is not important, it just says that you aren't using the variable mentioned (in this case, you probably aren't checking a return value from a cyble function).
Eventparam is a generic variable to pass data to your application from the cypress BLE stack, so it depends on what your code is running.
If it is only running while on the debug board, either:
A) You programmed a debug version of the code into the chip (make sure the program is configured for "Release" at the top of the editor)
B) The solar cell hasn't collected enough power to charge the battery on-board in order to send beacon data
C) The chip is running full-blast, and is using power faster than it can charge, leading to it having issues broadcasting
I would suggest making sure you set it to "Release" when programming the chip, and then try just powering the board using a separate power supply from the debug board to verify it is a power issue, and not the debug board somehow controlling/clocking it.
Two AA batteries in series would be enough to power it I think :)
You said "I would suggest making sure you set it to "Release" when programming the chip, and then try just powering the board using a separate power supply from the debug board to verify it is a power issue, and not the debug board somehow controlling/clocking it."
You were right about that I had PSoC set to debug and NOT release. I did change that and did a clean and build again followed by program.
I am still getting the same result, I don't understand how to do what you asked regarding running a seperate power supply. I just dont know how to do it. I have plenty of coin cell batteries around if that is better than two AA's. Can you guide me a little? :)
Just to let you know, the beacon works fine when using the firmware that it comes with it. This problem is only happening after flashing it with the eddysone project. so I think it is safe to assume the beacon is working as it should?
I just tried connecting a coin cell to the battery pads on the beacon and still no luck. :(
So, assuming that the beacon works alright on battery-power, but then stops working when you flash it with your program. But the debug board works when you flash it with your program, then it must be a difference in software :)
If you go under the System settings in the PSoC Creator IDE, and change the "SWD" to "GPIO" for debug pins, does toggling that affect the running of the chip?
(Make sure you had the right polarity on the battery you connected to the beacon; +, -)
When you have the board connected to the development board, are you running it in debug, or just programming it, and letting it run stand-alone? (without any debug features turned on)
Can you make sure you are programming the correct project within the workspace? (There are two: Eddystone_EH_Kit, and Eddystone_Pioneer_Kit)
If you can upload a minimal archive of your workspace, it will help with reviewing the settings/changes you've made to get it working :)
"Project->Archive Workspace..." and select minimal, then just upload the resulting zip file.
I just reflashed with system -> Debug Select set to GPIO.
IT was previously set to SWD.
I tried powering it with the battery again as well.
I am still getting the same behavior.
I have attached the project archive here. THANKS
What version of Psoc Creator are you using? I found it to be out of date so you need to update your Psoc Creator to 4.0 SP1 then try it again. I am still waiting for an answer from Cypress.
I just upgraded, but under help -> About
I see this.
PSoC Creator 4.0 Update 1 (22.214.171.1242)
Culture: English (United States)
OS Version: Microsoft Windows NT 6.1.7601 Service Pack 1
CLR Version: 4.0.30319.42000
is this the latest?
I just re-flashed with this version but still no luck.
Yes that is the latest version. what version of windows are you using ?
Using Windows 7
You could try disabling the power-saving mode to see if that is the cause of the different behavior:
Under the Main() for(;;) loop, comment out the "LowPower();" line, and then try building/running on the battery to see if that makes a difference. Since the project should only be using power/ground pins when connected to the dev board, it seems weird that it stops working after disconnecting.