profile
viewpoint

DavidTheFighter/ShellTapingMachine 2

An arduino project that runs a homemade Chinese-style shell taping machine for fireworks.

DavidTheFighter/archimedes-ecu 1

Engine Controller Unit for the amateur Archimedes Engine

DavidTheFighter/StarlightEngine 1

The main repository, code base, and issue tracker for the Starlight Engine.

DavidTheFighter/imxrt-rs 0

Rust for NXP i.MX RT

DavidTheFighter/ShellTapingSimulator 0

A program that simulates the taping of a fireworks shell to determine layer thickness and uniformity.

DavidTheFighter/teensy4-canfd 0

A FlexCAN3/CANFD library for the Teensy 4 written in Rust

startedMoyTW/roguebasin_rpas

started time in 2 days

create barnchmciantyre/teensy4-rs

branch : panic-crate

created branch time in 2 days

push eventmciantyre/teensy4-rs

bors[bot]

commit sha d57827e5812dffdee938828f16ac94f184724762

deploy: c1cddef6df0d983af763d84ba5a7a2903e4c52f7

view details

push time in 2 days

delete branch mciantyre/teensy4-rs

delete branch : usb-logging

delete time in 2 days

PR merged mciantyre/teensy4-rs

Add docs, tests, around USB log filtering; add CHANGELOG

The PR stresses that the USB logging example is using a log filter, and that it may not as-is for your work. There's some small refactoring within the USB logging module to support testing, and simplify filter definitions.

Additionally,

  • update the build to support cross-platform unit testing
  • add a CHANGELOG
+171 -29

4 comments

6 changed files

mciantyre

pr closed time in 2 days

push eventmciantyre/teensy4-rs

Ian McIntyre

commit sha 008ea60a1f98a3c9dcf7aec2a0bbb6588efe2c23

Refactor filters from the logger The filters module comes from the imxrt_uart_log module, which took the original implementation from the Teensy 4 BSP. TODO enable unit tests

view details

Ian McIntyre

commit sha 66b792a198b28b72688509fc99c320682132102e

Document split, and reader / writer halves

view details

Ian McIntyre

commit sha af9058a9710725798a46018e67b1c5f747c97a9a

Identify the logging filter in the USB examples See #85 for more details.

view details

Ian McIntyre

commit sha 980ba6bc9ef752ef4003375f0b3fb3f9e9d488a5

Only link t4usb when compiling for ARM This should let us build and run BSP unit tests on Linux.

view details

Ian McIntyre

commit sha 69f90379c61bee472e8c48c3f445dcb954eee704

Add changelog

view details

bors[bot]

commit sha c1cddef6df0d983af763d84ba5a7a2903e4c52f7

Merge #87 87: Add docs, tests, around USB log filtering; add CHANGELOG r=mciantyre a=mciantyre The PR stresses that the USB logging example is using a log filter, and that it may not as-is for your work. There's some small refactoring within the USB logging module to support testing, and simplify filter definitions. Additionally, - update the build to support cross-platform unit testing - add a CHANGELOG Co-authored-by: Ian McIntyre <ianpmcintyre@gmail.com>

view details

push time in 2 days

push eventmciantyre/teensy4-rs

Ian McIntyre

commit sha 5dd9829a4c590e1f0d73ee369fca96fe0400fcf9

Split make all job

view details

Ian McIntyre

commit sha a5fd3e8ee9413527ce635f87b35b0bd65f3c022c

Update README with versions

view details

Ian McIntyre

commit sha 927c7537e399e2adef16f1f552c4955c509e3d30

Target the template's CI branch for BSP CI

view details

Ian McIntyre

commit sha 71e860d9f0ef2ab3281bc88f4e6fe8048238339e

Remove HAL patching; bump HAL version We released SRTC support in imxrt-hal 0.4.2. The commit updates the BSP's dependencies to use that public release.

view details

Ian McIntyre

commit sha 1ccdc938c5407285cb6c5fc6d0bddf2a1a191b48

Update licenses texts

view details

Ian McIntyre

commit sha ec67fc5bdfd8b9e2927eb78fe0114d6012695cba

Write startup in assembly

view details

Ian McIntyre

commit sha a1d843596bd6094e0cfe7f5acae5dad269c22694

Update BSP inclusion manifest

view details

Ian McIntyre

commit sha 3210c490ad4eaa1a97ccb965933b4b4568c631d3

Add BSP categories, keywords to package manifest

view details

Ian McIntyre

commit sha f1e5cb8293a0b113638f268d1807f24facf11898

