readme update

stable
Penguin 3 years ago
parent b04fc235c3
commit 0bb9212d6f

@ -1,10 +1,11 @@
# ePenguin Software Framework # ePenguin Software Framework
Warning: This only works for x86\_64 linux machines atm. Windows development is in progress. I have no idea how to go about testing for mac so... yeah. ## Overview
This only works for x86\_64 linux machines atm. Windows development is in progress. I have no idea how to go about testing for mac so... yeah.
As of right now, only the *new* command works. Everything else is not implemented yet. However, *new* does most of the heavy lifting so the other commands will come quickly once it is finished and polished. As of right now, only the *new* command works. Everything else is not implemented yet. However, *new* does most of the heavy lifting so the other commands will come quickly once it is finished and polished.
### Prerequisites ## Prerequisites
You need the following things installed for igloo+eSF to work properly: You need the following things installed for igloo+eSF to work properly:
- openocd - openocd
@ -13,36 +14,49 @@ You need the following things installed for igloo+eSF to work properly:
In the future, these things will just be bundled with eSF. The problem with some toolchains is dependency matching for various distros. In the future, these things will just be bundled with eSF. The problem with some toolchains is dependency matching for various distros.
#### Toolchains **Update on Toolchains**: The toolchains were a pain to maintain, and still are. That's why for the time being, the toolchains will not be bundled with esf. It is a goal to get the toolchains bundled with esf, but development of the esf libraries are most important right now.
### Toolchains
Loose naming convention for toolchains: Loose naming convention for toolchains:
<arch>-<vendor>-<target os>-<host os>-<abi> <arch>-<vendor>-<target os>-<host os>-<abi>
- arm-none-eabi: - arm-none-eabi:
- Toolchain targetting the embedded ABI for arm - Toolchain targetting the embedded ABI for arm
- Debian/Ubuntu: - Debian/Ubuntu:
``` ```
sudo apt-get install gcc-arm-none-eabi binutils-arm-none-eabi gdb-arm-none-eabi sudo apt-get install gcc-arm-none-eabi binutils-arm-none-eabi gdb-arm-none-eabi
``` ```
- **NOTE:** If you run into an issue when running arm-none-eabi-gdb where it needs libncurses.so.5 on Ubuntu/Debian, install this package:
```
sudo apt-get install libncurses5
```
- Arch
```
sudo pacman -S arm-none-eabi-binutils arm-none-eabi-gcc arm-none-eabi-gdb arm-none-eabi-newlib
```
- Gentoo:
- See this wiki [here](https://wiki.gentoo.org/wiki/How_to_build_a_toolchain_for_arm_cortex-m_and_cortex-r).
- Arch - avr-\*
``` - Ubuntu/Debian: (To be added)
sudo pacman -S arm-none-eabi-binutils arm-none-eabi-gcc arm-none-eabi-gdb arm-none-eabi-newlib
```
**NOTE:** If you run into an issue when running arm-none-eabi-gdb where it needs libncurses.so.5 on Ubuntu/Debian, install this package: - Arch:
``` ```
sudo apt-get install libncurses5 sudo pacman -S avr-binutils avr-gcc avr-gdb avr-libc avrdude
``` ```
- Gentoo:
- Install via [crossdev](https://wiki.gentoo.org/wiki/Crossdev):
```
crossdev -s4 --stable --portage --verbose --target avr
```
- avr-*
```
Debian:
(To be added)
Arch:
sudo pacman -S avr-binutils avr-gcc avr-gdb avr-libc avrdude
```
#### OpenOCD #### OpenOCD
@ -151,16 +165,16 @@ openocd -f same54.cfg
Now in another terminal: Now in another terminal:
``` ```
cd <project_dir>/target/same54p20a/ cd <project_dir>/igloo/targets/same54p20a/
make make
${ESF_DIR}/toolchains/arm/bin/arm-none-eabi-gdb -iex "target extended-remote localhost:3333" testdir.elf arm-none-eabi-gdb -iex "target extended-remote localhost:3333" testdir.elf
load load
monitor reset monitor reset
``` ```
If you're using gdb with python extensions then use this instead If you're using gdb with python extensions then use this instead
``` ```
${ESF_DIR}/toolchains/arm/bin/arm-none-eabi-gdb-py -iex "target extended-remote localhost:3333" testdir.elf arm-none-eabi-gdb -iex "target extended-remote localhost:3333" testdir.elf
``` ```
### Supported Targets ### Supported Targets
@ -176,48 +190,14 @@ The framework allows me to add support for mcus pretty rapidly. I can add entire
#### ARM32 #### ARM32
| MCU | Status | | MCU Series | Status |
|:------------|--------------:| |:------------|--------------:|
| samd21e15a | :question: | | SAMD21A | :question: |
| samd21e16a | :question: | | SAME54A | :question: |
| samd21e17a | :question: | | SAME70A |
| samd21e18a | :question: |
| samd21g15a | :question: | #### AVR
| samd21g16a | :question: |
| samd21g17a | :question: | | MCU Series | Status |
| samd21g17au | :question: | | XMEGAA | :exclamation: |
| samd21g18a | :question: | | MEGA | :exclamation: |
| samd21g18au | :question: |
| samd21j15a | :question: |
| samd21j16a | :question: |
| samd21j17a | :question: |
| samd21j18a | :question: |
| samd51g18a | :grey_question: |
| samd51g19a | :grey_question: |
| samd51j18a | :grey_question: |
| samd51j19a | :grey_question: |
| samd51j20a | :grey_question: |
| samd51n19a | :grey_question: |
| samd51n20a | :grey_question: |
| samd51p19a | :grey_question: |
| samd51p20a | :grey_question: |
| same54n19a | :question: |
| same54n20a | :question: |
| same54p19a | :question: |
| same54p20a | :question: |
| same70j19a | :exclamation: |
| same70j20a | :exclamation: |
| same70j21a | :exclamation: |
| same70n19a | :exclamation: |
| same70n20a | :exclamation: |
| same70n21a | :exclamation: |
| same70q19a | :exclamation: |
| same70q20a | :exclamation: |
| same70q21a | :exclamation: |
#### RISC-V
| MCU | Status |
|:----------|--------------:|
| fe310g000 | :exclamation: |
| fe310g002 | :exclamation: |

Loading…
Cancel
Save