• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kaidokert / rm32
63%

Build:
DEFAULT BRANCH: main
Repo Added 28 Apr 2026 02:48PM UTC
Token gSHfNNG4C2ue8Ih3dj51cwDeonsyNzdup regen
Build 247 Last
Files 34
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: main
CHANGE BRANCH
x
Reset
Sync Branches
  • main
  • pr1
  • pr10_1
  • pr11_1
  • pr12_1
  • pr13_1
  • pr14_1
  • pr15_1
  • pr16_1
  • pr17_1
  • pr18_1
  • pr19_1
  • pr20_1
  • pr21_1
  • pr22_1
  • pr23_1
  • pr24_1
  • pr25_1
  • pr26_1
  • pr27_1
  • pr28_1
  • pr29_1
  • pr2_1
  • pr2_2
  • pr2_3
  • pr2_4
  • pr2_5
  • pr2_6
  • pr2_7
  • pr2_ref
  • pr30_1
  • pr31_1
  • pr32_1
  • pr33_1
  • pr34_1
  • pr3_1
  • pr5_1
  • pr7_1
  • pr8_1
  • pr_codecov1
  • pr_codecov2
  • system-tick
  • tmps

01 May 2026 10:20PM UTC coverage: 63.131% (+0.2%) from 62.944%
25235654056

push

github

web-flow
Replace TransferActions boolean explosion with enum (#40)

* Replace TransferActions boolean explosion with enum

TransferActions had 9 fields with mutually exclusive combinations.
Replace with TransferAction enum (6 variants) + DetectedProtocol
enum + paired frametime Option. Invalid states now unrepresentable.

* Fix 4 review issues: servo_pwm, telemetry flag, newinput, else-if

1. Harness missing shared.set_servo_pwm(true) on servo detection
2. set_send_telemetry only sets true, never clears (matches old behavior)
3. Harness DshotCommand newinput=0 now unconditional
4. Use else-if for mutually exclusive dshot/servo processing

* Fix firmware: gate DShot throttle on EDT_ARMED, add regression test

C firmware (dshot.c) only sets newinput from DShot throttle when
EDT_ARMED is true. The Rust firmware ISR handler was applying throttle
unconditionally — the harness already had the correct guard.

Add edt_armed_throttle_gate.txt blackbox test that verifies:
- EDT_ARMED=0 + throttle=1500 → newinput=0 (rejected)
- EDT_ARMED=1 + throttle=1500 → newinput=1500 (accepted)

This test would have caught the missing gate.

0 of 76 new or added lines in 2 files covered. (0.0%)

2 existing lines in 2 files now uncovered.

3601 of 5704 relevant lines covered (63.13%)

761.5 hits per line

Relevant lines Covered
Build:
Build:
5704 RELEVANT LINES 3601 COVERED LINES
761.5 HITS PER LINE
Source Files on main
  • Tree
  • List 34
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
25235654056 main Replace TransferActions boolean explosion with enum (#40) * Replace TransferActions boolean explosion with enum TransferActions had 9 fields with mutually exclusive combinations. Replace with TransferAction enum (6 variants) + DetectedProtocol e... push 01 May 2026 10:20PM UTC web-flow github
63.13
25232272948 main Embed TickCounters in IsrState, eliminate copy boilerplate (#39) * Embed TickCounters in IsrState, eliminate copy boilerplate IsrState had 4 loose fields (ten_khz_counter, one_khz_loop_counter, armed_timeout_count, tim1_arr) that were copied int... push 01 May 2026 08:42PM UTC web-flow github
62.94
25230743663 main Make EdtScheduler flags private, add request_init/request_deinit (#38) * Make EdtScheduler send_init/send_deinit private, add request methods Replace pub flag fields with request_init()/request_deinit() setters. Firmware ISR handler now calls re... push 01 May 2026 08:01PM UTC web-flow github
62.9
25229602347 main Make CRSF throttle_channel a const, add channel extraction test (#37) * Make CRSF throttle_channel a const, add channel extraction test throttle_channel was a pub struct field set to 2 and never modified. Replace with pub const THROTTLE_CHANNEL:... push 01 May 2026 07:31PM UTC web-flow github
62.84
25225114164 main Make all ServoState fields private, add set_calibration method (#36) All 11 fields private. Firmware init uses set_calibration(low, high, neutral, dead_band) instead of 4 direct field writes. Transfer.rs uses calibration_required()/high_calibrati... push 01 May 2026 05:34PM UTC web-flow github
62.67
25218722619 main Make fields private across 7 modules, delete 2 dead TransferActions fields (#35) PhasePositions: fields private, add new() constructor with 120° offsets. KissTelemPacket: struct + all 10 fields private (internal-only). TransferState: 4 internal f... push 01 May 2026 02:45PM UTC web-flow github
62.83
25217929386 main Replace BoardParams with BoardConfig + ChipParams (#34) * Replace BoardParams with BoardConfig + ChipParams Delete BoardParams — it duplicated 5 fields from BoardConfig and mixed in 2 chip constants. MainState::new() now takes: - &BoardConfig — ... push 01 May 2026 02:23PM UTC web-flow github
62.87
25207800895 main Make CommandProcessor fields private (#33) * Make CommandProcessor fields private, add accessors All 9 fields were pub but only 3 are accessed externally. Make all fields private, add: - extended_telemetry() getter - take_edt_init() / take_edt_d... push 01 May 2026 08:17AM UTC web-flow github
62.84
25207195784 main Gate TestShared behind #[cfg(test)] (#32) TestShared and all its trait impls (MotorState, IsrTiming, MainControl, SharedComm) were compiled unconditionally despite only being used in test modules. Gate shared_impl module with #[cfg(test)] so it's... push 01 May 2026 07:54AM UTC web-flow github
62.94
25207070949 main Move voltage_based_ramp from TickCounters to MotorContext (#31) * Move voltage_based_ramp from TickCounters to MotorContext voltage_based_ramp is a board constant (from BoardConfig YAML), not a counter. It was being copied from IsrState → TickCo... push 01 May 2026 07:49AM UTC web-flow github
62.94
See All Builds (166)

Badge your Repo: rm32

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc