Author Topic: Programming off the shelf CSR8635 module  (Read 70004 times)

0 Members and 3 Guests are viewing this topic.

Offline sirtet

  • Newbie
  • Posts: 4
  • Country: ch
Re: Programming off the shelf CSR8635 module
« Reply #125 on: January 22, 2018, 11:37:50 am »
OK, my module announces itself as Beomaster 1900 now...
(as i will place it inside a Vintage Bang&Olufson Receiver   :))
 I did it with PStools and the DIY LPT programmer, hooked up according to my pinout-image above.
After a first fail, i had to modify the programmer a bit, as i found out the LPT on my Laptop Outputs only 3.3v  ^-^
So I used 6k8 and 5k6 resistors in the voltage dividers and 3.3v as vcc.
For MISO i made a level shifter with 2 transistors, as seen here:
https://forum.arduino.cc/index.php?topic=160716.msg1210677#msg1210677
Pin 29 I pulled directly to a 1.8V supply.

Thanks to all who provided all the different bits here and there...
 

Offline Chilmars

  • Contributor
  • Posts: 10
  • Country: gw
Re: Programming off the shelf CSR8635 module
« Reply #126 on: March 08, 2018, 02:51:37 am »
Hello
Can somewone send give download link CSR64210 eeprom or dump file?
I bricked my..meed to get back
 

Offline konsgn

  • Newbie
  • Posts: 4
  • Country: us
Re: Programming off the shelf CSR8635 module
« Reply #127 on: April 13, 2018, 11:52:34 pm »
Hey All,

I had a stellaris board kicking around for a long time programmed to
GitHub - Frans-Willem/CsrUsbSpiDeviceRE: Reverse engineered reimplementation of the CSR USB<>SPI converter device on a Stellaris Launchpad. Will work with the original CSR driver and should allow all CSR BlueSuite tools to work on BlueCore chips, with the notable exception of the ones requiring JTAG.

Of course it broke and I was out of a programmer and had a new csr8645 module to play with/ need of reprogramming my hacked HD201 headphones.

Not willing to pay the 15$ for a programmer, and looking to get more comfortable with the family of processors, I ported the code to the bluepill/black magic probe. If anyone wants their own csr programmer, they can purchase a "blue pill" and program it with any uart programmer to the CSR-SPI functionality.

The code also works if you have a black magic probe already, as it bitbangs the same pins that the probe does.

Here's a link:
BlueMagic

Also note, after playing with it for a bit, I realized I broke the csr8630 chip by yelling at it in 3.3v... don't do that. The Blue Pill can only talk in 3.3V but I updated the code so that when programmed to a black magic probe it checks target power voltage on power up. If the code sees a voltage greater than 1V it leaves it's 3.3v power supply off. If you connect the black magic's vcc to spi_en and a 1.8V target point, you will be powering the translator chip at that voltage and it should talk properly(at 1.8V).
 

Offline Magnets

  • Contributor
  • Posts: 12
  • Country: gb
Re: Programming off the shelf CSR8635 module
« Reply #128 on: April 15, 2018, 09:38:18 am »
Also note, after playing with it for a bit, I realized I broke the csr8630 chip by yelling at it in 3.3v... don't do that. The Blue Pill can only talk in 3.3V but I updated the code so that when programmed to a black magic probe it checks target power voltage on power up. If the code sees a voltage greater than 1V it leaves it's 3.3v power supply off. If you connect the black magic's vcc to spi_en and a 1.8V target point, you will be powering the translator chip at that voltage and it should talk properly(at 1.8V).

Sorry if I'm being dense, but does this mean you can program CSR chips using just a $2 board or do I need something else (black magic probe?) to make it work with 1.8v?
 

Offline konsgn

  • Newbie
  • Posts: 4
  • Country: us
Re: Programming off the shelf CSR8635 module
« Reply #129 on: April 15, 2018, 01:50:17 pm »
For the CSR chips that work at 3.3V(e.g. BC417, the one in HC-05), the Blue Pill dev board will be all you need.

