In our last episode, we were going to actually get temperature measurements! Until we had a
Unhandled Exception: System.ArgumentOutOfRangeException: Specified argument was out of the range of v alid values. Parameter name: processor at Raspberry.IO.GeneralPurpose.MemoryGpioConnectionDriver.GetProcessorBaseAddr ess (Raspberry.Processor processor) [0x00020] in <39616ab275014559a5b975fe859e9a d9>:0
To the internet!
- I have an older Model B (Hardware Rev 0010)
- The main raspberry sharp projects have not updated in 11+ months
- Lots of other people have been forking and improving the project
- Figuring out which fork to follow is kind of a pain (It’s great that people can make forks and improvements, yes, but if those improvements don’t get pulled back to a core trunk of code, then piecing them together becomes impossible if you want features from two distant branches)
At this point I needed to decide whether I was going to make yet another fork, or if I was just going to clone someone else’s (some of which may be on nuget). In either case, it involves reviewing all the major forks to decide where to start. Just based on the fact that he published to NuGet, I would say that JTrotta’s fork is the likely winner here. Reviewing his fork of the System project as well, I can see added support for the BCM2835 used on my Pi. It seems that nobody has published the “Components” project to nuget, so I’ll continue using my copy for that (though I might switch to his codebase for building it).
Removing the “official” package and loading his from NuGet was relatively painless (remember to remove the old ones before adding the new ones), but i did have to clone his repo to make an updated Raspberry.IO.Components (now Components3 to follow his style) nupkg. Because I haven’t done it a bunch of times, I used this as a reference for creating the package.
Build successful, deployed, and… same issue. I think that I probably messed something up when compiling the Components module. I’ll have to give that a go next time.