Copy and initialize vector table in assembly

view details

Ian McIntyre

commit sha 6cdf0f1b74db075c15c0e0f75c8c4cee90cd850e

Remove rt::nvic module There's no point in just setting irq priorities. The commit removes the nvic module, since the critical bits are now implemented in assembly.

view details

Ian McIntyre

commit sha d293dcd8e930b79e11af16875fc4491ca22cba1c

Remove unsupported 'd' section in start.s

view details

Ian McIntyre

commit sha 29e03e935b12ffe4c3798b7bd405c094e58897a2

Remove basename step in Makefile

view details

Ian McIntyre

commit sha 5a4a2fe186a11332dc76ff0531d1e1e5e6ad600f

Reformat, revise README and CONTRIBUTING Squashed commit of the following: commit 31f0614cb6e5955b579613be672dec529f1a4f32 Author: Ian McIntyre <ianpmcintyre@gmail.com> Date: Mon Nov 30 21:24:09 2020 -0500 Reformat, revise README commit becc597e8ed15d80724a779640a6c13169379db9 Author: Ian McIntyre <ianpmcintyre@gmail.com> Date: Mon Nov 30 21:15:39 2020 -0500 Revise CONTRIBUTING commit b72854b5c71178fa884abaf3b6b39c46a19c83a6 Author: Ian McIntyre <ianpmcintyre@gmail.com> Date: Mon Nov 30 20:40:54 2020 -0500 Reformat CONTRIBUTING pandoc CONTRIBUTING.md -o CONTRIBUTING.md --atx-headers --reference-links

view details

Ian McIntyre

commit sha 008ea60a1f98a3c9dcf7aec2a0bbb6588efe2c23

Refactor filters from the logger The filters module comes from the imxrt_uart_log module, which took the original implementation from the Teensy 4 BSP. TODO enable unit tests

view details

Ian McIntyre

commit sha 66b792a198b28b72688509fc99c320682132102e

Document split, and reader / writer halves

view details

Ian McIntyre

commit sha af9058a9710725798a46018e67b1c5f747c97a9a

Identify the logging filter in the USB examples See #85 for more details.

view details

Ian McIntyre

commit sha 980ba6bc9ef752ef4003375f0b3fb3f9e9d488a5

Only link t4usb when compiling for ARM This should let us build and run BSP unit tests on Linux.

view details

Ian McIntyre

commit sha 69f90379c61bee472e8c48c3f445dcb954eee704

Add changelog

view details

bors[bot]

commit sha c1cddef6df0d983af763d84ba5a7a2903e4c52f7

Merge #87 87: Add docs, tests, around USB log filtering; add CHANGELOG r=mciantyre a=mciantyre The PR stresses that the USB logging example is using a log filter, and that it may not as-is for your work. There's some small refactoring within the USB logging module to support testing, and simplify filter definitions. Additionally, - update the build to support cross-platform unit testing - add a CHANGELOG Co-authored-by: Ian McIntyre <ianpmcintyre@gmail.com>

view details

push time in 2 days

delete branch mciantyre/teensy4-rs

delete branch : staging.tmp

delete time in 2 days

push eventmciantyre/teensy4-rs

Ian McIntyre

commit sha 008ea60a1f98a3c9dcf7aec2a0bbb6588efe2c23

Refactor filters from the logger The filters module comes from the imxrt_uart_log module, which took the original implementation from the Teensy 4 BSP. TODO enable unit tests

view details

Ian McIntyre

commit sha 66b792a198b28b72688509fc99c320682132102e

Document split, and reader / writer halves

view details

Ian McIntyre

commit sha af9058a9710725798a46018e67b1c5f747c97a9a

Identify the logging filter in the USB examples See #85 for more details.

view details

Ian McIntyre

commit sha 980ba6bc9ef752ef4003375f0b3fb3f9e9d488a5

Only link t4usb when compiling for ARM This should let us build and run BSP unit tests on Linux.

view details

Ian McIntyre

commit sha 69f90379c61bee472e8c48c3f445dcb954eee704

Add changelog

view details

bors[bot]

commit sha e91778c3a73a77eff124e81eebdfcd0c7798c61c

[ci skip][skip ci][skip netlify] -bors-staging-tmp-87

view details

push time in 2 days

create barnchmciantyre/teensy4-rs

branch : staging.tmp

created branch time in 2 days

pull request commentmciantyre/teensy4-rs

Add docs, tests, around USB log filtering; add CHANGELOG

bors merge

mciantyre

comment created time in 2 days

delete branch mciantyre/teensy4-rs