For talking to 1.8V devices you will want a voltage translator to bring down the 3.3V to 1.8V. (Resistors to make sure not too much current flows may be enough, No promises though).

If you have an official black magic probe(which has a built in translator), you can just reprogram it to act as an official CSR programmer.
 

Offline mehdikh15

  • Newbie
  • Posts: 3
  • Country: jp
Re: Programming off the shelf CSR8635 module
« Reply #130 on: May 13, 2018, 07:06:36 pm »
hello dears

i read shtokYd question about creating an audio transmitter with csr productions. i relized too that he mentioned usable chips are csr8670 and 8645 because of their available app-tx feature. i want to ask that  could anyone acheive any success in that ? could u create an audio transmitter  ?

actually i have two csr8645 modules, and i want  to create a complete audio tranceiver . first of all i should ask , how can i make two these modules paired with each other (in fact one receiver one transmitter) ? then how can i  active aptx feature in this chip ? i should mention that i could  setup bluesuits and csr configuration tools with one spi programmer setup.


i will appreciate your response .
best regards
 

Offline Buriedcode

  • Frequent Contributor
  • **
  • Posts: 907
  • Country: gb
Re: Programming off the shelf CSR8635 module
« Reply #131 on: May 13, 2018, 09:26:56 pm »
As far as I am aware, only the CSR8670/8675 are capable of being a host/transmitter.  Often these are ROM based with external EEPROM for config settings - so they are pretty much "hard coded" as receivers or transmitters, you cannot "reprogram" a receiver to be a transmitter.
An alternative would be to purchase a cheap bluetooth audio transmitter - often these have a tx/rx switch, support apt-x, and are modular - small sub modules on a PCB with a few external passives.

It is actually quite a cheap way of getting the modules, since Ebay and Amazon have plenty of csr8670-based transmitters.

I have a a couple of these as clones: https://www.amazon.co.uk/Bluetooth-Transmitter-Receiver-TaoTronics-Wireless-Black/dp/B06WD8Z21S  which cost about $12. 
« Last Edit: May 14, 2018, 08:45:36 am by Buriedcode »
 
The following users thanked this post: mehdikh15

Offline mehdikh15

  • Newbie
  • Posts: 3
  • Country: jp
Re: Programming off the shelf CSR8635 module
« Reply #132 on: May 14, 2018, 05:00:25 pm »
thanks for your attention :-+ . so you are saying we don't have any access to modify their ROMs ? do you know about the software that shtokYd was telling about that I guess was called ADK.. ? (he was trying to download it from Chinese website 52bluetooth.com)
 

Offline Buriedcode

  • Frequent Contributor
  • **
  • Posts: 907
  • Country: gb
Re: Programming off the shelf CSR8635 module
« Reply #133 on: May 15, 2018, 03:11:37 am »
thanks for your attention :-+ . so you are saying we don't have any access to modify their ROMs ? do you know about the software that shtokYd was telling about that I guess was called ADK.. ? (he was trying to download it from Chinese website 52bluetooth.com)

Well, by definition you cannot modify a ROM - its an acronym for "read only memory".  It is either OTP - one time programmable, or actually hard coded.

Most bluetooth modules based on CSR/Qualcomm devices are either ROM-based, with external EEPROM, or.. they load in firmware from external flash.  The latter would require the SDK for CSR/Qualcomm and some example firmware.  Long story short is, it would be much cheaper and easier for you to purchase a ready-made product, and modify it or reverse engineer it to suit your needs.  A quick search for "bluetooth audio tx/rx" yields lots of results.
 
The following users thanked this post: mehdikh15

Offline mehdikh15

  • Newbie
  • Posts: 3
  • Country: jp
Re: Programming off the shelf CSR8635 module
« Reply #134 on: May 15, 2018, 07:57:47 pm »
 My persistence to modify default settings is that I have some specific configurations like sample rate of adc or stereo/ mono etc. by the way I cannot thank you enough for your suggestions and informations   :-+
 

Offline Buriedcode

  • Frequent Contributor
  • **
  • Posts: 907
  • Country: gb
