mirror of
https://github.com/hirschmann/nbfc.git
synced 2026-04-25 08:35:56 +03:00
[GH-ISSUE #170] is it possible to write to IO space using nbfc? #153
Labels
No labels
Stale
bug
config
discussion
duplicate
enhancement
experimental
feature
help-wanted
info
invalid
invalid
pull-request
question
up-for-grabs
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/nbfc-hirschmann#153
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @dude-sam on GitHub (Jan 11, 2017).
Original GitHub issue: https://github.com/hirschmann/nbfc/issues/170
Is it possible to write to IO space ? The system im working on changes the fan speed by writing to a single bit in a register in the IO space. Thank you
@hirschmann commented on GitHub (Jan 13, 2017):
Currently not. Maybe I can help you if you provide some more information like, notebook model, OS and most importantly, how do you want to change the fan speed by only changing a single bit (just on/off?).
@dude-sam commented on GitHub (Jan 13, 2017):
Thanks for your reply Hirschmann. My apologies for being so brief.
I am trying to control an external chassis fan for an intel NUC. The fan is controlled by custom transistor circuitry and can either be low or high. To switch to high I need to be able to switch bit 31 at base address 1E30 in the IO space (0 for low speed- 1 for high speed). I can do this using RWeverything, but wondered if this functionality may be included in nbfc as RWeverything doesn't have any monitoring capabilities.
Thanks
Sam
@hirschmann commented on GitHub (Jan 15, 2017):
I guess the easiest way to do this would be to write your own plugin for NBFC.
Just implement IEmbeddedController. The implementation could look like ECWindows but instead of implementing EmbeddedControllerBase, you could would e.g. call HardwareMonitor.WriteIoPort() in your implementation of IEmbeddedController.WriteByte().
Unfortunately you have to hard code the base address because the interface doesn't allow addresses > 255.