delete branch : trying.tmp

delete time in 2 days

push eventmciantyre/teensy4-rs

Ian McIntyre

commit sha b1a6b5ceb54f5ed4f6b33cf0f39b9844bb076229

Update FBC docs; generate FCB README

view details

Ian McIntyre

commit sha ce7c78174b9bba04451f24cabbcce837ff5fa9e9

Update pins documentation; create pins README

view details

bors[bot]

commit sha 8f04ea9ebffea1db90321b128122436f9b18a82c

Merge #83 83: Use public cortex-m-rt crate for runtime r=mciantyre a=mciantyre The PR updates the project to use the public and widely-used `cortex-m-rt` runtime crate. We integrate the runtime directly into the BSP. The PR removes the `teensy4-rt` and the `cortex-m-rt-patch` crates, since they're no longer required. The PR closes #12. There is no need to support `cortex-m-rt-macros` anymore, since they're provided by the dependency. This PR updates all examples. After this PR lands, we should be able to release the BSP to crates.io. Co-authored-by: Ian McIntyre <ianpmcintyre@gmail.com>

view details

Ian McIntyre

commit sha 6745c63207520469e56128b361c07c43fefa8920

Add licenses to pins, fcb crates

view details

Ian McIntyre

commit sha 131e3953abcab82686a288037b19544004145cdc

Move outdated documentation into docs/old Note that the documents are unmaintained.

view details

Ian McIntyre

commit sha de69863fee5a6555eeb8f2cdc3cb8d347a251ccb

Set packaged files, FCB version, in BSP manifest

view details

Ian McIntyre

commit sha 66b71f221a5b70ca4deda7af57d4ac3b56c4ea73

Add features jobs to bors checks

view details

bors[bot]

commit sha 8409808349697c40a026b1c2987da6093bb64725

Merge #84 84: Add features jobs to bors checks r=mciantyre a=mciantyre Co-authored-by: Ian McIntyre <ianpmcintyre@gmail.com>

view details

Ian McIntyre

commit sha 5dd9829a4c590e1f0d73ee369fca96fe0400fcf9

Split make all job

view details

Ian McIntyre

commit sha a5fd3e8ee9413527ce635f87b35b0bd65f3c022c

Update README with versions

view details

Ian McIntyre

commit sha 927c7537e399e2adef16f1f552c4955c509e3d30

Target the template's CI branch for BSP CI

view details

Ian McIntyre

commit sha 71e860d9f0ef2ab3281bc88f4e6fe8048238339e

Remove HAL patching; bump HAL version We released SRTC support in imxrt-hal 0.4.2. The commit updates the BSP's dependencies to use that public release.

view details

Ian McIntyre

commit sha 1ccdc938c5407285cb6c5fc6d0bddf2a1a191b48

Update licenses texts

view details

Ian McIntyre

commit sha ec67fc5bdfd8b9e2927eb78fe0114d6012695cba

Write startup in assembly

view details

Ian McIntyre

commit sha a1d843596bd6094e0cfe7f5acae5dad269c22694

Update BSP inclusion manifest

view details

Ian McIntyre

commit sha 3210c490ad4eaa1a97ccb965933b4b4568c631d3

Add BSP categories, keywords to package manifest

view details

Ian McIntyre

commit sha f1e5cb8293a0b113638f268d1807f24facf11898

Copy and initialize vector table in assembly

view details

Ian McIntyre

commit sha 6cdf0f1b74db075c15c0e0f75c8c4cee90cd850e

Remove rt::nvic module There's no point in just setting irq priorities. The commit removes the nvic module, since the critical bits are now implemented in assembly.

view details

Ian McIntyre

commit sha d293dcd8e930b79e11af16875fc4491ca22cba1c

Remove unsupported 'd' section in start.s

view details

Ian McIntyre

commit sha 29e03e935b12ffe4c3798b7bd405c094e58897a2

Remove basename step in Makefile

view details

push time in 2 days

push eventmciantyre/teensy4-rs

Ian McIntyre

commit sha 008ea60a1f98a3c9dcf7aec2a0bbb6588efe2c23

Refactor filters from the logger The filters module comes from the imxrt_uart_log module, which took the original implementation from the Teensy 4 BSP. TODO enable unit tests

view details

Ian McIntyre

commit sha 66b792a198b28b72688509fc99c320682132102e

Document split, and reader / writer halves

view details

Ian McIntyre

commit sha af9058a9710725798a46018e67b1c5f747c97a9a

Identify the logging filter in the USB examples See #85 for more details.

