dvi 0 4 июля, 2008 Опубликовано 4 июля, 2008 · Жалоба Не понятно какая прошивка.. PSTool говорит это version 2810(0x0afa) "cyt_8unified_fl_bt_2.0_21c_opt_0601191604_encr56 2006-01-19" но такого firmware на csrsupport.com не нашел .. можно ли в этот WT11 залить проект из Bluelab? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uriy 5 4 июля, 2008 Опубликовано 4 июля, 2008 · Жалоба но такого firmware на csrsupport.com не нашел .. Говорят там много чего есть, только нам белым людям не доступно. Где-то видел посты о том что людям удавалось получить доступ, может правда а может нет. PSTool позволяет делать бэкап, так что думаю можно смело слить эту прошивку и залить другую, если что... откатиться назад. Главное что в модуле стоит чип BlueCore а кем собран модуль Mitsumi, Barracuda или кто-нить это уже не важно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dvi 0 4 июля, 2008 Опубликовано 4 июля, 2008 · Жалоба Говорят там много чего есть, только нам белым людям не доступно. Где-то видел посты о том что людям удавалось получить доступ, может правда а может нет. PSTool позволяет делать бэкап, так что думаю можно смело слить эту прошивку и залить другую, если что... откатиться назад. Главное что в модуле стоит чип BlueCore а кем собран модуль Mitsumi, Barracuda или кто-нить это уже не важно. я получил доступ на bluegiga (призводитель). там много что есть. Но PSTool от bluegiga не может подключится к модулю ... А как в PSTool можно сделать бэкап?? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uriy 5 4 июля, 2008 Опубликовано 4 июля, 2008 · Жалоба А как в PSTool можно сделать бэкап??Прошу прощенья. Нужно использовать BlueFlash, который тоже идет в комплекте с BlueLab. Там кнопочка Dump. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dvi 0 7 июля, 2008 Опубликовано 7 июля, 2008 · Жалоба Может кто то знает что за модуль у меня? "cyt_8unified_fl_bt_2.0_21c_opt_0601191604_encr56 2006-01-19" можно в него залить профили из Bluelab? или там ROM? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
boroda1983 0 9 июля, 2008 Опубликовано 9 июля, 2008 (изменено) · Жалоба Может кто то знает что за модуль у меня? "cyt_8unified_fl_bt_2.0_21c_opt_0601191604_encr56 2006-01-19" можно в него залить профили из Bluelab? или там ROM? Вы бы для начала открыли даташит на свой модуль, и увидели, что там есть 8Mbit flash. "cyt_8unified_fl_bt_2.0_21c_opt_0601191604_encr56 2006-01-19" - это версия так называемого firmware, которое поставляет CSR. Состоит из нижних уровни стека Bluetooth (baseband, LM, RFCOMM, L2CAP и т.п.), а так же функции для работы с периферией кристалла. WT11 = firmware + VM application + PSStore keys + (возможно DFU) VM application - это приложение написанное в Bluelab. В данном случае это протокол Bluegiga + набор профилей PSStore keys - это набор различных калибровочных настроек для периферии. DFU - это ПО для обновления прошивки через USB либо UART. Залить из Bluelab можно. Предварительно утилитой blueflash сделать дамп. Дамп будет содержать полностью содержимое флеша, со всеми ключами и т.п. Изменено 9 июля, 2008 пользователем boroda1983 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dvi 0 9 июля, 2008 Опубликовано 9 июля, 2008 (изменено) · Жалоба Вы бы для начала открыли даташит на свой модуль, и увидели, что там есть 8Mbit flash. "cyt_8unified_fl_bt_2.0_21c_opt_0601191604_encr56 2006-01-19" - это версия так называемого firmware, которое поставляет CSR. Состоит из нижних уровни стека Bluetooth (baseband, LM, RFCOMM, L2CAP и т.п.), а так же функции для работы с периферией кристалла. WT11 = firmware + VM application + PSStore keys + (возможно DFU) VM application - это приложение написанное в Bluelab. В данном случае это протокол Bluegiga + набор профилей PSStore keys - это набор различных калибровочных настроек для периферии. DFU - это ПО для обновления прошивки через USB либо UART. Залить из Bluelab можно. Предварительно утилитой blueflash сделать дамп. Дамп будет содержать полностью содержимое флеша, со всеми ключами и т.п. Спасибо!!! Правда есть проблемы: 1. в blueflash не активна кн. Dump. 2. и Bluelab не хочеть записывать проект после компиляции... Programming flash... Running 'C:/BlueLab/tools/bin/make -R BLUELAB=C:/BlueLab/tools -f obex_server.release.mak flash'... C:/BlueLab/tools/Makefile.vm:157: *** Unable to query BlueCore over SPI.. Stop. Finished. Transport стоит LPT.. хотя PSTool работает через LPT->SPI.. может какой то ключ не правильно настроен? Через терминал VM проверял... через RFCOMM соединяется и данные передаются ... а мне надо профиль передачи файлов организовать... Изменено 9 июля, 2008 пользователем dvi Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
boroda1983 0 9 июля, 2008 Опубликовано 9 июля, 2008 · Жалоба 1. в blueflash не активна кн. Dump. Нужно сначала нажать кнопку stop processor, процессор распознается, должна появится надпись вроде Recognized AMD-compatible device on BT4-EXT(Coyote). Usable flash size 128 sectors, 8 megabit. И тогда можно делать dump и шить его 2. и Bluelab не хочеть записывать проект после компиляции... Programming flash... Running 'C:/BlueLab/tools/bin/make -R BLUELAB=C:/BlueLab/tools -f obex_server.release.mak flash'... C:/BlueLab/tools/Makefile.vm:157: *** Unable to query BlueCore over SPI.. Stop. Finished. Bluelab при программировании вызывают все ту же утилиту BlueFlash хотя PSTool работает через LPT->SPI.. может какой то ключ не правильно настроен? Ключи PSTools никак не влияют на работу SPI интерфейса. Вы уверены, что PSTools действительно работает, наоборот может быть, Blueflash работает, PSTools нет. Вывод RESET от программатора подключать не нужно. Я думаю все дело в Вашем программаторе или схеме включения модуля. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dvi 0 9 июля, 2008 Опубликовано 9 июля, 2008 · Жалоба 1. в blueflash не активна кн. Dump. Нужно сначала нажать кнопку stop processor, процессор распознается, должна появится надпись вроде Recognized AMD-compatible device on BT4-EXT(Coyote). Usable flash size 128 sectors, 8 megabit. И тогда можно делать dump и шить его 2. и Bluelab не хочеть записывать проект после компиляции... Programming flash... Running 'C:/BlueLab/tools/bin/make -R BLUELAB=C:/BlueLab/tools -f obex_server.release.mak flash'... C:/BlueLab/tools/Makefile.vm:157: *** Unable to query BlueCore over SPI.. Stop. Finished. Bluelab при программировании вызывают все ту же утилиту BlueFlash хотя PSTool работает через LPT->SPI.. может какой то ключ не правильно настроен? Ключи PSTools никак не влияют на работу SPI интерфейса. Вы уверены, что PSTools действительно работает, наоборот может быть, Blueflash работает, PSTools нет. Вывод RESET от программатора подключать не нужно. Я думаю все дело в Вашем программаторе или схеме включения модуля. а у меня RESET подключен ... Спасибо за подсказку!! завтра проверю без него.. PSTool точно работает... через него ключи менял ... по умолчанию стоят HOST transport через USB.. и XP увидела модуль и установила драйвера .. изменил на UART .. и iWRAP запустил... USB отключился.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
boroda1983 0 10 июля, 2008 Опубликовано 10 июля, 2008 · Жалоба изменил на UART .. и iWRAP запустил... USB отключился.. Все правильно, так и должно быть Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dvi 0 10 июля, 2008 Опубликовано 10 июля, 2008 · Жалоба Все правильно, так и должно быть Спасибо за помощь!!! заработало!! проблема действительно была в программаторе!!! сигнал RESET не отключал... сейчас буду разбираться с Bluelab... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
boroda1983 0 10 июля, 2008 Опубликовано 10 июля, 2008 · Жалоба Спасибо за помощь!!! заработало!! проблема действительно была в программаторе!!! сигнал RESET не отключал... сейчас буду разбираться с Bluelab... Успехов Вам в этом нелегком деле. Красоту кода, созданного индускими программистами я ощутал сполна, при работе с библиотеками Bluelab. С учетом того, что чипы CSR занимают 50% рынка, становится страшновато. Пример кода из библиотеки для работы с батарейкой. typedef enum { AIO0, AIO1, VDD, AIO2, AIO3, /*Only available on certain BlueCore variants.*/ BATTERY_INTERNAL /*Only available on certain BlueCore variants.*/ } battery_reading_source; typedef enum { VM_ADC_SRC_AIO0, /*!< Test pin AIO0 */ VM_ADC_SRC_AIO1, /*!< Test pin AIO1 */ VM_ADC_SRC_VREF, /*!< The internal reference voltage in the chip */ VM_ADC_SRC_AIO2, /*!< Test pin AIO2 */ VM_ADC_SRC_AIO3, /*!< Test pin AIO3 (not always available) */ VM_ADC_SRC_VDD_BAT /*!< Battery voltage (only available on certain BlueCore variants)*/ } vm_adc_source_type; static vm_adc_source_type batSrcToAdcSrc(battery_reading_source bat_src) { vm_adc_source_type adc_src = 0; switch(bat_src) { case AIO0: if(AIO0 == VM_ADC_SRC_AIO0) adc_src = (vm_adc_source_type) bat_src; else adc_src = VM_ADC_SRC_AIO0; break; case AIO1: if(AIO1 == VM_ADC_SRC_AIO1) adc_src = (vm_adc_source_type) bat_src; else adc_src = VM_ADC_SRC_AIO1; break; case VDD: if(VDD == VM_ADC_SRC_VREF) adc_src = (vm_adc_source_type) bat_src; else adc_src = VM_ADC_SRC_VREF; break; case AIO2: if(AIO2 == VM_ADC_SRC_AIO2) adc_src = (vm_adc_source_type) bat_src; else adc_src = VM_ADC_SRC_AIO2; break; case AIO3: if(AIO3 == VM_ADC_SRC_AIO3) adc_src = (vm_adc_source_type) bat_src; else adc_src = VM_ADC_SRC_AIO3; break; case BATTERY_INTERNAL: if(BATTERY_INTERNAL == VM_ADC_SRC_VDD_BAT) adc_src = (vm_adc_source_type) bat_src; else adc_src = VM_ADC_SRC_VDD_BAT; break; } return adc_src; } Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bassizlink 1 2 апреля, 2017 Опубликовано 2 апреля, 2017 (изменено) · Жалоба Успехов Вам в этом нелегком деле. Красоту кода, созданного индускими программистами я ощутал сполна, при работе с библиотеками Bluelab. С учетом того, что чипы CSR занимают 50% рынка, становится страшновато. Пример кода из библиотеки для работы с батарейкой. Здравствуйте boroda1983. Почему может не срабатывать сообщение типа MESSAGE_MORE_DATA при передачи текста в порт UART микроконтроллера BC417?Подозреваю, что нужно сконфигурировать источник. Пример кода который демонстрирует управляемую передачу в потоке, так сказать UART эхо. #include <panic.h> #include <stdio.h> #include <stream.h> #include <pio.h> #include <source.h> #include <string.h> #include <sink.h> #include <csrtypes.h> #include <connection.h> #include <message.h> #define VM_UART_(RATE) (uint16)((RATE*0.004096)+0.5) #define VM_UART_RATE_1K2 0x0005 #define VM_UART_RATE_1K2 0x0005 #define VM_UART_RATE_2K4 0x000a #define VM_UART_RATE_4K8 0x0014 #define VM_UART_RATE_76K8 0x013b #define VM_UART_RATE_1843K2 0x1d7e #define VM_UART_RATE_2764K8 0x2c3d #define LED1 0x01 /* bit 1 */ #define DELAY1 200 /* ms */ #define LED2 0x02 /* bit 2 */ #define DELAY2 100 /* ms */ static void led_controller1( Task t, MessageId id, Message payload ) { PioSet( LED1, (PioGet() ^ LED1) ); MessageSendLater( t, 0, 0, DELAY1 ); } static void led_controller2( Task t, MessageId id, Message payload ) { Source source= StreamUartSource(); uint16 length = SourceSize (source); if(MESSAGE_MORE_DATA==id ) { char *string; uint16 offset; uint8 *dest; Sink sink=StreamUartSink(); PanicNull(sink); string=(char *)SourceMap(source); /* Claim space in the sink, getting the offset to it */ offset = SinkClaim(sink, length); if(offset == 0xFFFF) Panic(); /* Space not available */ /* Map the sink into memory space */ dest = SinkMap(sink); (void) PanicNull(dest); /* Copy the string into the claimed space */ memcpy(dest+offset,SourceMap (source), length); /* Flush the data out to the uart */ PanicZero(SinkFlush(sink, length)); SourceDrop (source, length); } PioSet( LED2, (PioGet() ^ LED2) ); MessageSendLater( t, 0, 0, DELAY2 ); MessageHostCommsTask(t); MessagePioTask(t); MessageSystemTask(t); } static TaskData taskSPP1 ={led_controller1}; static TaskData taskSPP2 = {led_controller2}; int main(void) { PioSetDir(0xFF, 0xFF); /* Set all PIO to be output */ PioSet(0xFF, 0); /* Set all PIO off (0) */ MessageHostCommsTask(&taskSPP2); MessagePioTask(&taskSPP2); MessageSystemTask(&taskSPP2); MessageSend( &taskSPP1, 0 , 0 ); MessageSend( &taskSPP2, 0 , 0 ); MessageLoop(); return 0; } Изменено 2 апреля, 2017 пользователем bassizlink Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bassizlink 1 2 апреля, 2017 Опубликовано 2 апреля, 2017 · Жалоба Здравствуйте boroda1983. Почему может не срабатывать сообщение типа MESSAGE_MORE_DATA при передачи текста в порт UART микроконтроллера BC417?Подозреваю, что нужно сконфигурировать источник. Пример кода который демонстрирует управляемую передачу в потоке, так сказать UART эхо. Сам задал, сам и отвечу:перед отправкой используйте функцию MessageSinkTask (Sink, task) , в методе main () ,перед первым сообщением. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться