I am working on the ATMEL ATtiny1616 micro-controller.
I am looking for a (Linux C/Phython based) serial bootloader application to program the ATtiny1616.
Will you please help me to know, Where I can get the source code for it?
I'm going to use pyupdi for these new tinies (ATtiny814 which has the same programming protocol).
For now, pyupdi
Can read/write fuses
Can write FLASH
Can not read/verify FLASH
Can not read/write EEPROM
UPDI is another way to program the ATtiny1616. But as I said, I would like to program the ATtiny1616 using the Serial Bootloader Application.
I have found a reference link on the site of the microchip. Serial Bootloader Application
& this application will work for me.
Related
Problem
I'm looking for a way to flash an ESP32 module's memory without installing the whole IDF software suite.
Why
Because I want to integrate ESP32 onto a custom board along with a low-performance ARM-powered CPU which runs a tiny Linux distro (based on Debian), and I want to flash ESP32 from this tiny Linux distro.
I know I could use the bootloader, but who will upload the initial bootloader? I don't want to do extra steps, so my idea is to embed the ESP32 module onto my custom board, and let the Linux to flash it from factory-state (when it's flash is empty, ie. no preloaded bootloader). Or is the serial bootloader always preinstalled on all ESP32 modules (like on ESP-WROOM-32)?
Why I don't want to use IDF? Because I don't want to build or debug anything, I just want to flash myprogram.bin onto ESP32. Also, as the board is low-performance, it would take ages to download everything for running IDF.
Current state
The ESP32 module is now visible via UART (RX,TX,GND), and if I held low the GPIO0, it runs the bootloader (my current module is embedded onto a NodeMCU - but there is no USB connected, this is raw UART!):
rst:0x1 (POWERON_RESET),boot:0x3 (DOWNLOAD_BOOT(UART0/UART1/SDIO_REI_REO_V2))
waiting for download
Could I expect the same behavior (controlling GPIO0 for running the bootloader) for all ESP32 modules, or this works just because guys at NodeMCU preprogrammed already some bootloader onto it?
I'm looking for a way to flash this ESP32 preferrably without any python script.
The ESP32 has a first-stage bootloader in ROM capable of writing to Flash - that's what's printing your output. You can talk to it if you know the protocol - this is implemented by the Python scripts in ESP IDF. If you don't want to use the official implementation because it's too heavy, you'll have to write your own implementation of this protocol which scratches your specific itch. Fortunately it's more or less documented and you can likely reverse engineer any missing knowledge from official Python scripts.
Actually Espressif also provides a nice and small binary for flashing ESPs:
https://github.com/espressif/esp-serial-flasher
Serial flasher component provides portable library for flashing Espressif SoCs (ESP32, ESP32-S2, ESP8266) from other host microcontroller. Espressif SoCs are normally programmed via serial interface (UART). Port layer for given host microcontroller has to be implemented, if not available.
One more (but very important) addition:
You have to modify this repo to make it work correctly, and also you might have to upload not just your binary, but also bootloader and partition_table.
I am working on a project with SAMA5D3-xplained board with CortexA5 processor and embedded Linux. I would like to send and receive some data via UART during U-Boot is running and before a kernel is loaded to the RAM. I have no idea what I should do. Should I add the second UART to U-Boot device tree source file? Should I change something in a board configuration file? Do you have any ideas on what steps I should take to achieve my goal? Thank you in advance for any help.
EDIT
I would like to use UART from U-Boot C code, not from U-Boot commands. I need to communicate with one of a peripheral device before the kernel is loaded to the RAM.
I assume that you are using the upstream U-Boot from https://source.denx.de/u-boot/u-boot.git.
The device-tree arch/arm/dts/at91-sama5d3_xplained.dts already contains the definitions for six different uarts called serial0 - serial5. serial0 is set in the /chosen node as the standard serial connection. You should be able to see all six devices with the 'dm tree' command.
The currently used UART can be switched by setting the stdin and stdout environment variables.
If you do not want to switch these variables, because you still want output on the default UART you will have to access the device driver. Unfortunately drivers/serial/serial-uclass.c does not yet export functions for this. But _serial_putc(), __serial_getc(), and __serial_tstc() should give you an idea how this is done.
I'm new to the micro-controllers, Can anyone tell me how to flash msc1211? And is it possible to program msc1211 from host pc via usb to serial data converter like TUSB3410?
links
MSC1211: http://www.ti.com/lit/ds/symlink/msc1214y5.pdf
TUSB3410: http://www.ti.com/lit/ds/symlink/tusb3410.pdf
Yes, you can flash it via Serial but for that you need to build "In-System Programmer".
MSC1211 is 8051 based microcontroller and it behaves similarly. This link can help you in designing the circuit.
With this cicuit, you can download your hex file to MSC1211.
Good evening ..
I'm new in the microcontroller ..
I have studied a course on "pic 16" and As I knew the pic16 needs an external device to burn hex file in rom .
Now I want to study the pic24 And I found something called usb in pic24 ..
Can I burn the hex file without an external device via a usb ?? Or this is another term has not related to burning hex file ??
Is there a way to burn the file without an additional device ??
And also in the pic32 Are there any types of it can be directly connected without the use kit3 ??
I do not want to buy kit3 :\
Is the kit3 can Programming all kinds pic microcontroller (16,24,32) ??
Sorry for extension
and Thank you very much
The PIC32 starter kits have a debugger/programmer built in. Otherwise there is no way.
Yes, you can burn a hex file without an external device via USB. The term to look for is “Bootloader”. Many Microchip devices can allocate and protect a section of memory for bootload firmware providing the means to self-program.
If you’re buying a demo board with a bootloader pre-installed (and as long as you don’t over-write the bootloader) you can upload hexfiles and run them without an external programmer. But if you build your own board you’ll need a programmer at least once to load the bootload code.
And yes, the PICkit 3 can be used to program a wide variety of Microchip devices. The document Device Support.htm in the release notes of MPLAB X has a matrix of devices and programmers.
unfortunately i've never used pic24 family, but if you're going to try pic32 try to take a look here:
pic32-avrdude-bootloader
It works with avrdude, the same bootloader used by Arduino boards and it's not much hard to use properly. I don't know if there's a way to use also serial monitor via usb, but if you debug with mplabx you don't need it
Ciao!
I am planning to develop ethernet bootloader. So I wanted to modify the existing DFU Bootloader program. I want to delete the already existing bootloader on micro-controller flash and put my own bootloader.
Currently my MCU is AT32UC3A0512. I am using AVR Dragon and AVR One debugger/programmer. Is it possible to reprogram the bootloader region with AVR Dragon or AVR One? or I must need to have MKII debugger?
It is absolutely possible to reprogram the boot loader with AVR One and I would guess that
the AVR Dragon works too (if you can use it to program the AVR32s generally).
The boot loader (if present) resides in the beginning of internal flash and is written as any other bit of code.