view details

Ian McIntyre

commit sha 980ba6bc9ef752ef4003375f0b3fb3f9e9d488a5

Only link t4usb when compiling for ARM This should let us build and run BSP unit tests on Linux.

view details

Ian McIntyre

commit sha 69f90379c61bee472e8c48c3f445dcb954eee704

Add changelog

view details

bors[bot]

commit sha 4ca06ce6f0f8be5a5f54de98c844c839979dd071

[ci skip][skip ci][skip netlify] -bors-staging-tmp-87

view details

push time in 2 days

create barnchmciantyre/teensy4-rs

branch : trying.tmp

created branch time in 2 days

pull request commentmciantyre/teensy4-rs

Add docs, tests, around USB log filtering; add CHANGELOG

bors try

mciantyre

comment created time in 2 days

PR opened mciantyre/teensy4-rs

Add docs, tests, around USB log filtering; add CHANGELOG

The PR stress that the USB logging example is using a log filter, and that it may not as-is for your work. There's some small refactoring within the USB logging module to support testing, and simplify filter definitions.

Additionally,

  • update the build to support cross-platform unit testing
  • add a CHANGELOG
+171 -29

0 comment

6 changed files

pr created time in 2 days

push eventmciantyre/teensy4-rs

Ian McIntyre

commit sha 008ea60a1f98a3c9dcf7aec2a0bbb6588efe2c23

Refactor filters from the logger The filters module comes from the imxrt_uart_log module, which took the original implementation from the Teensy 4 BSP. TODO enable unit tests

view details

Ian McIntyre

commit sha 66b792a198b28b72688509fc99c320682132102e

Document split, and reader / writer halves

view details

Ian McIntyre

commit sha af9058a9710725798a46018e67b1c5f747c97a9a

Identify the logging filter in the USB examples See #85 for more details.

view details

Ian McIntyre

commit sha 980ba6bc9ef752ef4003375f0b3fb3f9e9d488a5

Only link t4usb when compiling for ARM This should let us build and run BSP unit tests on Linux.

view details

Ian McIntyre

commit sha 69f90379c61bee472e8c48c3f445dcb954eee704

Add changelog

view details

push time in 2 days

create barnchmciantyre/teensy4-rs

branch : usb-logging

created branch time in 3 days

issue closedmciantyre/teensy4-rs

Unable to reproduce the usb example in independant crate

Quick description of the problem

I am trying to test the usb examples on my Teensy 4.1. They are working perfectly fine when compiled from this repo as an example (led is blinking, messages are displayed in the terminal). But if I want to do the same in a new crate, messages are not displayed (but the LED is blinking).

How to reproduce

Generate a new project:

cargo generate --git https://github.com/mciantyre/teensy4-rs-template --name usbtest

Copy the usb.rs from the examples

cp teensy4-rs/examples/bsp/src/bin/usb.rs usbtest/src/main.rs

Update the Cargo.toml to match the example's one

[package]
name = "usbtest"
version = "0.1.0"
publish = false
authors = ["Ian McIntyre <ianpmcintyre@gmail.com>"]
edition = "2018"

[dependencies.teensy4-bsp]
version = "0.1"
features = ["rt", "usb-logging"]
path = "../teensy4-rs" #may be removed to use the crates.io version instead

[dependencies]
cortex-m = "0.6.2"
cortex-m-rt = "0.6.13"
embedded-hal = "0.2.4"
log = "0.4.8"
nb = "0.1.2"
panic-halt = "0.2.0"

Build

cargo objcopy --release --bin usb -- -O ihex usb.hex

and program.

How the bug can be observed

The LED is blinking every 5s as it should, but no messages are displayed on the serial over usb console. Messages can be observed when compiling directly from the examples/bsp directory.

What I tried

Since the code is identical, the problem is probably in the Cargo.toml. I tried to modify the features for the teensy4-bsp crate (adding and removing "usb-logging") but nothing changes. Looking in the source, "usb-logging" is enabled by default.

I feel I am missing something obvious, but what ?

closed time in 4 days

Artefaritaj

issue commentmciantyre/teensy4-rs

Unable to reproduce the usb example in independant crate

Thank you ! It works perfectly as described. May I suggest to add a comment in the usb example :

filters: &[("usb", None)], // "usb" to denote that we are keeping only messages originating from the "usb" crate/binary.
Artefaritaj

comment created time in 4 days

delete branch mciantyre/teensy4-rs

delete branch : docs

delete time in 5 days

push eventmciantyre/teensy4-rs

Ian McIntyre