Re: Programming off the shelf CSR8635 module
« Reply #135 on: May 16, 2018, 05:10:28 am »
My persistence to modify default settings is that I have some specific configurations like sample rate of adc or stereo/ mono etc. by the way I cannot thank you enough for your suggestions and informations   :-+

Changing the sample rate and channels should be possible with almost any csr bluetooth module, as those appear to be parameters stored in the external EEPROM.  You would need a suitable hardware dongle (either ft232R based, or a chinese clone of a "CSR SPI" device - I have that and it works well).  Also, you can use PSTools to change some parameters, or the "headset configuration utility".  There are different versions for CSR86XX devices (csr8635/45/70/75) and CSRA64xxx (csra64215).

As you have probabyl read in the thread, it is quite easy to "brick" these modules as the software doesn't always write back all the config data.  But you can use PSTools to back up the config before you do anything.
 
The following users thanked this post: mehdikh15

Offline RAZZITEAK

  • Contributor
  • Posts: 13
  • Country: se
Re: Programming off the shelf CSR8635 module
« Reply #136 on: July 06, 2018, 05:52:30 am »
So I've recently wanting to program the CSR 8600 series with one off those Chinese USB SPI copies. But I had no sucess. I uninstalled the program (Bluesuite). However, in my haste i forgot to check if i had the original installation file saved. Of course i didn't! And now can't seem to get the stupid software anyware. I have tried registering at CSR support but unlike everybody states I didn't receive an Email with a password. Might be qualcomm "fixing" the registration process..  >:(

Is there anybody else who has succeeded in registering or downloading the software suite? Or perhaps are willing of share the it :)

And yes I know there exists old version of the software on Github and the like, but this is likely what I had erlier. I really want a more recent version supporting Windows 10.
 

Offline RAZZITEAK

  • Contributor
  • Posts: 13
  • Country: se
