nx_embedded_tools is a toolsuite written in python3 that allow user to control the NGUltra chip.
At this time, the following peripheral are supported:
Peripheral |
Feature |
---|---|
Flash |
|
eRAM |
|
BSM |
|
VTSENS |
|
Memories |
|
Reset manager |
|
Clock Generator |
|
Multicore |
Start any core |
It also provides a bunch of helper:
Helpers |
Function |
---|---|
Any BL1 |
|
Generic BL1 |
|
SpaceWire BL1 |
|
bsp_demo |
|
Initialize |
|
Reboot |
Remote electrical reboot via smart plug |
Devkit control |
nx_embedded_tools relies on two JTAG tools (only one is required):
-
Lauterbach Trace32;
-
openocd (provided as external package).
Setup instructions could be found here.
openocd could be used to debug program using GDB.
Contents:
-
Environment setup:
- Minimal python version
- Openocd
- Lauterbach
- Switching between Lauterbach and openocd
- Additionnal configuration
- Board connection:
- Board configuration (Bring-up only):
- Start OpenOCD
- OpenOCD errors
- OpenOCD and EL1 execution
- Multiple ELF file load with OpenOCD when instruction cache is activated
- Using Angie probe may be very slow
-
Using scripts
- Using ngultra_init.py
- Using ngultra_flash_programmer.py
- Using ngultra_memory_programmer.py
- Using ngultra_software_reboot.py
- Using signer.py
- Using ngultra_bsm_loader.py
- Flash BL1
- Using ngultra_read_sensor.py
- SpaceWire BL1 (Boot Loader level 1)
- Clock generator configuration Guide:
- GPIO extender configuration Guide:
- I2C Library Guide
- Devkit jumpers configuration Guide:
- Using ngultra_eram_scrubber.py
- Using GDB
-
libnxembeddedtools
-
libnxembeddedtools package
-
Subpackages
- libnxembeddedtools.hw package
-
libnxembeddedtools.ngultra package
- Submodules
- libnxembeddedtools.ngultra.address module
- libnxembeddedtools.ngultra.bl1 module
- libnxembeddedtools.ngultra.bsm module
- libnxembeddedtools.ngultra.fastcommands module
- libnxembeddedtools.ngultra.flash module
- libnxembeddedtools.ngultra.memory module
- libnxembeddedtools.ngultra.reset module
- Module contents
- libnxembeddedtools.remoteapi package
- libnxembeddedtools.tools package
- libnxembeddedtools.ul_dv package
- Module contents
-
Subpackages
-
libnxembeddedtools package