commit sha 5a4a2fe186a11332dc76ff0531d1e1e5e6ad600f

Reformat, revise README and CONTRIBUTING Squashed commit of the following: commit 31f0614cb6e5955b579613be672dec529f1a4f32 Author: Ian McIntyre <ianpmcintyre@gmail.com> Date: Mon Nov 30 21:24:09 2020 -0500 Reformat, revise README commit becc597e8ed15d80724a779640a6c13169379db9 Author: Ian McIntyre <ianpmcintyre@gmail.com> Date: Mon Nov 30 21:15:39 2020 -0500 Revise CONTRIBUTING commit b72854b5c71178fa884abaf3b6b39c46a19c83a6 Author: Ian McIntyre <ianpmcintyre@gmail.com> Date: Mon Nov 30 20:40:54 2020 -0500 Reformat CONTRIBUTING pandoc CONTRIBUTING.md -o CONTRIBUTING.md --atx-headers --reference-links

view details

push time in 5 days

create barnchmciantyre/teensy4-rs

branch : docs

created branch time in 5 days

issue openedmciantyre/teensy4-rs

Teensy 4.1: extra flash, optional external RAM not addressable

The teensy4-bsp supports both Teensy 4.0 and 4.1 boards. We achieve this with a single linker script. However, the common support means that we are not using the Teensy 4.1's

  • larger flash
  • (optional) external RAM
  • (optional) extra flash

Users who need more than ~2MB flash for their Teensy 4.1 programs, or who want to use the pads for extra RAM and flash, may find that today's BSP doesn't support these features.

This issue tracks support for extra storage on the Teensy 4.1.

created time in 5 days

issue commentmciantyre/teensy4-rs

Unable to reproduce the usb example in independant crate

Reproduced the issue following your steps. Thanks for the great report!

Could you remove this line from the LoggingConfig struct, and see if that helps?

https://github.com/mciantyre/teensy4-rs/blob/29e03e935b12ffe4c3798b7bd405c094e58897a2/examples/bsp/src/bin/usb.rs#L25

That usb example will only show log messages that are emitted from the "usb" module. Since we've changed the name of our program from "usb" to "usbtest," our module name doesn't match the logging filter. That's why we don't see any output.

After removing that line, you should see the log messages from the program. Before the main loop, you may also see debug-level log messages that have to do with clock configuration in the HAL. To filter those out, add a filter with the name "usbtest".

Artefaritaj

comment created time in 5 days

issue openedmciantyre/teensy4-rs

Unable to reproduce the usb example in independant crate

Quick description of the problem

I am trying to test the usb examples on my Teensy 4.1. They are working perfectly fine when compiled from this repo as an example (led is blinking, messages are displayed in the terminal). But if I want to do the same in a new crate, messages are not displayed (but the LED is blinking).

How to reproduce

Generate a new project:

cargo generate --git https://github.com/mciantyre/teensy4-rs-template --name usbtest

Copy the usb.rs from the examples

cp teensy4-rs/examples/bsp/src/bin/usb.rs usbtest/src/main.rs

Update the Cargo.toml to match the example's one

[package]
name = "bsp"
version = "0.1.0"
publish = false
authors = ["Ian McIntyre <ianpmcintyre@gmail.com>"]
edition = "2018"

[dependencies.teensy4-bsp]
version = "0.1"
features = ["rt", "usb-logging"]
path = "../teensy4-rs" #may be removed to use the crates.io version instead

[dependencies]
cortex-m = "0.6.2"
cortex-m-rt = "0.6.13"
embedded-hal = "0.2.4"
log = "0.4.8"
nb = "0.1.2"
panic-halt = "0.2.0"

Build

cargo objcopy --release --bin usb -- -O ihex usb.hex

and program.

How the bug can be observed

The LED is blinking every 5s as it should, but no messages are displayed on the serial over usb console. Messages can be observed when compiling directly from the examples/bsp directory.

What I tried

Since the code is identical, the problem is probably in the Cargo.toml. I tried to modify the features for the teensy4-bsp crate (adding and removing "usb-logging") but nothing changes. Looking in the source, "usb-logging" is enabled by default.

I feel I am missing something obvious, but what ?

created time in 6 days

push eventmciantyre/teensy4-rs

Ian McIntyre

commit sha d293dcd8e930b79e11af16875fc4491ca22cba1c

Remove unsupported 'd' section in start.s

view details

Ian McIntyre

commit sha 29e03e935b12ffe4c3798b7bd405c094e58897a2

Remove basename step in Makefile

view details

push time in 6 days

more