The document provides information about the FlashcatUSB device, which is a versatile multi-protocol Flash memory programmer. It can be used to program flash memory using JTAG, SPI, and NAND interfaces. The document discusses software requirements, lists supported flash devices, explains how to install drivers and set up the device, and provides information on using different modes for flash programming. It also provides an overview of the scripting engine that allows customizing tasks through script files.
This document provides instructions for restoring an APC device's SPI EEPROM using an external programmer like the FlashcatUSB. It involves:
1. Preparing the FlashcatUSB programmer and downloading necessary files from APC and Microsoft websites.
2. Connecting the FlashcatUSB to the APC and running FlashcatUSB software to write the firmware BIN file to the APC's SPI EEPROM.
3. Reinstalling the system firmware from a microSD card and resetting the LAN MAC address using a console cable connected to the APC's debug port.
The document provides information about Intersoft Institute, an Indian training institute that offers IT and computer repair courses. It lists Intersoft's contact information and history since 1998, including starting mobile and laptop repair training programs. It then describes Intersoft's various computer repair, mobile repair, and other IT courses at both the basic and advanced levels, including modules on laptop hardware, motherboard chip-level repair, and BGA chip replacement. The document aims to provide students with an overview of Intersoft's course offerings and topics covered.
Data Recovery Course
After years of doing data recovery for our inhouse service centre CHIPMENTOR, we have decided to start this data recovery course for all . Like our other courses , CHIPTRONIKS has designed an easy to learn data recovery course which will not only multiply the revenue of repairing engineers around the world but will also help them in meeting Customers requirement.
Our Data Recovery Course is hands-on practical course with focus on practical problems faced. Many companies tries to hide the way data is recovered, and like our other training , we believe we can make this country more advanced only if we share more ideas and knowledge. So we will unearth all the myths and the various tools used in data recovery business. Due to our innovatice training ,we have helped build strong laptop repairing community in India .
This document provides an overview and details of ASUS notebook motherboard power circuits and components. It includes diagrams of the power systems used in Sonoma, Napa, Santa Rosa and Montevina platforms. Sample diagrams are shown for the M9V and V6J motherboards. Key integrated circuits used in the power systems like the LTC3728, TPS5130, MAX1987, TPS51020 and ISL6227 switching regulators are described in detail including specifications, pinouts and functions. Troubleshooting tips are provided in a Q&A section.
The document provides a guide to understanding PC hardware through a series of modules covering topics such as data, the system board, CPUs, drives, expansion cards, operating systems, graphics, and more. It is designed to be read either for self-study or as part of a remote instruction course on IT taught in schools. The guide contains over 200 pages of illustrated material divided into several modules, some of which are further subdivided.
CHIPTRONIKS the best laptop repairing institute in Delhi with professional service center. We provide short term laptop, mobile tablet pc repairing course in Delhi at affordable price. Contact us for laptop repairing course.mobile repairing course'/> <meta>laptop repairing institute in Delhi,laptop repairing course in Delhi,laptop repairing institute,laptop repairing course,chip level laptop repairing institute in Delhi,chip level laptop repairing course in Delhi,mobile repairing institute in Delhi,mobile repairing course in Delhi,laptop repairing institute in India,tablet pc repairing institute in Delhi,aptop repairing institute in India,laptop institute India
CHIPTRONIKS the best laptop repairing institute in Delhi with professional service center. We provide short term laptop, mobile tablet pc repairing course in Delhi at affordable price. Contact us for laptop repairing course.mobile repairing course'/> <meta>laptop repairing institute in Delhi,laptop repairing course in Delhi,laptop repairing institute,laptop repairing course,chip level laptop repairing institute in Delhi,chip level laptop repairing course in Delhi,mobile repairing institute in Delhi,mobile repairing course in Delhi,laptop repairing institute in India,tablet pc repairing institute in Delhi,aptop repairing institute in India,laptop institute India
This document provides instructions for restoring an APC device's SPI EEPROM using an external programmer like the FlashcatUSB. It involves:
1. Preparing the FlashcatUSB programmer and downloading necessary files from APC and Microsoft websites.
2. Connecting the FlashcatUSB to the APC and running FlashcatUSB software to write the firmware BIN file to the APC's SPI EEPROM.
3. Reinstalling the system firmware from a microSD card and resetting the LAN MAC address using a console cable connected to the APC's debug port.
The document provides information about Intersoft Institute, an Indian training institute that offers IT and computer repair courses. It lists Intersoft's contact information and history since 1998, including starting mobile and laptop repair training programs. It then describes Intersoft's various computer repair, mobile repair, and other IT courses at both the basic and advanced levels, including modules on laptop hardware, motherboard chip-level repair, and BGA chip replacement. The document aims to provide students with an overview of Intersoft's course offerings and topics covered.
Data Recovery Course
After years of doing data recovery for our inhouse service centre CHIPMENTOR, we have decided to start this data recovery course for all . Like our other courses , CHIPTRONIKS has designed an easy to learn data recovery course which will not only multiply the revenue of repairing engineers around the world but will also help them in meeting Customers requirement.
Our Data Recovery Course is hands-on practical course with focus on practical problems faced. Many companies tries to hide the way data is recovered, and like our other training , we believe we can make this country more advanced only if we share more ideas and knowledge. So we will unearth all the myths and the various tools used in data recovery business. Due to our innovatice training ,we have helped build strong laptop repairing community in India .
This document provides an overview and details of ASUS notebook motherboard power circuits and components. It includes diagrams of the power systems used in Sonoma, Napa, Santa Rosa and Montevina platforms. Sample diagrams are shown for the M9V and V6J motherboards. Key integrated circuits used in the power systems like the LTC3728, TPS5130, MAX1987, TPS51020 and ISL6227 switching regulators are described in detail including specifications, pinouts and functions. Troubleshooting tips are provided in a Q&A section.
The document provides a guide to understanding PC hardware through a series of modules covering topics such as data, the system board, CPUs, drives, expansion cards, operating systems, graphics, and more. It is designed to be read either for self-study or as part of a remote instruction course on IT taught in schools. The guide contains over 200 pages of illustrated material divided into several modules, some of which are further subdivided.
CHIPTRONIKS the best laptop repairing institute in Delhi with professional service center. We provide short term laptop, mobile tablet pc repairing course in Delhi at affordable price. Contact us for laptop repairing course.mobile repairing course'/> <meta>laptop repairing institute in Delhi,laptop repairing course in Delhi,laptop repairing institute,laptop repairing course,chip level laptop repairing institute in Delhi,chip level laptop repairing course in Delhi,mobile repairing institute in Delhi,mobile repairing course in Delhi,laptop repairing institute in India,tablet pc repairing institute in Delhi,aptop repairing institute in India,laptop institute India
CHIPTRONIKS the best laptop repairing institute in Delhi with professional service center. We provide short term laptop, mobile tablet pc repairing course in Delhi at affordable price. Contact us for laptop repairing course.mobile repairing course'/> <meta>laptop repairing institute in Delhi,laptop repairing course in Delhi,laptop repairing institute,laptop repairing course,chip level laptop repairing institute in Delhi,chip level laptop repairing course in Delhi,mobile repairing institute in Delhi,mobile repairing course in Delhi,laptop repairing institute in India,tablet pc repairing institute in Delhi,aptop repairing institute in India,laptop institute India
This document summarizes the evolution of computer motherboards from early processors like the 8086 to later Pentium models. It provides specifications for each board including the processor, manufacturer, memory capacity, and BIOS. It also describes user configurable settings like memory and I/O configurations through jumpers and switches.
The document introduces microcontrollers, which are integrated circuits that contain all components of a basic computer system on a single chip. It describes the typical components of a microcontroller, including a CPU, memory, input/output peripherals, and communication interfaces. It also discusses how microcontrollers are commonly used in devices like appliances, vehicles, and industrial equipment. The document focuses on the PIC18F25K22 microcontroller, outlining its memory resources and peripherals that can be programmed through special function registers using the C programming language.
The document provides an introduction to the R8C/2A and R8C/2B group of microcontroller units (MCUs) from Renesas. It outlines the key features of the MCUs including their 16-bit CPU core, memory sizes ranging from 48KB to 128KB of ROM and 2.5KB to 7.5KB of RAM, and integrated peripherals such as timers, serial interfaces, A/D converters, and watchdogs. Debugging can be done using a single-wire interface through the MODE pin without using other pins. Contact information is provided for purchasing samples or getting technical support.
The document describes the features of an AVR 8-bit microcontroller, including its RISC architecture, memory capabilities, I/O ports, timers, USB and peripheral features. It has 8/16/32KB of flash memory, 512/512/1024 bytes of EEPROM and SRAM, and 22 programmable I/O lines. It includes analog and digital features such as timers, USART, SPI and a USB controller.
This document provides an overview of the features and specifications of the ATmega164P/324P/644P microcontrollers. Key points include:
- It is an 8-bit AVR microcontroller with 16/32/64KB of flash memory, 512B/1KB/2KB of EEPROM, and 1KB/2KB/4KB of SRAM.
- It has an advanced RISC architecture with 131 powerful instructions that typically execute in a single clock cycle.
- It includes various peripherals like timers, PWM, ADC, USART, SPI and JTAG interface.
- It has 32 general purpose I/O lines and 32 general purpose working registers.
The document discusses Microchip's 16-bit and 32-bit microcontroller products. It introduces their PIC24F, PIC24H and dsPIC30F families of 16-bit MCUs as well as their 32-bit PIC32 MCUs. It provides an overview of the features of these product families and describes some example applications and solutions developed using Microchip's MCUs. It also discusses debugger tools and starter kits for evaluating Microchip's MCUs.
The document provides information on the features and specifications of the ATmega8535 microcontroller, which includes an 8-bit AVR CPU, 8K bytes of flash memory, 512 bytes of EEPROM, 512 bytes of SRAM, 32 general purpose I/O lines, timers, serial interfaces, analog to digital converter, and six power saving modes. It also summarizes the pin configurations and functions of the microcontroller.
The document discusses the MSP430 microcontroller family from Texas Instruments. It provides an overview of the MSP430 architecture including its ultra-low power capabilities, peripherals, and development tools. Specific MSP430 derivatives and their features are also highlighted.
The document provides information about Chiptroniks, an ISO 9001:2008 certified training institute that offers short-term and long-term courses in laptop and tablet PC repairing. It lists various courses ranging from 1 to 5 months in duration along with course fees and syllabus details. The courses cover topics like basic electronics, chip-level motherboard and laptop repairing, SMD components training, and tablet PC repairing. The institute provides lifetime technical support to students along with hostel facilities and access to repair tools and parts.
Toshiba will use ARM cores in all future microcontroller application-specific standard products (ASSPs). This includes the ARM9 for display applications and Cortex M3 for embedded applications across various markets like home appliances, industrial equipment, consumer electronics, and automotive. Toshiba's Cortex M3 microcontrollers offer features like low power consumption, integrated analog circuits, safety certifications, and support for motor control, with families targeting applications in home appliances, industrial controls, sensors, and more. The document provides details on several Toshiba Cortex M3 microcontroller families and their target applications.
This document summarizes Arrow Israel's record sales in 2010 of microcontroller units (MCUs) based on the ARM architecture. It provides an overview of Arrow Israel's product portfolio including various ARM-based MCUs from manufacturers like NXP and Texas Instruments. Feature comparisons are given for the ARM7, Cortex-M0, M3, and M4 architectures. upcoming products like NXP's LPC11U00 Cortex-M0 MCU and Texas Instrument's Kinetis MCU families are also highlighted.
CodeWarrior, Linux; OrCad and Hyperlynx; QMS Toolsdjerrybellott
This document describes the configuration of a Freescale 8313RDB board with a PowerQuicII 8313 processor running Linux. It includes the configuration file contents which set memory window addresses and DDR controller registers to interface external memory. It also describes using U-Boot to load Linux and the Codewarrior IDE to compile and download programs to the board.
This document summarizes the features and specifications of the Atmel ATmega8A 8-bit microcontroller. It includes:
- An 8-bit RISC CPU with 8KB of flash memory, 512B of EEPROM, and 1KB of SRAM.
- 23 general purpose I/O lines and 32 general purpose working registers.
- Timers, serial interfaces, ADC, and sleep modes for power savings.
- Packaged in PDIP, TQFP, and QFN/MLF packages with various pin configurations.
This document introduces microcontrollers and compares them to microprocessors. It focuses on AVR microcontrollers, describing their components, architectures like ATmega16, and how to program them using an ISP. Microcontrollers integrate CPU, memory and peripherals onto a single chip while microprocessors require external components. AVRs are faster and use less power than other microcontrollers. The document provides an overview of AVR features and tutorials for further learning.
The document provides an introduction to the NanoBoard-3000 FPGA development board, outlining its key features such as the host and user FPGAs, memory resources, audio and video capabilities, and modular enclosure options. Details are given about the board's architecture, including its dual boot system, plug-in peripheral board support, and interfaces to connect to a PC and output video and audio. Resources and ordering information are provided for learning more about the NanoBoard-3000 development platform.
This document describes the AT89C51 microcontroller. It includes a pinout diagram and descriptions of the pins including power, ground, ports 0-3, reset, ALE/PROG, PSEN, EA/VPP, oscillator pins, and alternate functions of port 3 pins. It provides a block diagram of the architecture and describes features like 4K bytes of flash memory, 128 bytes of RAM, timers, interrupts, serial port, and power saving idle and power down modes.
This document provides information on the features and specifications of the Atmel ATmega8(L) 8-bit microcontroller. It has an 8-bit AVR CPU with advanced RISC architecture, 8KBytes of flash memory, 512Bytes of EEPROM, 1KByte of SRAM, and various I/O features. The microcontroller operates between 2.7-5.5V with a clock speed of 0-16MHz and has low power consumption of 3.6mA active, 1.0mA idle, and 0.5uA power-down modes.
BlackHat 2009 - Hacking Zigbee Chips (slides)Michael Smith
This document discusses a 16-bit rootkit and second generation Zigbee chips. It describes how the rootkit works by proxying a microcontroller's interrupt vector table to gain control of incoming packets. It also examines vulnerabilities in early Zigbee chips like the EM250 and CC2430 that exposed cryptographic keys due to debug interfaces and memory layout issues. Later generations of chips aim to address these security flaws.
The document discusses timers and provides examples of using timers in normal mode on the ATmega32 microcontroller. It begins with defining what a timer is and how timers can count up, down, or up/down. It then discusses timer modes, infrastructure, and applications including delays, baud rate generation, and waveform generation. The document provides details on the timer registers and modes on the ATmega32, including normal mode. It gives an example of writing a program to wait 14 machine cycles in normal mode using Timer 0 on the ATmega32.
This document summarizes the evolution of computer motherboards from early processors like the 8086 to later Pentium models. It provides specifications for each board including the processor, manufacturer, memory capacity, and BIOS. It also describes user configurable settings like memory and I/O configurations through jumpers and switches.
The document introduces microcontrollers, which are integrated circuits that contain all components of a basic computer system on a single chip. It describes the typical components of a microcontroller, including a CPU, memory, input/output peripherals, and communication interfaces. It also discusses how microcontrollers are commonly used in devices like appliances, vehicles, and industrial equipment. The document focuses on the PIC18F25K22 microcontroller, outlining its memory resources and peripherals that can be programmed through special function registers using the C programming language.
The document provides an introduction to the R8C/2A and R8C/2B group of microcontroller units (MCUs) from Renesas. It outlines the key features of the MCUs including their 16-bit CPU core, memory sizes ranging from 48KB to 128KB of ROM and 2.5KB to 7.5KB of RAM, and integrated peripherals such as timers, serial interfaces, A/D converters, and watchdogs. Debugging can be done using a single-wire interface through the MODE pin without using other pins. Contact information is provided for purchasing samples or getting technical support.
The document describes the features of an AVR 8-bit microcontroller, including its RISC architecture, memory capabilities, I/O ports, timers, USB and peripheral features. It has 8/16/32KB of flash memory, 512/512/1024 bytes of EEPROM and SRAM, and 22 programmable I/O lines. It includes analog and digital features such as timers, USART, SPI and a USB controller.
This document provides an overview of the features and specifications of the ATmega164P/324P/644P microcontrollers. Key points include:
- It is an 8-bit AVR microcontroller with 16/32/64KB of flash memory, 512B/1KB/2KB of EEPROM, and 1KB/2KB/4KB of SRAM.
- It has an advanced RISC architecture with 131 powerful instructions that typically execute in a single clock cycle.
- It includes various peripherals like timers, PWM, ADC, USART, SPI and JTAG interface.
- It has 32 general purpose I/O lines and 32 general purpose working registers.
The document discusses Microchip's 16-bit and 32-bit microcontroller products. It introduces their PIC24F, PIC24H and dsPIC30F families of 16-bit MCUs as well as their 32-bit PIC32 MCUs. It provides an overview of the features of these product families and describes some example applications and solutions developed using Microchip's MCUs. It also discusses debugger tools and starter kits for evaluating Microchip's MCUs.
The document provides information on the features and specifications of the ATmega8535 microcontroller, which includes an 8-bit AVR CPU, 8K bytes of flash memory, 512 bytes of EEPROM, 512 bytes of SRAM, 32 general purpose I/O lines, timers, serial interfaces, analog to digital converter, and six power saving modes. It also summarizes the pin configurations and functions of the microcontroller.
The document discusses the MSP430 microcontroller family from Texas Instruments. It provides an overview of the MSP430 architecture including its ultra-low power capabilities, peripherals, and development tools. Specific MSP430 derivatives and their features are also highlighted.
The document provides information about Chiptroniks, an ISO 9001:2008 certified training institute that offers short-term and long-term courses in laptop and tablet PC repairing. It lists various courses ranging from 1 to 5 months in duration along with course fees and syllabus details. The courses cover topics like basic electronics, chip-level motherboard and laptop repairing, SMD components training, and tablet PC repairing. The institute provides lifetime technical support to students along with hostel facilities and access to repair tools and parts.
Toshiba will use ARM cores in all future microcontroller application-specific standard products (ASSPs). This includes the ARM9 for display applications and Cortex M3 for embedded applications across various markets like home appliances, industrial equipment, consumer electronics, and automotive. Toshiba's Cortex M3 microcontrollers offer features like low power consumption, integrated analog circuits, safety certifications, and support for motor control, with families targeting applications in home appliances, industrial controls, sensors, and more. The document provides details on several Toshiba Cortex M3 microcontroller families and their target applications.
This document summarizes Arrow Israel's record sales in 2010 of microcontroller units (MCUs) based on the ARM architecture. It provides an overview of Arrow Israel's product portfolio including various ARM-based MCUs from manufacturers like NXP and Texas Instruments. Feature comparisons are given for the ARM7, Cortex-M0, M3, and M4 architectures. upcoming products like NXP's LPC11U00 Cortex-M0 MCU and Texas Instrument's Kinetis MCU families are also highlighted.
CodeWarrior, Linux; OrCad and Hyperlynx; QMS Toolsdjerrybellott
This document describes the configuration of a Freescale 8313RDB board with a PowerQuicII 8313 processor running Linux. It includes the configuration file contents which set memory window addresses and DDR controller registers to interface external memory. It also describes using U-Boot to load Linux and the Codewarrior IDE to compile and download programs to the board.
This document summarizes the features and specifications of the Atmel ATmega8A 8-bit microcontroller. It includes:
- An 8-bit RISC CPU with 8KB of flash memory, 512B of EEPROM, and 1KB of SRAM.
- 23 general purpose I/O lines and 32 general purpose working registers.
- Timers, serial interfaces, ADC, and sleep modes for power savings.
- Packaged in PDIP, TQFP, and QFN/MLF packages with various pin configurations.
This document introduces microcontrollers and compares them to microprocessors. It focuses on AVR microcontrollers, describing their components, architectures like ATmega16, and how to program them using an ISP. Microcontrollers integrate CPU, memory and peripherals onto a single chip while microprocessors require external components. AVRs are faster and use less power than other microcontrollers. The document provides an overview of AVR features and tutorials for further learning.
The document provides an introduction to the NanoBoard-3000 FPGA development board, outlining its key features such as the host and user FPGAs, memory resources, audio and video capabilities, and modular enclosure options. Details are given about the board's architecture, including its dual boot system, plug-in peripheral board support, and interfaces to connect to a PC and output video and audio. Resources and ordering information are provided for learning more about the NanoBoard-3000 development platform.
This document describes the AT89C51 microcontroller. It includes a pinout diagram and descriptions of the pins including power, ground, ports 0-3, reset, ALE/PROG, PSEN, EA/VPP, oscillator pins, and alternate functions of port 3 pins. It provides a block diagram of the architecture and describes features like 4K bytes of flash memory, 128 bytes of RAM, timers, interrupts, serial port, and power saving idle and power down modes.
This document provides information on the features and specifications of the Atmel ATmega8(L) 8-bit microcontroller. It has an 8-bit AVR CPU with advanced RISC architecture, 8KBytes of flash memory, 512Bytes of EEPROM, 1KByte of SRAM, and various I/O features. The microcontroller operates between 2.7-5.5V with a clock speed of 0-16MHz and has low power consumption of 3.6mA active, 1.0mA idle, and 0.5uA power-down modes.
BlackHat 2009 - Hacking Zigbee Chips (slides)Michael Smith
This document discusses a 16-bit rootkit and second generation Zigbee chips. It describes how the rootkit works by proxying a microcontroller's interrupt vector table to gain control of incoming packets. It also examines vulnerabilities in early Zigbee chips like the EM250 and CC2430 that exposed cryptographic keys due to debug interfaces and memory layout issues. Later generations of chips aim to address these security flaws.
The document discusses timers and provides examples of using timers in normal mode on the ATmega32 microcontroller. It begins with defining what a timer is and how timers can count up, down, or up/down. It then discusses timer modes, infrastructure, and applications including delays, baud rate generation, and waveform generation. The document provides details on the timer registers and modes on the ATmega32, including normal mode. It gives an example of writing a program to wait 14 machine cycles in normal mode using Timer 0 on the ATmega32.
Tiga laptop yang diringkas meliputi Acer D270, Dell 1510, dan Compaq cq20. Kasus utama ketiganya adalah tidak tampilnya layar walaupun dinyalakan. Langkah-langkah perbaikan meliputi pengukuran tegangan adaptor, fuse, dioda, bios, dan komponen daya seperti mosfet dan regulator tegangan untuk mendeteksi komponen rusak. Solusi yang diberikan berupa penggantian komponen seperti fet, bios, atau penambahan kap
The document provides an overview of a complete illustrated guide to PC hardware in 205 pages. It is divided into several modules covering topics such as data, the PC system board, CPUs, drives, expansion cards, operating systems, graphics, and more. The guide is designed for self-study or remote instruction and explains how PCs process digital data using binary numbers, bits, and bytes to represent analog information electronically.
The document discusses voltage levels before and after powering on a motherboard. It begins by covering standby voltages like 3VSB and 5VSB that power certain components before full power on. It then discusses signals like PWRBTN# and RSTCON# and how they control power on. Next, it covers battery voltage and leakage checks. After power on, it details the various voltage rails for different motherboard models, including VCORE. It introduces linear and switching regulators. For VCORE specifically, it maps out the control architecture and circuit, discusses debugging procedures, and provides a repair flowchart.
This document provides instructions for repairing hard disk circuit boards using a soldering station and hot air gun. It discusses common faults like burned diodes or fuses and their solutions. It explains how to check if a diode is functioning using a multimeter and how to replace components like the spindle motor IC. The document demonstrates how to repair circuits from hard disk models like Seagate 7200.11/12 when only the fuse or diode is burned by bypassing them with a wire. It also shows how to replace ROM ICs between similar but different numbered circuits and repair a WD L-shaped circuit by re-soldering burned points and replacing the spindle motor IC.
This document introduces a laptop and desktop computer sales and repair center. It discusses common screen display problems like horizontal white lines or multi-colored vertical lines that can be caused by fiber dust accumulation blocking cooling air flow after a year of use. The center offers to fully disassemble, clean, and replace thermal paste to remove dust and restore devices to like-new condition, and can perform board-level repairs on any brand. Customers are urged to get devices serviced after a year of use or when warranties expire to prevent costly overheating failures.
JungleFlasher is a Windows application that provides functions for modifying and flashing firmware on various DVD drive models used in the Xbox 360 console. It has tabs for working with firmware files, extracting identification data from LiteOn drives, unlocking and flashing Samsung and BenQ drives using MTK chips, and flashing Hitachi drives. The application aims to combine various flashing functions into one easy to use tool and provide relevant information to users. It supports both x86 and x64 Windows environments.
The document provides instructions for getting started with the LotOS framework on a Banana Pi board. It includes a quick start guide for using a provided SD card image with the framework pre-installed. It also describes how to manually build and install the LotOS components, which are based on the Yocto project and include the Mango hypervisor, FreeRTOS, Linux kernel, and demo applications. The Mango hypervisor provides a console interface for managing guest partitions and their resources.
The document describes an AVR 32-bit microcontroller USB bootloader that allows in-system programming (ISP) without external hardware. Key features include pre-programmed bootloaders for AVR UC3 series up to version 1.0.3, USB device firmware upgrade (DFU) class support, and configurable I/O conditions to trigger ISP. The bootloader is located in protected flash and uses general-purpose fuses and a configuration word to determine if it should start ISP or the application.
The document discusses various components and features of motherboards. It lists four main components of motherboards as CPU socket, chipsets, RAM slots, and expansion slots. Two important motherboard selection criteria are the motherboard chipset and processor. The document also discusses cache memory types, BIOS functions including POST and startup, hub computer architecture, CPU modes, extended/expanded memory, CMOS setup, and features of SDRAM, DDR, cache, and DDR2 memory.
Bootloader utilizes to program microcontrollers by providing a medium of communication between them. Hence small bootloader uses to make controller programmable very often as like Arduino series board. Microcontrollers like 8051, PIC without bootloader requires the external programmer to burn the program inside the memory of the microcontroller. In addition to it requires preciously control output states of various pin mode which should be in sequence according to the datasheet of the manufacturer. Here this PPT has portrayed as an example of idle configurations that requires to run the bootloader and what happens if the bootloader is installed inside the memory of the controller.
This document provides an overview of the wireless controlled android robot (WI-CAR). It can be remotely controlled from anywhere in the world by connecting to its IP address. The WI-CAR has an Android operating system, GPS for location tracking, a camera, and can be controlled within 20 degrees and 5cm movements. It supports various networks and a minimum speed of 20kbps is needed for control. Users can install apps from the Google Play store, connect external USB devices, and sensors. The WI-CAR runs for 5 hours on a 12V 1A battery and uses an AVR microcontroller with 32 general purpose registers that can perform single cycle operations. It has various memory types, peripherals, and power saving
This presentations introduces some common protocols used in electronics, and how to sniff/speak them. Then a bit about USB, and some interesting hacks with these things.
Then a bit about openwrt and router hacking.
ORION STARTER KIT….a real electronic laboratory (by FASAR ELETTRONICA)Flavio Falcinelli
Fasar Elettronica offers a starter kit designed to allow all users to develop their own application, in a fast and simple way, with the ORION platform: an advanced and "user friendly" system particularly suitable for the realization of complex user interfaces. ORION is a real electronic laboratory which, thanks to the last generation processor Atmel ARM Cortex-A5 SAMA5D34 and the Linux Embedded operating system, allows to effectively control any process that requires graphics processing, networking and management of mass storage.
Refers not only to professionals, but also to students and fans of computer and electronic science , ORION opens new horizons to those who wish to approach the world of programming with the certainty of having a technological vanguard tool, supported by complete and enriched documentation by application notes periodically updated, that registered users can free download from www.fasarelettronica.com.
The Trend
There is a trend observed in the market for designing products with SuperSpeed USB and NAND Flash inside. There are camera manufacturers, printer manufacturers as well as FLASH drive manufacturers involved in the trend. It is crucial, at this point of time in the market, to have a proper knowhow on what factors affect such designs and what can be done to achieve a successful and a longlife design.
SuperSpeed USB
The USB 3.0 standard claims that it is 10 times faster than USB 2.0. The theoretical speed is 4.8Gbps (600MBps). However looking at various realistic speed test reports made available by more
than one developers, it has been concluded that 400MBps is the maximum achievable speed for this standard.
Factors affecting performance
Depending on the NAND Flash used in the system, the performance can be estimated. But, there are a number of factors affecting the speed and performance of USB in a system. Eric Huang has listed
the dependencies very interestingly in his blog. I am listing them here.
The USB transfer speed is affected by the following factors:
Number of applications running on the host machine
The speed of the application itself
The quality of the drivers (host as well as device)
The bus on the hardware that moves data from USB controller to CPU (on host as well as device
side)
The USB PHY
The USB Cable
Non-ideal system
Looking into a nonidealized system, the SLS SuperSpeed USB Device IP Core tests performed on GigaByte A75 Motherboard have indicated the performance ~2.1Gigabits per second (262.5
Megabytes per second) with mass storage interface and ~2.7Gigabits per second (337.5 Megabytes per second) with raw interface.
There is a word in the development community about NAND Flash being the bottleneck for USB performance.
Lets see how the performance numbers with the NAND Flash look like. Mass storage performance tests with SLS SuperSpeed IP and ONFI controller IP (without ECC overload) have indicated speed
upto 101.5 MBps (812 Mbps).
What does this mean?
Transferring 1 Gb (125MB) data from the flash drive to the PC would take a second, which takes more than 6 seconds at present with USB 2.0 interface and RAM memory
Copying 5Gb (625MB) data from flash drive to PC would take 5 seconds, which is right now taking 31 seconds using USB 2.0 interface and RAM memory
Data that takes 5 minutes to transfer using USB 2.0 interface and RAM at present (6000MB) would be transferred in 48 seconds!
Not bad to have this solution for the current product upgrade...
The document provides specifications for the Cisco ASA 5508-X and ASA 5516-X firewall models, including their physical characteristics, memory, environmental tolerances, throughput capabilities, and port configurations. It describes the various LED indicators, network and console ports, internal and external storage, and power supply. The ASA 5508-X has 8 network ports, 8GB of memory, and an 80GB SSD, while the ASA 5516-X has the same ports but more memory and a 1TB SSD.
This document provides instructions for installing a mainboard. It identifies the main components of the mainboard and explains how to install the processor, memory modules, and install the mainboard into a chassis. Jumpers and switches must be set correctly before installation. Optional devices such as expansion cards can then be installed along with making connections to onboard ports and headers.
ESAT-ISP Programmer is a multipurpose development tool for Physical Computing and ISP Programming for Atmel AVR 8 bit devices.
ESAT-ISP is compatible with Arduino-UNO board.
The document discusses the history and development of artificial intelligence over several decades. Early research focused on symbolic approaches using rules and logic but progress was slow. More recently, machine learning techniques such as deep learning have achieved significant successes in areas like computer vision and natural language processing by using neural networks trained on large datasets. These new approaches have led to widespread applications of AI.
This document provides instructions for adding an on/off LED indicator to Hakko 936-x temperature-controlled soldering stations. The modification involves drilling a hole in the front panel and PC board to mount a green LED. A resistor is also added to the PC board to limit the LED current. The LED will illuminate whenever power is applied, providing a visual status indicator that was lacking in the original design. The instructions include diagrams of the front panel and PC board layout and provide detailed steps for implementation.
This document contains schematics and parts lists for the main PC board and AC on/off board of a Hakko 936 temperature-controlled soldering station. It lists the components, including integrated circuits, transistors, diodes, resistors, capacitors, and other parts used in the boards. It also includes images of the main PC board layout showing the component placement and connections between components.
lately all manifacturers are giviing Bioses Signed and SecureFlash checked, more
they are Capsulated (2.xx version) !
So these Capsulated file have an Header and Tail which will be removed by UEFI reflash Procedure, if we use the Capsulated Bios flashing by Programmer We
will get a file longer whit the HVR offset in a wrong place and Bios will be corrupted !
Look this mine DirtyGuide to How Remove Capsule
The document provides guidance on selecting and positioning antennas for wireless networks. It discusses different types of antennas such as omnidirectional, directional, and high-gain antennas. Omnidirectional antennas are best for general indoor coverage while directional antennas can extend coverage to specific areas. It also emphasizes that increasing antenna gain is generally better than increasing transmit power alone to improve range. Proper antenna selection and placement are important for optimizing coverage and capacity.
Scott Moulton owns two companies that perform data recovery and forensics. He has over 10 years of experience performing data recovery and forensics and speaking at conferences. The document discusses the goals, phases, and fundamentals of data recovery diagnostics, emphasizing that properly imaging drive sectors is crucial and that tools like SpinRite should be avoided on damaged drives as they could make recovery more difficult.
"IOS 18 CONTROL CENTRE REVAMP STREAMLINED IPHONE SHUTDOWN MADE EASIER"Emmanuel Onwumere
In iOS 18, Apple has introduced a significant revamp to the Control Centre, making it more intuitive and user-friendly. One of the standout features is a quicker and more accessible way to shut down your iPhone. This enhancement aims to streamline the user experience, allowing for faster access to essential functions. Discover how iOS 18's redesigned Control Centre can simplify your daily interactions with your iPhone, bringing convenience right at your fingertips.
2. THE INDEX
Introduction
Software requirements
List of supported Flash memory devices
Driver Installation
Setting up device for application mode
Using JTAG mode for flash programming
Using SPI mode for flash programming
Using NAND mode flash programming
Getting started with the script engine
How a script file is executed
Script file structure
Events
Variables
Conditions
Creating access to a memory device
Script control
Autorun Feature
List of console or script functions
3. INTRODUCTION
The FlashcatUSB device is a versatile multi-protocol Flash memory programmer. It is a cost
effective hardware tool that is used both by industry professionals and hobbyists. By utilizing
a single USB micro-controller design, the hardware in conjunction with software and firmware
can allow the device to configure its operation to meet the required protocols of a desired TAP
(test-access point) or interface bus (such as a serial peripheral interface). Since the device
uses a hardware based USB interface, it can then perform its function at a much faster rate
than traditional serial or parallel ports.
The hardware board features:
USB 1.1 and 2.0 compatible
32KB of programmable memory (4KB reserved for the USB bootloader)
16 MHz RISC based-processor (Atmel AVR 8-bit core)
Two switches for application mode changes
Output voltage selector jumper (3.3v or 5v)
LED for indicating current application status
Button for resetting the device or for activating the bootloader
Currently supported features for JTAG mode:
CFI compatible flash memory – Intel, AMD, and SST algorithms supported
DMA and PrAcc modes supported for target memory access
MIPS supported (for EJTAG)
Instruction register (IR) auto-sected from 4 to 512 bits.
Currently supported features for SPI mode:
Mode 0, 1, and 2 compatible
High density devices supported: 1 to 128 mbit.
High-speed mode (FOSC/2) – Reads up to 400KB per second
Ability to program MCU's with on board Flash / NV memory
SOFTWARE REQUIREMENTS
A computer with at least a 1 GHz processor and 256 MB of free memory available.
Operating systems supported: Windows XP, Windows Vista, Windows 7. Supports both 32-bit
and 64-bit environments. Apple OS X and Ubuntu version is coming soon.
Microsoft .net Framework 4.0:
Download: http://www.microsoft.com/download/en/details.aspx?id=17851 or from Windows
Update
4. LIST OF SUPPORTED FLASH DEVICES
This is only a partial list of devices that are supported, as the CFI mode can automatically
configure to any device that is detected, and in SPI mode the user can self-configure the
device needed to be programmed.
Verified CFI compatible flash devices:
Spansion S29GL256M AMD 29LV320DT Intel TE28F320C3T
Spansion S29GL128M AMD 29LV320MB Intel TE28F320C3B
Spansion S29GL064M AMD 29LV320MT Intel TE28F640C3T
Spansion S29GL064M AMD 29LV400BB Intel TE28F640C3B
Spansion S29GL032M AMD 29LV800BB Intel 28F320J5
Spansion S70GL02G ATMEL AT49BV/LV16X Intel 28F640J5
Spansion S29GL01G ATMEL AT49BV/LV16XT Intel 28F320J3
Spansion S29GL512 HYHYNIX HY29F400TT Intel 28F640J3
Spansion S29GL256 HYHYNIX HY29LV1600T Intel 28F128J3
Spansion S29GL128 Intel 28F160B3 Samsung K8D1716UB
AMD 28F400BT Intel 28F160B3 Samsung K8D1716UT
AMD 29DL322GB Intel 28F800B3 Samsung K8D3216UB
AMD 29DL322GT Intel 28F320B3 Samsung K8D3216UT
AMD 29DL323GB Intel 28F320B3 ST M28W160CB
AMD 29DL323GT Intel 28F640B3 ST M29D323DB
AMD 29DL324GB Intel 28F640B3 FUJITSU 29DL323GB
AMD 29DL324GT Intel TE28F800C3T FUJITSU 29DL323TE
AMD 29LV160DB Intel TE28F800C3B FUJITSU 29LV160B
AMD 29LV160DT Intel TE28F160C3T FUJITSU 29LV160T
AMD 29LV320DB Intel TE28F160C3B FUJITSU 29LV320BE
Micron 28F160C34B MXIC 25FL0165A FUJITSU 29LV320TE
Micron 28F160C34T MXIC 29LV800T FUJITSU 29LV800B
Micron 28F322P3 MXIC 29LV800B TOSHIBA TC58FVT160B
SHARP 28F320BJE MXIC 29LV161B TOSHIBA TC58FVB321
SHARP LH28F160BJHG MXIC 29LV161T TOSHIBA TC58FVT160
SHARP 28F160S3 MXIC 29LV320B TOSHIBA TC58FVT321
SHARP 28F320S3 MXIC 29LV320T SST 39VF1600
ST MT28W320 MXIC 29LV800BMC SST 39VF1601
ST 29W320DB ST M58LW064D SST 39VF3201
ST 29W320DT ST M29W800AB SST 39VF800
ST M29W160EB ST M29W160ET
5. Verified SPI compatible flash devices:
Atmel AT25DF641 Windbond W25X40 EON EN25P16
Atmel AT25DF321 Windbond W25X80 EON EN25P32
Atmel AT25DF161 Windbond W25X16 EON EN25P64
Atmel AT25DF081 Windbond W25X32 SST 25VF010A
Atmel AT26DF081A Windbond W25X64 SST 25VF020A
Atmel AT26DF161 Windbond W25Q80BV SST 25WF040
Atmel AT26DF161A Windbond W25Q16BV SST 25VF040B
Atmel AT26DF321 Windbond W25Q32BV SST 25VF080
Spansion S25FL128P Windbond W25Q64BV SST 25VF080B
Spansion S25FL064 MXIC MX25L10 SST 26VF016
Spansion S25FL032 MXIC MX25L20 SST 25VF016B
Spansion S25FL016 MXIC MX25L40 SST 25VF032
Spansion S25FL008 MXIC MX25L80 SST 25VF032B
ST M25P128 MXIC MX25L160 SST 25VF064B
ST M25P64 MXIC MX25L320 SST 26VF064
ST M25P32 MXIC MX25L640 PCT 25VF064C
ST M25P16 MXIC MX25L128 SST 25VF128B
ST M25P80 MXIC MX25L4006 PMC PM25LV010
ST M25P40 EON EN25F20 PMC PM25LV020
ST M25P20 EON EN25F40 PMC PM25LV040
ST M25P10 EON EN25F80 PMC PM25LV080B
Atmel AT45DB011 Atmel AT45DB321 PMC PM25LV080B
Atmel AT45DB021 Atmel AT45DB642 Atmel AT45DB081D
Atmel AT45DB041 Atmel AT45DB011D Atmel AT45DB161D
Atmel AT45DB081 Atmel AT45DB021D Atmel AT45DB321D
Atmel AT45DB161 Atmel AT45DB041D Atmel AT45DB642D
Support MCU's with on board memory programmable via SPI
Nordic nRF24LE1
If your flash is not listed above, just contact us. We can add almost any flash device upon
request. We do this frequently for many companies and individuals.
6. DRIVER INSTALLATION
When you connect FlashcatUSB to your PC for the first time, you should notice a "Found new
hardware" notification pop-up, after which this prompt should appear:
Select "Install from a list or specific location" and click Next.
Click Browse and locate the driver folder from the software package and click Next to install the
software drivers. You will need to repeat this process once for each AVR firmware you use.
7. SETTING UP DEVICE FOR APPLICATION MODE
FlashcatUSB is shipped in bootloader mode. That is a mode (also known as the DFU mode) which
allows the software to perform a unit firmware update over USB. The functionality of this device
differs depending on the type of firmware programmed into it. Once programmed with a specific
firmware, you can easily put the device back into DFU mode by putting the device into “Bootloader
Mode” and then pressing the reset button on the hardware.
Application Mode Bootloader Mode
In “Application Mode”, pressing the hardware button will only perform a USB reset. In “Bootloader
Mode”, it will reset the device but when the device automatically reconnects, it will start in the DFU
state, allowing the software to load new AVR firmware.
To load new firmware, go to the “AVR Firmware” tab, click the “Load File” button, select the firmware
from inside the folder that accompanies the software, click “Program” and finally “Start Application”
to reset the device which will cause it to begin the application from the firmware you selected.
USING JTAG MODE FOR FLASH PROGRAMMING
With the “EJTAG” version of the AVR Firmware installed, you can use FlashcatUSB to
interface with a SoC (system-on-a-chip) processor over JTAG. This allows the software to
then integrate and communicate directly with attached memory devices, usually memory (in
the form of DRAM) and storage in the way of non-volatile Flash memory.
8. The image above shows you the pin outs of the 10-pin port and how it should be connected to
the test-access port (TAP) of your target device. FlashcatUSB will only act like a passive
diagnostic tool for the target system, so the device will need to be powered on by itself.
USING SPI MODE FOR FLASH PROGRAMMING
With the “SPI” firmware installed, you can use the device as a high-speed programmer for
virtually every SPI compatible Flash memory.
The image above shows you the pin outs of the 10-pin port and how it should be connected to
the SPI bus of your targeted device. Unlike JTAG mode, you can use the VCC pin to power
the target device. You should make note of the external power the chip needs and to make
sure you have that voltage selected on the FlashcatUSB board. Most SPI chips use the 3.3v
setting.
*Note: the RST and PROG pins are only used when connecting to MCU's with on board flash, such as the
Nordic nRF24LE1 device.
9. The above diagram is how you should connect the 10-pin port to a typical SOIC-16 package
of a SPI compatible Flash device.
The above diagram is how you should connect the 10-pin port to a typical SOIC-8 and DIP-8
package of a SPI compatible Flash device.
Optionally, you can also purchase drop-in sockets for most common SPI chip packages.
10. When you start FlashcatUSB with the SPI device connected, the software should
automatically detect the chip and load its settings accordingly. If the chip is detected, but not
supported by the software, you can then use the SPI Manual Settings tab to specify all of the
settings with the values from the chip's datasheet.
USING NAND MODE FOR FLASH PROGRAMMING
Ultra-high density non-volatile memory chips (usually in the
gigabits) come in a parallel package (usually BGA) that are
connected to a common shared bus (that is wired for JTAG or
SPI) and you can also use FlashcatUSB to program those
types of chips.
To use this feature, connect the 10-pin port on FlashcatUSB
to the target device's SPI bus.
Pin-out for NAND Mode
11. GETTING STARTED WITH THE SCRIPT ENGINE
One of the most powerful features of FlashcatUSB is a customizable scripting engine. This
can help engineers speed up many common tasks. This engine uses text based files that is
comprised of a language that is simiar to vbscript. This makes the script feature easy to learn
and very efficient for manipulating data.
How a script file is executed
A script file can be executed one of two ways, automatically (like in the case of JTAG) or
manually from the "Load Script" menu from the software.
In JTAG mode, when a device is detected, the device sends FlashcatUSB its manufacture ID
and part number. The software will then check the file “Autorun.ini” for that ID and if it finds it,
it will load the corresponding script specified. If the ID is not found, then the “default.bcs”
script file is executed.
In SPI mode, you can manually run a script from the “Script” menu.
Script file structure
A script file is just a plain text document. You can open and edit one using Notepad. The
contents of a script file is made up of commands, labels, control tags, and events. When a
script file is ran, any non event command will be executed.
Events
A event is a series of commands that are executed together, much like a function. Events can
only be executed two ways, by either using its name as a function or from assigning it to a
button.
To create an event, you use CreateEvent(EventName) where EventName is the name you will
specify. At the end of your event you must be a EndEvent tag to let the script engine know the
event is over.
Events are very useful. You can pass variables to events and retrieve values from events.
When you pass a variable or value to a event, the event will create a new variables for each
argument passed. These new variables will be named $1, $2, $3 and so on for each variable
passed.
12. For example a script that looks like:
JiggaJigga("Hello World")
CreateEvent(JiggaJigga)
msgbox($1)
EndEvent
Will popup "Hello World" when executed. You can also use events like functions to parse
information an use the event like you would a command function. For example:
msgbox(JiggaJigga("Hello"," World"))
CreateEvent(JiggaJigga)
StrVar = $1 & $2
Return StrVar
EndEvent
Commands
Commands are built in functions that you will want to use to access the functionality of the
software. Some functions can be used to retrieve values and some are used only to do
certain tasks. You can test out commands by entering them into the software's console page.
This can be a good way to test out elements of your script in real time, without the need to
close and restart the software each time.
Variables
A variable is a name that you assign a object too. You can assign a string, data, integers, or
boolean values.
ThisVar = "Hello World"
Will now create a variable named ThisVar whose string value is "Hello World". To create a
data array use ";" after each byte:
MyData = 0x01;0x02;0x03;0x04;0x05;0x06
If you assign a variable 4 or less bytes, the variable will auto convert to a Integer type instead
of a Data type. To create a boolean variable:
13. DoVar = True
And to create an integer:
VarInt = 470
Integer variables are able to be added or subtracted. String and Data variables can be
combined.
VarInt = 5
VarInt += 10
msgbox(VarInt) #this will produce the result of 15
For strings and data, use the operand "&", for example:
VarStr = "Hello "
VarStr = VarStr & "World!"
msgbox(VarStr) #Will produce "Hello World!"
MyData = 0x01;0x02;0x03;0x04;0x05
MyData = MyData & 0x06;0x07
msgbox(hex(MyData)) #Will produce "0x01020304050607"
• the hex command converts the data array into a hex string that can be printed.
Conditions
Simply put, you can create a IF ELSE statement to execute code based on a condition. Use
the tag "If" followed by a condition statement. You can add a "else" tag to execute if the
statement is evaluated false. End the condition using the tag "EndIf"
For example, take the following code:
If (5 > 2)
msgbox("This will be executed")
Else
msgbox("This will not")
EndIf
14. The condition statement (5 > 2) is evaluate and found to be true. You can also use functions
that return TRUE or FALSE in a If statement.
If you precede the condition statement with the "not" keyword, what ever the statement is
evaluated at, the opposite will happen. You can also use the "!" character for the same effect.
If not (GetValue() > 10)
msgbox("This will be executed")
EndIf
CreateEvent(GetValue)
retVar = 5
return retVar
EndEvent
Creating access to a memory device
FlashcatUSB allows you to create connections from the software to the flash device on a
target system. Since a target system can contain multiple memory devices, you can create
individual tabs and scripting variables for each device.
JTAG.MemoryAddress(0x0)
JTAG.MemoryType("RAM")
JTAG.MemorySize(0x800000)
CFGMEM = JTAG.MemoryInit()
The above scripting code shows you how to create a single memory device. The first line sets
the physical address of where the memory is located on the DRAM chain. This can change
from device to device. The second line sets the memory type, this can be "RAM" or volatile
memory, "CFI" for non-volatile, or "SPI" for serial memory. The third line sets the size of the
device. This is only required for volatile memory such as RAM. The size of CFI and SPI
devices will automatically be discovered by the Init. The last command is the Init function. It
will make FlashcatUSB perform all the functions to create the memory device. This function
can also be used to store the flash index to a variable. Each time you successfully create a
flash device, it will return the unique index of the device. So the first device will be index 0, the
second index 1 and so on.
Script Control
To allow you to control the execution of the script, you can use many built in tags.
GOTO
The "goto" keyword can be used to change the current position in your script that you are
15. executing. The syntax is 'goto: <label>'. A label is a simple tag name that you can place
anywhere in your current event. To create one, make a name and end it with a colon. Using
GOTO keywords, you can also create simple loops.
VarInt = 0 #This creates a variable and gives it a value of 0
TOPCODE: #This creates the label, named TOPCODE
If (VarInt = 10) #This does a compare to see if VarInt is 10
GOTO TOPCODEDONE #This keyword will make a jump to the end of the code
Endif
VarInt += 1
GOTO TOPCODE #This will always jump to the top
TOPCODEDONE: #When your code is done, it jumps here
EXIT
The "exit" keyword can be used to skip a section of code, to exit out of a current condition
segment (i.e. if/endif or while loop). The syntax is 'exit' or 'exit <event>' or 'exit script'. If you
run exit script, no matter what event you are in, the entire script will stop execting.
For example, if you are in a condition statement and want to leave, you can do this:
If (VarInt = 10) #This does a compare to see if VarInt is 10
SomeFunction()
Var2 = 0x40
exit
Var3 = 0x40 #This will not be executed
Endif
Autorun Feature (JTAG mode only)
Since some devices share the same CPU ID code, and you may want to have different device
scripts, you can use the autorun feature. To do so, edit or create the Autorun.ini file located in
the Scripts folder. Each line (not commented out) represents one device script. The format is:
<CPU_ID>:<SCRIPT_NAME>:<DEVICE_NAME>
Add as many scripts as you need and when you run the software, when it connects via JTAG
it will load all of the scripts that match the CPU ID. Then the first device will be selected on the
GUI and executed. To change scripts, simply change the menu item on the drop down list. For
your convenience the last script executed will be remembered for future use.
LIST OF CONSOLE OR SCRIPT FUNCTIONS
16. The following is a list of commands that are built into the application. You can access these
commands from both the scripting engine (via device scripts) and the console tab of the
application.
Some of these commands are specific to the mode in which FlashcatUSB is connected, these
are namely the commands that begin with SPI or JTAG.
The Memory commands are index. That is, if you have created more than one memory
device, specifying the index will allow you to access that specific device. For example,
memory(0).read will perform the read operation from the first memory device; memory(1).read
will do the same from the second device, and so on. When you create a memory device using
the JTAG.MemoryInit, you should save that index to a variable so you can specify which
device to perform the memory operation from.
Some of the functions can return values. These values can be put into variables for further
processing. The types of the values are:
Bool - is a value of either TRUE or FALSE
String - is a value of readable characters. This value is indicated with surrounding quotes
Integer - is a 32 bit (unsigned) number. Hex values are automatically converted
Data - is an array of bytes. Can also be specified with 0x80;0x81;0x82 etc.
Command: SetParam
Parameters: Integer, Integer
Syntax: Setting, Value
Description: Sets a device parameter on the board (firmware controlled). The delays are
set in milliseconds and is the amount of time the AVR should wait between
read or write instructions. The main purpose of this command is to fine tune
performance; the faster the device operates, the higher the error rate is. This
can also affect different target devices differently.
Settings: 1: Intel Flash delay
2: AMD Flash delay
3: Memory read delay
Examples: SetParam(1, 30) #Sets the Intel flash delay to 30 ms
Command: Ejctrl
Parameters: Integer
Returns: Integer
Description: Sends a JTAG control message to the target device. These types of commands
are very dependant on the target device. This can be used to stop (0x10000)
or start (0x0) the target processor. The result of the command is returned.
Examples: Ejctrl(0x10000) #Stops the target processor
17. Command: Pause
Parameters: Integer
Description: Waits the specified amount of time (in milliseconds), useful only in scripts.
Examples: Pause(1000) #Waits 1 second
Command: FixFlash
Parameters: None
Description:
Attempts to reprogram the bootloader of a device blindly (no verification, no
check device id etc.). This is sometimes successful in restoring a device that
does not boot correctly. Only supported in JTAG mode.
Examples: FixFlash()
Command: Verify
Parameters: None or Bool
Returns: Bool or nothing
Description:
Used to enable or disable the flash verify process. It can also be used to
return the current setting.
Examples: Verify(true)
Command: writeline
Parameters: String
Description: Displays a message to the console.
Examples: writeline("this is only a test")
Command: msgbox
Parameters: String
Description: Displays a message to the user using a pop-up box.
Examples: msgbox("Hello World!")
Command: mode
Parameters: None
Returns: String
Description: Returns a string indicating which mode FlashcatUSB is in.
Examples: mode() #Returns "JTAG"
Command: ask
Parameters: String
Returns: Bool
Description:
Asks the user a yes or no question and returns that value. You can use this in
a if statement to make conditional sections.
18. Examples: ask("Continue script?")
Command: status
Parameters: String
Description: This sets the status text (the bottom bar of the software).
Examples: status("script is complete")
Command: Tab.Create
Parameters: String
Returns: Integer
Description: Creates a application specific tab. Returns the index of the tab.
Examples: Tab.Create("My Device")
Command: Tab.AddGroup
Parameters: String, Integer, Integer, Integer, Integer
Syntax: Name of group, (X-axis), (Y-axis), Length, Height
Description: Creates a group box on the tab.
Examples: Tab.AddGroup("Feature",10,10,420,140)
Command: Tab.AddBox
Parameters: String, String, Integer, Integer
Description: Creates a input box on your tab.
Examples: Tab.AddBox("BXNAME","default text",30,110)
Command: Tab.AddText
Parameters: String, String, Integer, Integer
Description: Creates a text label on your tab.
Examples: Tab.AddBox("txtName","What to say",30,110)
Command: Tab.AddImage
Parameters: String, String, Integer, Integer
Description: Adds a image to your tab from the specified file (in your scripts folder)
Examples: Tab.AddImage("ImgName","logo.gif",20,20)
Command: Tab.AddButton
Parameters: Event, String, Integer, Integer
Description:
Adds a button to your tab. The specified event is called when the user clicks
on the button.
Examples: Tab.AddButton(HelloWorld,"Click Me!",20,20)
19. Command: Tab.AddProgress
Parameters: Integer, Integer, Integer
Description:
Adds a progress bar to your form. This bar will then be automatically updated
via internal functions that you call (selected ones that might take time to
process). The parameters are x-axis, y-axis, and bar width.
Examples: Tab.AddProgress(20,92,404)
Command: Tab.Remove
Parameters: String
Description: Removes any previously added object from your tab.
Examples: Tab.Remove("ImgName")
Command: Tab.SetText
Parameters: String, String
Description: Changes the text of any previously created object
Examples: Tab.SetText("txtName","Jigga Jigga!")
Command: Tab.ButtonDisable
Parameters: String
Description: Disables a button so the user can not click it and run the event.
Examples: Tab.ButtonDisable("btName")
Command: Tab.ButtonEnable
Parameters: String
Description: Enables the button (if you had it disabled)
Examples: Tab.ButtonEnable("btName")
Command: JTAG.MemoryAddress
Parameters: Integer
Description: Initialized the dynamic memory controller and sets the base memory address.
Examples: JTAG.MemoryAddress(0x80000000)
Command: JTAG.MemoryType
Parameters: String
Description:
Sets the device type of the memory. This can be "RAM", "CFI" or "SPI".
Note: SPI mode over JTAG is not yet supported.
Examples: JTAG.MemoryType("CFI")
Command: JTAG.MemorySize
20. Parameters: Integer
Description: Sets the size of the memory (in bytes) of the dynamic memory
Examples: JTAG.MemorySize(0x800000)
Command: JTAG.MemoryInit
Parameters: None
Description:
Will initialize and connect the FlashcatUSB interface to the memory
interface. You may need to specify address and size prior to calling this
function. If successful, the GUI will add the "Memory" tab. This command
also returns the unique index of the created device.
Examples: MemIndex = JTAG.MemoryInit()
Command: JTAG.FlashInit
Parameters: None
Description:
Will connect to the CFI compliant flash on the memory controller to allow
for reading and writing. This will create the "Flash" tab on the GUI. Must set
FlashBase prior.
Examples: JTAG.FlashInit()
Command: JTAG.FlashFind
Parameters: None
Description: Will scan the entire memory address range for a CFI compatible flash.
Examples: JTAG.FlashFind()
Command: JTAG.BigEndian
Parameters: None
Description: Sets the endian for the JTAG memory devices to big.
Examples: JTAG.BigEndian()
Command: JTAG.LittleEndian
Parameters: None
Description: Sets the endian for the JTAG memory devices to little.
Examples: JTAG.LittleEndian()
Command: JTAG.Debug
Parameters: Bool (true or flase)
Description:
Writes the JTAG data register with the standard flag to put the target device
into debug mode: (PRACC|PROBEN|SETDEV|JTAGBRK)
Examples: JTAG.Debug(true) #Will send the JTAG debug command
21. Command: JTAG.Reset
Syntax:
Description:
Writes the JTAG data register with the standard flag to issue a processor
reset. This command can have different results depending on the particular
processor part: (PRRST|PERRST)
Examples: JTAG.Reset #Will send a JTAG reset command
Command: JTAG.EnableVCC
Parameters: Bool (true or flase)
Description:
Enables the JTAG VCC pin to output voltage. This can be either 5v or 3.3v
depending on the board jumper. This pin can provide up to 100ma of power
and can be suitable for operating most memory devices, although not enough
to power an entire target board.
Examples: JTAG.EnableVCC(true) #Will make the VCC pin output power
Command: JTAG.RunSVF
Parameters: Data (byte array)
Description:
This command will run a “Serial Vactor Format” file and process and write
all of the commands to a connected JTAG device. This can be use to program
Xilinx CPLDs for example.
Examples: JTAG.RunSVF(DataVar) #Runs a *.SVF file
Command: JTAG.RunXSVF
Parameters: Data (byte array)
Description:
This command will run a compact (binary) “Serial Vactor Format” file and
process and write all of the commands to a connected JTAG device. This can
be use to program Xilinx CPLDs for example.
Examples: JTAG.RunXSVF(DataVar) #Runs a *.XSVF file
Command: Memory.Write
Parameters: Data, Integer, Optional Integer
Syntax: Data object to write, flash address offset, optional length
Description:
Writes a data variable to the flash device. Works for both CFI and SPI flash
devices, but please note you must have already initiated the flash.
Examples: Memory.Write(dataVar,0,256) #Writes
Command: Memory.Read
Parameters: Integer, Integer, Optional Bool
Returns: Data
Description: Reads data from the flash device. Works for both CFI and SPI type flash
22. devices, but please note you must have already initiated the flash.
Examples: dataVar = Memory.Read(0,512) #Reads 512 bytes
Command: Memory.ReadString
Parameters: Integer
Returns: String
Description:
Reads a string from the location specified on the flash device. Returns
nothing if error or string not found.
Examples: dataStr = Memory.ReadString(0x5000)
Command: Memory.ReadVerify
Parameters: Integer, Integer
Returns: Data
Description:
Similar to ReadFlash(), this function actually does it twice and compares the
result, and if needed verifies all data to ensure that the data read is 100%
accurate. Returns nothing if verification failed. This function is preferred over
ReadFlash where the integrity of the data is vital.
Examples: dataVar = Memory.ReadVerify(0,512) #Reads 512 bytes
Command: Memory.GetSectorCount
Returns: Integer
Description: Erases the specified flash sector
Examples: sectors = Memory.GetSectorCount()
Command: Memory.EraseSector
Parameters: Integer
Returns: Nothing
Description: Erases the specified flash sector
Examples: Memory.EraseSector(0)
Command: Memory.EraseSection
Parameters: Integer, Integer
Returns: Nothing
Description:
Erases a section of the flash memory, starting at the address (the first
parameter), and the number of bytes (second parameter).
Examples: Memory.EraseSector(0x10000,0x8000)
Command: Memory.EraseBulk
Parameters: None
Returns: Nothing
23. Description: Erases the entire flash memory
Examples: Memory.EraseBulk()
Command: Memory.GetSectorSize
Parameters: Integer
Returns: Integer
Description: Returns the size
Examples: dataInt = Memory.GetSectorSize(0)
Command: Memory.Backup
Parameters: None
Description:
Previously known as "Dump", this reads all the data from flash (twice) and
then prompts the user to save the file to disk. Usefully for making a flash
backup that has data integrity.
Examples: Memory.Backup()
Command: Memory.Exist
Parameters: None
Returns: Bool
Description: Returns true if a memory device at a given index has been created.
Examples: Memory(2).Exist()
Command: Memory.WriteWord
Parameters: Integer, Integer
Description: Writes an integer (all 32 bits) to a specific address on the memory device.
Examples: Memory(2).WriteWord(0x80010000,0x32)
Command: SPI.Fosc
Parameters: Integer
Description:
Used to set the hardware SPI clock divider. The SPI speed is the system clock
(16 MHz) divided by the Fosc value.
Supported values: 2, 4, 8, 16, 32, 64, 128
Examples: SPI.Fosc(4)
Command: SPI.Order
Parameters: String
Description:
Used to set the bit order for all SPI commands. For most significant bit, use
"MSB" for least significant bit use "LSB".
Examples: SPI.Order("MSB")
24. Command: SPI.Mode
Parameters: Integer
Description: Used to set the SPI device mode. Supported modes 0, 1, 2, 3.
Examples: SPI.Mode(0)
Command: SPI.Swap
Parameters: Bool
Description:
Used to reverse the bit order of bytes of the data being written or read to the
flash. For example, if your flash uses MSB, but your microprocessor is LSB
and reads the data off of the SPI flash, you can use this command to
conveniently swap the bits.
Examples: SPI.Swap(true)
Command: OpenFile
Parameters: String, String (optional)
Returns: Data
Description:
Prompts the user for a file and then reads the file from disk and returns a data
variable. First parameter is the title of the window and the optional second is
the standard file filter to use.
Examples: MyData = OpenFile("Choose file", "Firmware files (*.bin)|*.bin")
Command: SaveFile
Parameters: Data, String, String (optional)
Syntax: Data variable to write, title prompt, default save name
Description: Prompts the user to save a data variable to the hard drive.
Examples: SaveFile(MyData,"Where to save?","fileread.bin")
Command: hex
Parameters: Integer
Returns: String
Description: Converts a integer value or variable into a hex string
Examples: hex(255) #ouputs "0xFF"
Command: resize
Parameters: Data, Integer, Integer (optional)
Description:
Resizes a byte array (usually in a variable), starting at the first parameter. The
optional parameter can be used to specify how many to copy.
Examples: resize(datavar,2) #removes the first two bytes
Command: Len
25. Parameters: String, Integer or Data
Returns: Integer
Description:
Returns the length of a string , the number of bytes in a data object or the
number of bytes to hold a integer.
Examples: len("hello") #returns 5
dataVar = 0x1F;0x2F;0x2F;0xFF;0x2A;0x50
len(dataVar) #returns 6
len(302) #returns 2
Command: Byte
Parameters: Data, Integer
Returns: Integer
Description: Returns the value of the byte located in a data array.
Examples: dataVar = 0x1F;0x3F;0x2F;0xFF;0x2A;0x50
word(dataVar,2) #Returns 47
Command: Word
Parameters: Data, Integer
Returns: Integer
Description: Returns the value of the four bytes located in a data array.
Examples: dataVar = 0x1F;0x3F;0x2F;0xFF;0x2A;0x50
word(dataVar,2) #Returns 805251664
Command: HWord
Parameters: Data, Integer
Returns: Integer
Description: Returns the value of the two bytes located in a data array.
Examples: dataVar = 0x1F;0x3F;0x2F;0xFF;0x2A;0x50
hword(dataVar,2) #Returns 12287
Command: value
Parameters: String
Returns: String
Description: Returns the text value of a Tab object, such as a textbox you have created.
Examples: strVar = value(MYINPUTBOX)
Command: ToInteger
Parameters: String
Returns: Integer
Description: Converts a integer stored in a string as a integer.
26. Examples: ToInteger("234") #Returns 234
Command: sigmakey
Parameters: None
Returns: String
Description:
Returns the SIGMA key of a given device. Only compatible in JTAG mode.
Also prints the key to the console.
Examples: strVar = sigmakey()
Command: copy
Parameters: Data, Data
Returns: Data
Description: Copies two data variables and returns them as a new combined data variable.
Examples: dataVar = copy(data1,data2) #equals data1+data2