Skip to content

Add support for musi R1 neo#1931

Closed
weebl2000 wants to merge 8 commits into
meshcore-dev:devfrom
weebl2000:r1-neo
Closed

Add support for musi R1 neo#1931
weebl2000 wants to merge 8 commits into
meshcore-dev:devfrom
weebl2000:r1-neo

Conversation

@weebl2000
Copy link
Copy Markdown
Contributor

@weebl2000 weebl2000 commented Mar 5, 2026

solves #1275

Continued on the work of @khudson

Build it here

khudson and others added 8 commits March 5, 2026 11:36
Support for R1 Neo hardware. New variant and baseboard class.
* Known issues:
  - power management is not currently supported
  - power off via long button press is not implemented

Add support for Epson Seiko RX8130CE I2C Real-time clock.
- VLF check on init per datasheet flowchart
- WEEK register bitmap encoding (was BCD, should be 1 << wday)
- 0x040 → 0x40 typo
- remove nonexistent NRF52BoardOTA, proper NRF52BoardDCDC inheritance,
move PIN_VBAT_READ/ADC_MULTIPLIER here
- power latch release in shutdown (DCDC_EN_MCU_HOLD, SOFT_SHUTDOWN)
- enable boot protection
- remove duplicate defines
@weebl2000 weebl2000 marked this pull request as ready for review March 5, 2026 17:43
@thetooth
Copy link
Copy Markdown

thetooth commented Mar 6, 2026

Looks good, no issues found.

@khudson
Copy link
Copy Markdown
Contributor

khudson commented Mar 6, 2026

I wish you would have talked to me first so we could have collaborated on this before releasing it.

Some of the fixes here were already in the works and I was adding the final polish before submitting.

Additionally, why is there a display driver specified now when the device doesn't physically have one? I specifically close the old UI to maintain user experience parity between the other single-button, no-display devices like the wismesh tag and T1000.

I have the official schematic from Muzi Works - why is there an LED controller that's not present on the board getting compiled in now?

@weebl2000
Copy link
Copy Markdown
Contributor Author

weebl2000 commented Mar 6, 2026

I wish you would have talked to me first so we could have collaborated on this before releasing it.

Some of the fixes here were already in the works and I was adding the final polish before submitting.

Additionally, why is there a display driver specified now when the device doesn't physically have one? I specifically close the old UI to maintain user experience parity between the other single-button, no-display devices like the wismesh tag and T1000.

I have the official schematic from Muzi Works - why is there an LED controller that's not present on the board getting compiled in now?

Hi @khudson, feel free to commit improvements to my branch! I don't have the device, so I cannot test anything lol.

Nothing is released yet. Just fix anything which I did wrong and we can get this merged 👌

@khudson
Copy link
Copy Markdown
Contributor

khudson commented Mar 7, 2026

Excuse me? What's your end game here?Why did you submit this PR if you can't test the code? Submitting untested code that does not work, adds features for hardware that isn't present on the board, and changes the behavior away from well-understood defaults is damaging to the project and the reputation of the hardware in question.

Please cancel this PR.

I will go back and submit it when the code is ready to be merged into MeshCore. If there are enhancements you wish to add to my code, please - first get the device so you can test this - then submit a pull request to my branch and I will evaluate the applicability of it before this goes live.

Scott/Ratislav/etc. please don't merge this.

@tjdownes
Copy link
Copy Markdown

tjdownes commented Mar 7, 2026

Submitting untested code that does not work, adds features for hardware that isn't present on the board, and changes the behavior away from well-understood defaults is damaging to the project and the reputation of the hardware in question.

I have to agree with @khudson. Additionally, providing links to users via the project board to allow them to build firmware from untested, untrusted resources sets a highly dangerous precedent.

Since we're discussing firmware here, shouldn't there be some sort of pipeline that tests and proves the viability and relative safety of the code? Or at least proof that tests have run and passed?

I'm no embedded systems engineer, but looking briefly, it seems relatively common practice to test and prove firmware viability

@weebl2000
Copy link
Copy Markdown
Contributor Author

I've done a bunch of fixes for boards that I don't have myself. You really just need the datasheets, and as long as other users can verify the changes work I don't see the problem. 🤔

@recrof
Copy link
Copy Markdown
Member

recrof commented Mar 7, 2026

please let the original developer submit tested code. thanks.

@recrof recrof closed this Mar 7, 2026
@weebl2000
Copy link
Copy Markdown
Contributor Author

FYI I only opened the PR after multiple people tested, so I don't think I was being reckless. Also looked at meshtastic implementation for R1 neo. See also #1275 (comment)

@recrof
Copy link
Copy Markdown
Member

recrof commented Mar 7, 2026

FYI I only opened the PR after multiple people tested, so I don't think I was being reckless. Also looked at meshtastic implementation for R1 neo. See also #1275 (comment)

you don't have hardware to test it on, there was already developer who is doing the work that you submitted. please don't do it this way.

@weebl2000
Copy link
Copy Markdown
Contributor Author

weebl2000 commented Mar 7, 2026

I was just trying to help people get R1 neo working. I've opened PR to khudson's fork now. Main reason I opened this Pr is because their fork was based on main branch and in non working state. Not trying to steal anyone's work.

Just hope it helps some people use their R1 neo.

@thetooth
Copy link
Copy Markdown

thetooth commented Mar 8, 2026

smh. The whole reason for all this drama is because @khudson decided to do this all smoke and mirrors behind closed doors. I had to find your branch via a rumor that someone was working on the R1 and then track you down from your avatar alone. Had of @weebl2000 know of your branch and that you were sponsored by muzi to develop the firmware weebl2000 or anyone else in the community could have continued on with the work when you became unavailable and we would have had this merged a week ago for 1.14. And yet here we are 🙄

This is open source software, there's no prize for being first place, (all of you) work together so that we can better the experience for everyone instead of wasting everyone's weekend with this idiotic infighting.

@khudson
Copy link
Copy Markdown
Contributor

khudson commented Mar 8, 2026

Excuse me? No. I've been very active in the MeshCore discord, very open about what I'm doing, and available. My wife's folks came into town for a week. I didn't, "become unavailable." This isn't smoke and mirrors.

Neither of you came to me to offer help (which I would have gladly accepted) or, for that matter, said even one word to me - this just came out of the blue. This isn't about being first. This is about making sure quality, working code gets submitted. This PR contains code that doesn't work, changes behavior away from expected defaults, and compiles in modules for hardware that isn't present on the board. That's a non-starter.

I'm happy to accept help. A little communication goes a long way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants