Программатор своими руками chipstar-janus
Содержание:
- Pictures
- Usb программатор своими руками на микроконтроллере atmega8. схема Hardware Design
- Крутящаяся подставка на стол своими руками. поворотный стол своими руками. пошаговая инструкция по сборке вращающегося стола своими руками Differences to JB16 OSBDM etc
- Гидравлический пресс своими руками: особенности применения и технологии. простые схемы и чертежи для создания своими руками (170 фото) Credits
- References
- License
- Features
- Двуликий Янус
- Прошивка приборной панели
- Список прошивок для панели приборов
- Pictures (USBDM_JS16_SWD — HCS08/HCS12/CFV1/ARM-SWD)
- Hardware Design
- Differences to JB16 TBDML/OSBDM
- Credits
- References
- License
- Features
- Что нас побудило разработать этот программатор.
- Pictures
- Hardware Design
- Capabilities
- Credits
- References
- License
- Pictures
- Hardware Design
- Differences to JB16 TBLCF etc
- Credits
- References
- License
- Features
- Features
Pictures
Hardware Design
Please refer to the following document for hardware design details:
USBDM Design — Schematics, Assembly Overlays & Bill of Materials
Differences to JB16 OSBDM etc
- The JM60 microcontroller can only be initially programmed using a BDM interface. This is a significant disadvantage compared to the JB16 version.
- The PCB artwork provided is for a double-sided plated-through-hole board using surface mount components. This seems a reasonable decision since the processor is only available in a SMT package in any case. While it is possible to prototype the board using a non-PTH board, assembly is quite demanding. The above images are for a commercially produced board that was hand assembled.
- Software drivers (tbdml.dll & opensourcebdm.dll etc) need to be installed so that advantage can be taken of the new features.
Credits
- The original base code is taken from the TBDML, OSBDM and TBLCF projects and I very much appreciate the effort involved in producing the original code. I hope this extension will be useful.
- The hardware interface is based on TBDML, Freescale USBSPYDER08 and my own invention.
References
- Altium Designer (PCB Design) — http://www.altium.com/products/altium-designer/
- Axiom MC56F8006 Demo board — http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MC56F8006DEMO
- Codesourcery — http://www.codesourcery.com/
- Coldfire Flasher — http://www.freescale.com/files/soft_dev_tools/software/programmers/CFFLASHER.zip
- Doxygen Documentation tool — http://www.stack.nl/~dimitri/doxygen/index.html
- I2C voltage level conversion — Phillips application note http://www.standardics.nxp.com/support/documents/i2c/pdf/an97055.pdf
- LIBUSB-WIN32 — http://libusb-win32.sourceforge.net/
- MAX662 Data sheet — http://www.maxim-ic.com
- OSBDM — http://forums.freescale.com/freescale/board?board.id=OSBDM08
- OSBDM hardware — http://forums.freescale.com/freescale/board/message?board.id=OSBDM08&thread.id=212
- Tasking GDI Spec — http://www.tasking.com/resources/technologies/debuggers/gdikdi.shtml
- Tcl/Tk — http://www.tcl.tk/software/tcltk/8.5.html
- TBDML — http://forums.freescale.com/freescale/board?board.id=TBDML
- TBDML hardware — http://forums.freescale.com/freescale/board/message?board.id=TBDML&thread.id=2
- USBSPYDER08 — USB mini board for Freescale’s Low-End 8-bit Microcontrollers — http://www.freescale.com/
- Ultimate Packer for eXecutables (UPX) has been used to pack DLLs and EXEs — http://upx.sourceforge.net/
- WTBDMS08/12 (Witztronics) Hardware — http://www.witztronics.com/
- WxWidgets Cross Platform Library has been used for the GUI — http://www.wxwidgets.org/
- Xerces XML parser — http://xerces.apache.org/xerces-c
License
Portions of this software is based on TBLCF software Portions of this software is based on OSBDM software Portions of this software is based on TBDML software USBDM Copyright (C) 2007-13 Peter O'Donoghue Opensource BDM (OSBDM) Copyright (C) ? Turbo BDM Light (TBDML) Copyright (C) 2005 Daniel Malik Turbo BDM Light ColdFire (TBLCF) Copyright (C) 2005 Daniel Malik This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Features
This version of the USBDM code combined with the FRDM-xxxx board provides the following features:
- A SWD interface for programming and debugging of Kinetis ARM-Cortex microcontrollers.
- Both the on-board target device (e.g. MKL25Z128M4) and external devices may be programmed.
- Installation of the USBDM software does not require any tools other than the FRDM-KL25Z board.
- Compatible IDEs
- Codewarrior V10.x (Eclipse version). The following features are provided:
- Eclipse (including Freescale Kinetis Design Studio). The following features are provided:
- Kinetis New Project Wizard
- Kinetis USBDM debug target
- Integration of GCC tools (GNU tools for ARM or KDS tools)
- Peripheral Register view tailored for Kinetis devices.
- Stand-alone Kinetis programmer utility.
- Linux compatible
- Windows compatible
- The Firmware in the BDM may be updated using the usual FRDM-KL25 Bootloader function.
- The original board software may be restored if USBDM is not found suitable.
The capabilities and features of the USBDM interface varies between the different versions of hardware. Not all of the functionality described in the following pages may apply to this version.
Двуликий Янус
Мы решили назвать этот программатор «Янус».
Почему так? Потому что в римской мифологии Янус — это двуликий бог дверей, входов и выходов, а также начала и конца. Какая связь? Почему наш программатор ChipStar-Janus двуликий?
А вот почему:
- C одной стороны, этот программатор — простой. Распространяется как бесплатный проект, его можно легко изготовить самому.
- C другой стороны, он разработан фирмой, длительное время профессионально занимающейся разработкой и производством различной радиоэлектронной аппаратуры, в том числе программаторами.
- C одной стороны, этот программатор — простой, с первого взгляда имеет не сильно впечатляющие характеристики.
- C другой стороны, работает совместно с профессиональной программой (кстати, точно такой же, как и остальные профессиональные программаторы ChipStar).
- C одной стороны, мы предлагаем этот программатор для свободной сборки.
- C одной стороны, мы его продаем и в готовом виде, как обычный бюджетный продукт.
- C одной стороны, на самодельный программатор не распространяется гарантия (что естественно).
- C одной стороны, если вы его смогли собрать, то и отремонтировать сможете, да и программатор настолько простой, что ломаться, собственно, нечему.
- C одной стороны, это простой внутрисхемный программатор.
- C одной стороны, через простые адаптеры расширения он поддерживает программирование NAND FLASH и других микросхем уже «в панельке».
Таким образом, программатор ChipStar-Janus для многих специалистов может стать настоящим выходом в ситуации, когда разных простых или любительских программаторов уже недостаточно, а более сложный программатор кажется избыточным или на него не хватает выделенного бюджета.
Прошивка приборной панели
В процессе прошивки комбинация приборов может выйти из строя, автор статьи ответственности не несет. Кроме этого, разбирая щиток приборов вы теряете гарантию.
Перед началом действия рекомендуется сделать резервную копию штатной прошивки.
Потребуется:
- Программатор Usbdm OSBDM V4.95 (цена около 700 рублей, есть в каталоге товаров Aliexpress).
- Установить драйвер и программу, идущую в комплекте с программатором, на ПК (HCS12 Programmer и USBDM driver X86 или X64).
- Снять приборную панель и демонтировать заднюю крышку (отклеить пломбу, нагревая феном).
Проверенные программаторы для прошивки панели приборов:
Программатор с которым не получилось прошить панель приборов:
До прошивки версия ПО панели приборов была 0.26
Порядок действий:
- Открыть корпус программатора и переставить jumper в значение 3.3V (при таком положении нет необходимости подключать внешние питание).
- Подключить программатор к комбинации приборов и компьютеру (см. фото).
- Запустить на ПК программу HCS12 Programmer и нажать на кнопку «Detect».
- Перейти на вкладку «Target». Выбрать прошивку (в пути к файлу кириллицы быть не должно), поставить галочку «Auto Reload». Нажать на кнопку «Detect Chip». Программатор определит чип автоматически (в данном случае чип был выбран не верный, пришлось выбрать верный вручную, как на фото). В секции «Security» установить «Unsecure».
- Перейти во вкладку «Advanced», установить галочку «Enable», заменить E на F.
- Перейти во вкладку «Target», в разделе «Device Operations» выбрать «EraseSelective». Это значит, что заменится только прошивка, но все данные о иммобилайзере и пробеге сохранятся). С «EraseMass» не экспериментировали.
- Нажать на кнопку «Program Flash», начнется процесс прошивки, которая завершится через несколько секунд. Программа предложит подключить следующую панель приборов (нажимаем НЕТ). Отключаем программатор и устанавливаем комбинацию приборов на автомобиль.
Вы можете воспользоваться услугой по обновлению прошивки комбинации приборов Весты.
- как сделать реальное отображение температуры двигателя
- как изменить подсветку щитка приборов
- как покрасить колодцы панели приборов
Фото: ura12345678
Ключевые слова: панель приборов лада веста
11
Обнаружили ошибку? Выделите ее и нажмите Ctrl+Enter..
Список прошивок для панели приборов
Вы можете прислать свою прошивку щитка приборов Весты через форму обратной связи, мы ее добавим в таблицу. Помощь уже оказали val9001tlt и RUPARADOX.
Версия ПО | Тип КП | КПП | Формат SX | Формат BIN | Примечание |
---|---|---|---|---|---|
026 | с/о (8450007022) | МКПП | Чтобы скачать файлы нужно авторизироваться на сайте | Чтобы скачать файлы нужно авторизироваться на сайте |
Круиз-контроль, реальная температура ОЖ, без автоподсветки. Прислал auto56pro |
АМТ | Чтобы скачать файлы нужно авторизироваться на сайте | ||||
028 | МКПП | Чтобы скачать файлы нужно авторизироваться на сайте | Чтобы скачать файлы нужно авторизироваться на сайте |
— Индикация КК и ОС— Два режима подсветки КП. Яркая подсветка в режиме ДХО. В режиме габариты, ближний/дальний свет подсветка слегка приглушена— Отображение реальной температуры ДВС (а не моментально)— Подсказчик переключения передач |
|
АМТ | Чтобы скачать файлы нужно авторизироваться на сайте | Чтобы скачать файлы нужно авторизироваться на сайте | |||
035 | МКПП | Чтобы скачать файлы нужно авторизироваться на сайте | Чтобы скачать файлы нужно авторизироваться на сайте | — Автоподсветка— Круиз-контроль— Реальная температураприслал auto56pro | |
036 | МКПП | Чтобы скачать файлы нужно авторизироваться на сайте | — Подсветка КП в режиме ДХО— Отображение реальной температуры ДВС | ||
011 | н/о (оранж 8450030825) | ||||
019 | МКПП | Чтобы скачать файлы нужно авторизироваться на сайте | Чтобы скачать файлы нужно авторизироваться на сайте | — Индикация КК и ОС— Два режима подсветки КП. Яркая подсветка в режиме ДХО. В режиме габариты, ближний/дальний свет подсветка слегка приглушена— Отображение температуры ДВС всегда 90° в пределах температуры ДВС 55° — 105° | |
022 |
Отображение температуры ДВС всегда 90° в пределах температуры ДВС 55° — 105° |
||||
027 | МКПП | Чтобы скачать файлы нужно авторизироваться на сайте | Чтобы скачать файлы нужно авторизироваться на сайте | — Индикация КК и ОС— Подсветка КП в режиме ДХО— Отображение температуры ДВС всегда 90° в пределах температуры ДВС 55° — 105° | |
126 |
8450032207 |
МКПП | Чтобы скачать файлы нужно авторизироваться на сайте |
без VIN (затёрт FF, нужно прописать самому). защита от чтения через USBDM |
|
226 |
8450032556 |
защита от чтения через USBDM | |||
301 |
8450032268 |
||||
501 |
8450032284 |
Внимание! Прошивка должна устанавливаться только на ту панель приборов, для которой она предназначена. То есть прошивка от старой панели для новой не подойдет и наоборот
VIN номер в прошивках затерт.
Определить, какая версия ПО на вашей панели приборов можно по этой инструкции
Pictures (USBDM_JS16_SWD — HCS08/HCS12/CFV1/ARM-SWD)
-
USBDM Minimal HCS08/HCS12/CFV1 & SWD interfaces
-
USBDM HCS08/HCS12/CFV1, SWD & Serial interfaces with manual target power.
Hardware Design
Please refer to the following PDF documents for Schematics, Assembly Overlays & Bill of Materials:
- Minimal HCS08/HCS12/CFV1 interface
- Minimal HCS08/HCS12/CFV1 & SWD interfaces
- HCS08/HCS12/CFV1, SWD & Serial interfaces with
manual target power.
Differences to JB16 TBDML/OSBDM
The PCB artwork provided is for a double-sided plated-through-hole board using surface mount components. This seems a reasonable decision since the processor is only available in a SMT package in any case. It is quite possible to prototype the the first and third designs using a non-PTH board as the required vias have not been located beneath components and may be replaced with feed through wires.
The above images are for a milled board that was hand assembled.
Credits
- The original base code is taken from the TBDML, OSBDM and TBLCF projects and I very much appreciate the effort involved in producing the original code. I hope this extension will be useful.
- The hardware interface is based on TBDML, Freescale USBSPYDER08 and my own invention.
References
- Altium Designer (PCB Design) — http://www.altium.com/products/altium-designer/
- Axiom MC56F8006 Demo board — http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MC56F8006DEMO
- Codesourcery — http://www.codesourcery.com/
- Coldfire Flasher — http://www.freescale.com/files/soft_dev_tools/software/programmers/CFFLASHER.zip
- Doxygen Documentation tool — http://www.stack.nl/~dimitri/doxygen/index.html
- I2C voltage level conversion — Phillips application note http://www.standardics.nxp.com/support/documents/i2c/pdf/an97055.pdf
- LIBUSB-WIN32 — http://libusb-win32.sourceforge.net/
- MAX662 Data sheet — http://www.maxim-ic.com
- OSBDM — http://forums.freescale.com/freescale/board?board.id=OSBDM08
- OSBDM hardware — http://forums.freescale.com/freescale/board/message?board.id=OSBDM08&thread.id=212
- Tasking GDI Spec — http://www.tasking.com/resources/technologies/debuggers/gdikdi.shtml
- Tcl/Tk — http://www.tcl.tk/software/tcltk/8.5.html
- TBDML — http://forums.freescale.com/freescale/board?board.id=TBDML
- TBDML hardware — http://forums.freescale.com/freescale/board/message?board.id=TBDML&thread.id=2
- USBSPYDER08 — USB mini board for Freescale’s Low-End 8-bit Microcontrollers — http://www.freescale.com/
- Ultimate Packer for eXecutables (UPX) has been used to pack DLLs and EXEs — http://upx.sourceforge.net/
- WTBDMS08/12 (Witztronics) Hardware — http://www.witztronics.com/
- WxWidgets Cross Platform Library has been used for the GUI — http://www.wxwidgets.org/
- Xerces XML parser — http://xerces.apache.org/xerces-c
License
Portions of this software is based on TBLCF software Portions of this software is based on OSBDM software Portions of this software is based on TBDML software USBDM Copyright (C) 2007-13 Peter O'Donoghue Opensource BDM (OSBDM) Copyright (C) ? Turbo BDM Light (TBDML) Copyright (C) 2005 Daniel Malik Turbo BDM Light ColdFire (TBLCF) Copyright (C) 2005 Daniel Malik This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Features
This version of the code & extended hardware provides the following features:
- A single BDM interface for programming and debugging of the following targets:
- HCS12 (including those without SYNC feature (e.g. 9S12DP256B)
- HCS08
- RS08
- Coldfire V1 microcontrollers
- Coldfire V2, V3 & V4 microcontrollers
- Kinetis ARM-Cortex microcontrollers
- MC56F80xx Digital Signal Controllers (Limited range of devices in CW 10 & stand-alone programmer)
- No re-flashing of the BDM is required when changing between targets
- Compatible IDEs
- Codewarrior V10.x (Eclipse version)
- Tested on Windows-XP-32bit, Windows-7-32bit, Windows-7-64bit, Windows 8, Windows 10
- Tested on Ubuntu-32-bit, 64-bit
- Codewarrior Legacy versions
- Codewarrior Development Studio for HCS12(X) V5.1 &
CW for Microcontrollers V6.3 (RS08 is not supported)
CW for Coldfire V7.1 CodeWarrior for DSC56800E v8.3 (USBDM-JMxx-CF or MC56F8006Demo board only) - Initial support for CodeSourcery Lite for Coldfire
- Codewarrior V10.x (Eclipse version)
- Trimming of target internal clock (Eclipse version or standalone programming tools only).
- Higher USB communication speed cf. JB16 version BDMs (USB full speed cf. USB low speed)
- Vista compatible
- Linux compatible
- The Firmware in the BDM may be automatically updated using an in-circuit-programming (ICP) feature.
- Hardware is physically small
- Target Vdd supply & control. This allows the target power to be cycled when required for a reliable reset into BDM mode. It is also (obviously) convenient since it allows debugging small target boards without a separate target power supply. An external target supply may also be used instead. The Target supply is protected by a polyfuse and software detection of overload.
- HCS12, HCS08, RS08, Coldfire V1 specific features:
- Target reset detection & control (required for HC12 processors). This allows HC12 processors to be reset into BDM mode as required for debugging.
- Target Vdd monitoring. This allows the hardware to detect changes in the Target supply to provide reliable resetting into BDM modes on HCS08 and RS08 microcontrollers. It also is used to implement the target power supply protection.
- A higher BDM interface speed than the existing JB16 OSBDMs. Up to 56MHz. (BDM clock 28MHz).
- Automatic re-connection. The software has an option to continuously update the interface speed to prevent loss of communication if the target BDM interface speed changes (as may occur with clock changes on some targets).
- Control of BDM clock selection in HC12/HCS08/Coldfire microcontrollers. Most of these targets provide an alternative BDM clock selection. This can have advantages when connecting to high speed targets as the alternative clock may operate at a lower speed.
- Selection of 3.3V and 5V target supply (if hardware supports this).
- Trial-and-error determination of communication speed for earlier HC12 targets.
- User prompting for target supply cycling with BKGD low as may be needed for HCS08 targets
- Coldfire V2,3,4 specific features and limitations:
- Higher communication speed with target — The target communication speed may be selected.
- The BDM uses asychronous communication with the target i.e. the BDM signals are not synchronized with the target clock. This means that the BDM should not be used with early Coldfire targets. Check the description of the BDM interface timing in the appropriate Coldfire Processor manual to determine if this limitation applies.
Что нас побудило разработать этот программатор.
Есть великое множество простых специализированных программаторов, пригодных для самостоятельного изготовления.
Есть множество дешевых китайских программаторов в уже готовом виде.
Есть немало любительских разработок, часто по качеству превосходящих последние.
Казалось бы, в чем смысл очередной поделки?
Мы длительное время занимаемся разработкой производством и поддержкой универсальных программаторов, в основном специального назначения. У нас богатый опыт работы с самыми разными микросхемами. Часто к нам обращаются люди уже собравшие, а часто и купившие, какой-нибудь из выше названных «изделий». Нашим специалистам часто без смеха/слез/ужаса (нужное подчеркнуть) невозможно смотреть на схемные решения, качество сборки и, особенно, на программное обеспечение этих приборов. Ладно когда программатор стоит «три копейки», купил, что-то работает, что-то не работает, зато деньги не большие. Но часто соотношение цена/возможности таких приборов у нас вызывают, мягко говоря, удивление. Хочется воскликнуть: это столько не стоит!
Кроме всего выше названного есть особая категория программаторов, пригодных для самостоятельного изготовления — это программаторы (точнее, схемы программаторов и программное обеспечение), разработанные специалистами фирм производящих микросхемы (в основном микроконтроллеры). Такие программаторы спроектированы вполне профессионально, в их схемотехнике нет «ляпов». Они поддерживают все заявленные микросхемы. Но есть два «маленьких» недостатка: перечень программируемых микросхем весьма ограничен (что вполне понятно) и программное обеспечение весьма спартанское — никаких лишних функций, как правило — только стереть, записать, верифицировать. Часто даже функции чтения микросхемы нет.
Нам стало обидно, что наш многолетний опыт полноценно используется только в такой узкой области, как программаторы специального назначения, поэтому мы решили поделиться своими знаниями с широкой публикой.
Итак, программатор ChipStar-Janus в начальной конфигурации — это внутрисхемный программатор. В таком режиме он поддерживает микроконтроллеры PIC и AVR фирмы Microchip, некоторые микроконтроллеры архитектуры MCS51, микроконтроллеры фирмы STMicroelectronics и еще ряд других, а также микросхемы последовательной памяти с интерфейсом I2C (в основном серия 24). К разъему расширения программатора можно подключить простейшие адаптеры и начать программировать микросхемы памяти «в панельке».
Сейчас реализовано программирование «в панельке»:
- микросхемы последовательной памяти (Serial EPROM) с интерфейсом I2C (серия 24xx);
- микросхемы последовательной флэш памяти (Serial FLASH) с интерфейсом SPI (SPI Flash);
- микросхемы последовательной памяти (Serial EPROM) с интерфейсом MW (серия 93xx);
- микросхемы NAND FLASH;
Pictures
-
Top Image
-
Bottom Image
Hardware Design
Please refer to the following documents for hardware design details:
- The ‘deluxe’ USBDM-JB16 is no longer recommended and the PCB designs have been removed. Please refer to the V3.2 documentation information or consider the JMxx or JS16 versions for more current designs.
- Minimal TBDML 20pin SOIC — Schematic & Assembly Overlays
- Minimal TBDML 28pin SOIC — Schematic & Assembly Overlays
Capabilities
The software is compatible with several of the TBDML/OSBDM hardware variants that are available. Capabilities will vary with the actual hardware. The table below summarises the capabilities of the BDM for various hardware options:
Target HC12/HCS12 HCS08 RS08 Coldfire V1 Comment TBDML X X X Designs for minimal versions provided USBDM X X X X Design for full USBDM version provided WTBDM08/12 X X X Commercially available OSBDM X X X Design posted on Freescale OSBDM board HCS08-OSBDM+E X X X Design posted on Freescale OSBDM board
I do not have access to the last 2 hardware alternatives so they HAVE NOT BEEN TESTED! I also believe the last three have a minor hardware design problem.
Credits
- The original base code is taken from the TBDML, OSBDM and TBLCF projects and I very much appreciate the effort involved in producing the original code. I hope this extension will be useful.
- The hardware interface is based on TBDML and Freescale USBSPYDER08.
References
- Altium Designer (PCB Design) — http://www.altium.com/products/altium-designer/
- Axiom MC56F8006 Demo board — http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MC56F8006DEMO
- Codesourcery — http://www.codesourcery.com/
- Coldfire Flasher — http://www.freescale.com/files/soft_dev_tools/software/programmers/CFFLASHER.zip
- Doxygen Documentation tool — http://www.stack.nl/~dimitri/doxygen/index.html
- I2C voltage level conversion — Phillips application note http://www.standardics.nxp.com/support/documents/i2c/pdf/an97055.pdf
- LIBUSB-WIN32 — http://libusb-win32.sourceforge.net/
- MAX662 Data sheet — http://www.maxim-ic.com
- OSBDM — http://forums.freescale.com/freescale/board?board.id=OSBDM08
- OSBDM hardware — http://forums.freescale.com/freescale/board/message?board.id=OSBDM08&thread.id=212
- Tasking GDI Spec — http://www.tasking.com/resources/technologies/debuggers/gdikdi.shtml
- Tcl/Tk — http://www.tcl.tk/software/tcltk/8.5.html
- TBDML — http://forums.freescale.com/freescale/board?board.id=TBDML
- TBDML hardware — http://forums.freescale.com/freescale/board/message?board.id=TBDML&thread.id=2
- USBSPYDER08 — USB mini board for Freescale’s Low-End 8-bit Microcontrollers — http://www.freescale.com/
- Ultimate Packer for eXecutables (UPX) has been used to pack DLLs and EXEs — http://upx.sourceforge.net/
- WTBDMS08/12 (Witztronics) Hardware — http://www.witztronics.com/
- WxWidgets Cross Platform Library has been used for the GUI — http://www.wxwidgets.org/
- Xerces XML parser — http://xerces.apache.org/xerces-c
License
Portions of this software is based on TBLCF software Portions of this software is based on OSBDM software Portions of this software is based on TBDML software USBDM Copyright (C) 2007-13 Peter O'Donoghue Opensource BDM (OSBDM) Copyright (C) ? Turbo BDM Light (TBDML) Copyright (C) 2005 Daniel Malik Turbo BDM Light ColdFire (TBLCF) Copyright (C) 2005 Daniel Malik This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Pictures
-
Top Image — V1.0
-
Bottom Image — V1.0
Hardware Design
Please refer to the following document for hardware design details:
- USBDM Design with Serial interface — Schematics, Assembly Overlays & Bill of Materials
- USBDM Design — Schematics, Assembly Overlays & Bill of Materials
Differences to JB16 TBLCF etc
- The PCB artwork provided is for a double-sided plated-through-hole board using surface mount components. This seems a reasonable decision since the processor is only available in a SMT package in any case. It is possible to prototype the board using a non-PTH board but the required vias may present problems as they are beneath components and need to be replaced with feed through wires.
The above images are for a milled board that was hand assembled. - Software drivers (tblcf.dll etc) need to be installed so that advantage can be taken of the new features.
Credits
Some of the code is based upon the TBLCF and OSBDM-JM60 projects and I very much appreciate the effort involved in producing the original code. I hope this extension will be useful.
References
- Altium Designer (PCB Design) — http://www.altium.com/products/altium-designer/
- Axiom MC56F8006 Demo board — http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MC56F8006DEMO
- Codesourcery — http://www.codesourcery.com/
- Coldfire Flasher — http://www.freescale.com/files/soft_dev_tools/software/programmers/CFFLASHER.zip
- Doxygen Documentation tool — http://www.stack.nl/~dimitri/doxygen/index.html
- I2C voltage level conversion — Phillips application note http://www.standardics.nxp.com/support/documents/i2c/pdf/an97055.pdf
- LIBUSB-WIN32 — http://libusb-win32.sourceforge.net/
- MAX662 Data sheet — http://www.maxim-ic.com
- OSBDM — http://forums.freescale.com/freescale/board?board.id=OSBDM08
- OSBDM hardware — http://forums.freescale.com/freescale/board/message?board.id=OSBDM08&thread.id=212
- Tasking GDI Spec — http://www.tasking.com/resources/technologies/debuggers/gdikdi.shtml
- Tcl/Tk — http://www.tcl.tk/software/tcltk/8.5.html
- TBDML — http://forums.freescale.com/freescale/board?board.id=TBDML
- TBDML hardware — http://forums.freescale.com/freescale/board/message?board.id=TBDML&thread.id=2
- USBSPYDER08 — USB mini board for Freescale’s Low-End 8-bit Microcontrollers — http://www.freescale.com/
- Ultimate Packer for eXecutables (UPX) has been used to pack DLLs and EXEs — http://upx.sourceforge.net/
- WTBDMS08/12 (Witztronics) Hardware — http://www.witztronics.com/
- WxWidgets Cross Platform Library has been used for the GUI — http://www.wxwidgets.org/
- Xerces XML parser — http://xerces.apache.org/xerces-c
License
Portions of this software is based on TBLCF software Portions of this software is based on OSBDM software Portions of this software is based on TBDML software USBDM Copyright (C) 2007-13 Peter O'Donoghue Opensource BDM (OSBDM) Copyright (C) ? Turbo BDM Light (TBDML) Copyright (C) 2005 Daniel Malik Turbo BDM Light ColdFire (TBLCF) Copyright (C) 2005 Daniel Malik This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Features
This version of the code & BDM hardware provides the following features:
- A single BDM interface for programming and debugging of the following targets:
- HCS12 (including those without SYNC feature (e.g. 9S12DP256B)
- HCS08
- RS08
- Coldfire V1
- Compatible IDEs
- Codewarrior V10.1 (Eclipse version)
- Tested on Windows-XP-32bit, Windows-7-32bit, Windows-7-64bit
- Tested on Ubuntu-32-bit
- Codewarrior Legacy versions CodeWarrior Development Studio for HCS12(X) V5.1 &
CW for Microcontrollers V6.3 (RS08 is not supported - Initial support for CodeSourcery Lite for Coldfire
- Codewarrior V10.1 (Eclipse version)
- Trimming of target internal clock (Eclipse version or standalone programming tools only).
- Vista compatible
- Linux compatible
- Software triggered in-circuit-programming (ICP) of the microcontroller for update of Firmware. No links on the hardware are required.
- Hardware is physically small
- Target Vdd supply & control. This allows the target power to be cycled when required for a reliable reset into BDM mode. It is also (obviously) convenient since it allows debugging small target boards without a separate target power supply. An external target supply may also be used instead. The Target supply is protected by a polyfuse and software detection of overload.
- HCS12, HCS08, RS08, Coldfire V1 specific features:
- Target reset detection & control (required for HC12 processors). This allows HC12 processors to be reset into BDM mode as required for debugging.
- Target Vdd monitoring. This allows the hardware to detect changes in the Target supply to provide reliable resetting into BDM modes on HCS08 and RS08 microcontrollers. It also is used to implement the target power supply protection.
- A slightly higher BDM interface speed than the existing JB16 OSBDMs. Up to 40MHz. (BDM clock 20MHz).
- Automatic re-connection. The software has an option to continuously update the interface speed to prevent loss of communication if the target BDM interface speed changes (as may occur with clock changes on some targets).
- Control of BDM clock selection in HC12/HCS08/Coldfire microcontrollers. Most of these targets provide an alternative BDM clock selection. This can have advantages when connecting to high speed targets as the alternative clock may operate at a lower speed.
- Selection of 3.3V and 5V target supply (if hardware supports this).
- Trial-and-error determination of communication speed for earlier HC12 targets.
- User prompting for target supply cycling with BKGD low as may be needed for HCS08 targets
- Various bug fixes on the OSBDM code.
Features
This version of the code & extended hardware provides the following features:
- A single BDM interface for programming and debugging of the following targets:
- Coldfire V2, V3 & V4 microcontrollers
- Kinetis ARM-Cortex microcontrollers
- MC56F80xx Digital Signal Controllers (Limited range of devices in CW 10 & stand-alone programmer)
- No re-flashing of the BDM is required when changing between targets
- Compatible IDEs
- Codewarrior V10.1 (Eclipse version)
- Tested on Windows-XP-32bit, Windows-7-32bit, Windows-7-64bit
- Tested on Ubuntu-32-bit
- Codewarrior Legacy versions CW for Coldfire V7.1 CodeWarrior for DSC56800E v8.3 (USBDM-JMxx-CF or MC56F8006Demo board only)
- Initial support for CodeSourcery Lite for Coldfire
- Initial support for Coldfire Flasher (CFFlasher)
- Codewarrior V10.1 (Eclipse version)
- Higher USB communication speed cf. JB16 version BDMs (USB full speed cf. USB low speed)
- Vista compatible
- Linux compatible
- Initial Firmware programming may be done without a BDM using the JS16 USB bootloader ROM.
- The Firmware in the BDM may be automatically updated using an in-circuit-programming (ICP) feature.
- Hardware is physically small
- HCS12, HCS08, RS08, Coldfire V1 specific features:
- Target reset detection & control (required for HC12 processors). This allows HC12 processors to be reset into BDM mode as required for debugging.
- A higher BDM interface speed than the existing JB16 OSBDMs. Up to 56MHz. (BDM clock 28MHz).
- Automatic re-connection. The software has an option to continuously update the interface speed to prevent loss of communication if the target BDM interface speed changes (as may occur with clock changes on some targets).
- Control of BDM clock selection in HC12/HCS08/Coldfire microcontrollers. Most of these targets provide an alternative BDM clock selection. This can have advantages when connecting to high speed targets as the alternative clock may operate at a lower speed.
- Trial-and-error determination of communication speed for earlier HC12 targets.
- User prompting for target supply cycling with BKGD low as may be needed for HCS08 targets
- Coldfire V2,3,4 specific features and limitations:
- Higher communication speed with target — The target communication speed may be selected.
- The BDM uses asychronous communication with the target i.e. the BDM signals are not synchronized with the target clock. This means that the BDM should not be used with early Coldfire targets. Check the description of the BDM interface timing in the appropriate Coldfire Processor manual to determine if this limitation applies.