Re: Programming off the shelf CSR8635 module
« Reply #137 on: July 06, 2018, 06:09:27 am »
To kinda reply on my own post.
I found a Github post from a couple of days ago and it had a link to the software (don't know how long it will stay there). :-+
2.6.6 64 bit worked beautifully on windows

But it would still be nice to know how one could get the software directly from qualcomm, in case of any future realeses...
 

Offline DeVolf

  • Newbie
  • Posts: 1
  • Country: ua
Re: Programming off the shelf CSR8635 module
« Reply #138 on: July 12, 2018, 04:08:02 pm »
Can you provide link, please?
 

Offline kile

  • Contributor
  • Posts: 11
Re: Programming off the shelf CSR8635 module
« Reply #139 on: July 31, 2018, 06:15:37 pm »
I've built a bluetooth speaker based on CSR8635, and I need some help. The circuit has two mono PAM8304 amplifiers which are powered from a 18650 Li-ion battery boosted to 5V by an LT1308. There is also a quad opamp powered by LT1308 which works as 4 comparators giving me a 4-level battery gauge. The CSR8635 module is powered directly from the battery, and it will shut itself off at around 3.2V as it should. But the voltage regulator and the things it powers will not. And this is my problem: I have already over-discharged a few batteries by forgetting to shut the damn thing off.  |O

A solution to this problem would be to have the CSR8635 turn on the power section when it wakes up, and shut it down when it goes to sleep. LT1308 has an enable pin (active high), and I would like to be able to use one of the general purpose PIO pins of the CSR8635 to drive this enable pin. The module would drive the pin high as long as it is awake, and a pull-down resistor would shut the LT1308 off when the module goes to sleep. But I can't find any setting in the config program which would do this. I could sacrifice one of the three indicator LEDs that the module is driving, and have that signal control the LT1308, but I will do that only if I can't use one of the other PIOs.

So the question boils down to this: is there a way to drive a PIO pin high for as long as CSR8635 is awake?

Thank you for help!
 

Offline Buriedcode

  • Frequent Contributor
  • **
  • Posts: 907
  • Country: gb
Re: Programming off the shelf CSR8635 module
« Reply #140 on: August 01, 2018, 08:14:03 am »
You could try using the on-board 1.8V regulator, I believe that is enabled on power up, and disabled when off as it powers the SOC core - its just a 1.8V signal, so enough to drive NPN's (which can then drive TTL inputs, or P channel MOSFETs etc..).
 

Offline kile

  • Contributor
  • Posts: 11
Re: Programming off the shelf CSR8635 module
« Reply #141 on: August 02, 2018, 01:45:37 am »
Yes, that is a good idea. I remember using the 1.8V in one of the previous iterations of the circuit as a reference for the 4 battery gauge opamps, and that it was quite noisy. But a low-pass filter would take care of that.

Thanks again!
 

Offline eugene28

  • Newbie
  • Posts: 1
  • Country: gb
Re: Programming off the shelf CSR8635 module
« Reply #142 on: August 07, 2018, 09:39:20 pm »
Hi, guys. I have CSRA64215 board with PCM5102 onboard. I tried to re-program the module with ftdi chip. I have stuck with board in program mode or similar. When I connected spi pins it went to weird mode when 2 leds flash slowly. When I disconnected the ftdi board its leds still flash the same. How do I reset it back to normal mode when leds blink fast in turns? Is firmware needs to be updated?
Here is how it looks like:https://youtu.be/sRbPtlobDl8
 

Offline gamelaster

  • Newbie
  • Posts: 1
  • Country: sk
Re: Programming off the shelf CSR8635 module
« Reply #143 on: September 03, 2018, 07:22:44 pm »
Hi guys, I'm trying to make charging working on my CSR8635, I supplying a 5V to CHG pin, the USB works, but it doesn't want to charge. Any ideas?

Thanks
 

Offline Buriedcode

  • Frequent Contributor
  • **
  • Posts: 907
  • Country: gb
Re: Programming off the shelf CSR8635 module
« Reply #144 on: September 04, 2018, 09:15:34 am »
Hi, guys. I have CSRA64215 board with PCM5102 onboard. I tried to re-program the module with ftdi chip. I have stuck with board in program mode or similar. When I connected spi pins it went to weird mode when 2 leds flash slowly. When I disconnected the ftdi board its leds still flash the same. How do I reset it back to normal mode when leds blink fast in turns? Is firmware needs to be updated?
Here is how it looks like:https://youtu.be/sRbPtlobDl8

It is possible you have got the module stuck a "boot loop".  Did you make a backup of the config with PStools first?  These devices are often ROM-based, so there is no firmware.  However for some of the later CSRA64215 modules, these actually have flash on board which *does* store the firmware.  I would have thought you have either got it stuck in config mode, or corrupted the EEPROM config (very easily done since everything except PSTools only writes back certain areas).

As to what the LED flashes mean, there are many possible configurations for the LED patterns, which are customized by each distributor of these modules, so I don't know what state the module is in.

You could hook up your FTDI board again - assuming you have configured that for use with the CSR software - and try to access it via PStools.  If you go to file->dump you can store the entire config as a *.psr file which is handy for a backup, and use this to write back to it should it get corrupted.  From my experience, even if the config is corrupted or erased it is still accessible by an FTDI adapter and PSTools.
 

Offline Buriedcode

  • Frequent Contributor
  • **
  • Posts: 907
  • Country: gb
Re: Programming off the shelf CSR8635 module
« Reply #145 on: September 04, 2018, 09:20:19 am »
Hi guys, I'm trying to make charging working on my CSR8635, I supplying a 5V to CHG pin, the USB works, but it doesn't want to charge. Any ideas?

Thanks

What exactly is your set up?  What battery do you have hooked to VBAT? - it will only work with lithium polymer-type cells.  Also, whether or not the charging is enabled, and how it works depends on its config.  The "Config Tool CSR8600 series" software has *lots* of options with regard to charging, from charging currents to thresholds.  The USB side has several endpoints, from USB headset, to HID remote control, and charger - often not all of these are enabled.

So a link to the board you have, or a photo of it, the battery you're using, and your set up would be helpful to diagnose the problem.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf