USMI

Объявление

12/06/2025 (Administration) - Spamming for the purpose of boosting messages will be punished with a ban. Спам с целью накрутки сообщений будет караться баном.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » USMI » MCU, SoC, CPU Микроконтроллеры » Перевод JL чипов в uboot режим с помощью ардуино


Перевод JL чипов в uboot режим с помощью ардуино

Сообщений 101 страница 109 из 109

101

dawid90u написал(а):

I'm experimenting with timings in the Arduino code. Perhaps something is happening too fast or too slow and the chip is incorrectly entering bootloader mode.

1. Please read post #1.
2. In your case, you don't need an Arduino.

102

dawid90u написал(а):

Thank you for your reply.

Read my reply again :)

103

BIOS написал(а):

U need connect power to chip in same time when u sent signals to USB.

Yes, I know. When I connect power to the chip, the signal is already sent to pins D+ and D-. I'm sending 0x16EF sequences every few microseconds.
https://upforme.ru/uploads/001b/ca/8a/359/t856001.png
After connecting the power, the LED does not flash.
Next I disconnect the cables from D+ and D- and connect the USB to the computer.
And I get the message about the descriptor "Unknown USB device (device descriptor request failed)”.

104

amateur написал(а):

2. In your case, you don't need an Arduino.

What do you mean I don't need an Arduino?

105

dawid90u написал(а):

What do you mean I don't need an Arduino?

JL SoC. 杰理芯片

106

amateur
Thank you very much for your help. I actually managed to get the chip into UBOOT mode without Arduino.

I made backup of the original firmware.
Then I flashed firmware V1.4 (I got the firmware here on the forum).

Unfortunately, the firmware doesn't work. The LED doesn't flash and it doesn't show up in Windows Device Manager.
The keys probably don't match and that's why this effect occurs.
Using Arduino, I managed to put the chip back into UBOOT mode and restore the original firmware - the module started working.

I've seen that there are ways to recrypt the key [Recrypt tool for JL chip key]. But will this help me with the AC6956?

Alternatively, there is the option of rebuilding the firmware using the SDK... But there may still be a problem with the key.

107

You need to recrypt the new firmware with your chipkey.
I haven't done anything like this before, but I think it works like this:
Download https://github.com/kagaimiq/jl-misctool … n/firmware
Unpack the new firmware
fwunpack_newfw.py kcx/kcx.dump

You will then see something like this:

Код:
#
# kcx\kcx.dump
#

Firmware base is at @1000
  Burner size....: 544
  VID............: b'0.01'
  Flash size.....: $0FF000
  FS version.....: 2
  Block alignment: 16
  Special option.: $FF
  PID............: b'AC695N_soundbox\xff'
(top) <JLFS Entry @00001020 - EDBC @000000A0/000010A0 (      8168/      8168) - 00/00 / 0 -- "uboot.boot">
(top) <JLFS Entry @00001040 - BBB0 @00002088/00003088 (       133/       133) - 02/FF / 0 -- "isd_config.ini">
Firmware chipkey from isd_config.ini: 2133
(top) <JLFS Entry @00001060 - 00FF @00003000/00004000 (4294967295/4294967295) - 81/FF / 0 -- "app_dir_head">
(top) <JLFS Entry @00001080 - FFFF @000FF000/00100000 (      4096/      4096) - 12/01 / 65535 -- "key_mac">
Using chipkey: $2133
(App Area Head) <JLFS Entry @00004000 - CE9C @01E00100/00004020 (    764564/    764532) - 83/FF / 0 -- "app_area_head">
Entry point address: 0x1E00100
(App) <JLFS Entry @00004020 - 5250 @00000100/00004100 (    764308/    764308) - 82/FF / 0 -- "app.bin">
(App) <JLFS Entry @00004040 - FF01 @000C3000/000C7000 (    237568/    237568) - 12/80 / 0 -- "VM">
(App) <JLFS Entry @00004060 - FFFF @00001000/00005000 (    794624/    794624) - 92/80 / 0 -- "PRCT">
(App) <JLFS Entry @00004080 - FFFF @000FE000/00102000 (      4096/      4096) - 92/80 / 1 -- "BTIF">
(Res) <JLFS Entry @000BEA94 - 0F84 @00000020/000BEAB4 (     12224/     12192) - 83/FF / 0 -- "tone">
====> <JLFS Entry @000BEAB4 - A16F @00000060/000BEAF4 (        27/        27) - 82/FF / 0 -- "index.idx">
====> <JLFS Entry @000BEAD4 - DB19 @00000080/000BEB14 (     12096/     12096) - 82/FF / 1 -- "mute.mp3">
(Res) <JLFS Entry @000C1A54 - 24E8 @00000020/000C1A74 (       921/       889) - 82/FF / 0 -- "cfg_tool.bin">
(Res) <JLFS Entry @000C1DED - B5EA @00000020/000C1E0D (      1181/      1149) - 82/FF / 1 -- "eq_cfg_hw.bin">

Then, identify the start and end addresses.

offset(app_dir_head) + size(app_area_head) + size(tone) + size(cfg_tool.bin) + size(eq_cfg_hw.bin)

0x4000 + 764564 + 12224 + 921 + 1181 = 0xC228A

Run:

recrypt.py kcx/kcx_key0x2133.dump kcx/cx_key0xXXXX.dump 0x2133 0xXXXX 0x4000 0xC228A

0xXXXX = chipkey from your chip

Отредактировано amateur (Вчера 16:44:17)

108

amateur
Success!
After uploading the new firmware with my key, the module started in version 1.4.
Thanks you very much!

While searching for information on the forum, I saw posts where people were compiling their own firmware versions. I'm wondering if there's an example of a BT transmitter available somewhere that will work immediately after being uploaded to the chip. I could then customize it. For example, change the functions of the button on the module.

I even have the ac695n_soundbox_sdk and Code::Blocks installed. The compilation went through without any problems.

109

dawid90u написал(а):

I even have the ac695n_soundbox_sdk

Look for "board_ac695x_btemitter". However, you have to configure it for your board yourself. And no AT commands are implemented.


Вы здесь » USMI » MCU, SoC, CPU Микроконтроллеры » Перевод JL чипов в uboot режим с помощью ардуино