Sunroom Logger Part 6 – A Small Rabbit Hole

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! Between looking at various Github Issues and Pull Requests, I discovered a few things: 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 […]

Read more

Sunroom Logger Part 5

Data Structures I spent some time with MySQL Workbench setting up a data structure that should allow an unlimited number of sensors to be logged to a generic structure. This database structure was deployed to a local server on my windows development machine, the Pi (running MariaDB, which appears to work with MySQL Workbench with only minor complaints), and also to my webhost. This is similar to a structure I use at work. Each ‘device’ can then have a local DB that is always available. Then some (so far unwritten) task can copy the data up to the webhost, which is used as a warehouse for the data. If for some reason the pi loses its network connection, it still can record locally with no data loss. There is a stored procedure on the DB that the program can use to determine what kind of device it is (not hard […]

Read more

Sunroom Logger Part 4

Mono just works. Hello World was up and running on the first try. Now to read about using the I/O and look at examples for the DHT11 Temperature/humidity sensor. Raspberry.IO.GeneralPurpose is available via nuget, but the Raspberry.IO.Components project is not. I pulled down a local copy of the repository, created a quick nuspec file (based on the provided nuspec for the GeneralPurpose), and built a nupkg. I also had to turn on the XML Documentation checkbox for Release and Debug configurations in the Build Properties. I then added a local nuget source in VS pointing to my Github folder, and was able to install Raspberry.IO.Components to my project. I also downloaded MySQL on my development computer and on the Pi, as well as configuring a new DB on my webhost. I’ve been learning a lot of SQL at work lately, so am trying to apply that here as well. I’ve created […]

Read more

Sunroom Logger Day 3

On Previous Episodes Day 1 was a game of discovering the Pi Zero W couldn’t run Win 10 IoT OR .NET Core 2.0 Day 2 was spent trying to get Win 10 IoT running on a Pi 2 B+ and just not being able to boot Day 2.5 started last night with trying to prove the pi worked with stock NOOBS and then try to use NOOBS to install Win 10 IoT (it’s last chance on this project). I even followed microsoft’s guide for installing it via NOOBS, but it’s simply not an option anymore. I even set up wired ethernet at my desk to try the network install. Finally i just put stock Raspbian Stretch Lite back on and called it a night. It boots. I apt-get installed mono-runtime and let it sit overnight to install dependencies. Today’s Episode I finished the basic user setup from day 1 except […]

Read more

Sunroom Logger Round 2

I think it’s not quite worth the hassle to get Pi Zero W to run dotnet core 1.1. 2.0 is out, and Zero support just won’t exist. I did find a few people using a Pi Zero W with Octoprint, so I’m going to earmark one of the Zeroes for that, and in the mean time take the Pi 2 from the printer to use with .NET Core 2.0. I think it would also be interesting to try the Windows 10 IoT route, so this is a project reboot with a Pi 2 (way more cpu than I need for the job, but it’s at hand so it will have to do). Pi B+ Setup with Windows 10 IoT Go through the hardware selector here Realize that they intend you to be running Win10 to install it on the pi. Realize your new (refurb) laptop has Win 7 and you […]

Read more

New Project: Sunroom datalogger

We noticed the sunroom in our new apartment gets to >100 degrees F on a sunny day when the outside temp is only 65! This spurred the idea to try logging the data which will let me build something relatively simple but interesting. I was hoping to use an ESP32 or the older ESP chip, but I didn’t have one on hand (I do own an ESP32, but I’m not certain where i put it, and I’ve moved since then.) One of the benefits of purging a bunch of project stuff and equipment is that I can feel fine about just buying something for a project as needed. I ran to MicroCenter and looked for things with WiFi, since I want to send the data to a database somewhere. I settled on a Raspberry Pi Zero W, which I got for $5. I was hoping to run Windows 10 IoT […]

Read more

Game Clicker PCB design

My brother had an idea for a project, and asked me to design and produce a PCB and case. If you have a circuitmaker login, you can look at it here. The basic design is a combination of the following products all in to one PCB, with additional buttons and LEDs to do the job he wants: LiPo charging and power conversion: (http://www.sparkfun.com/products/11231) Arduino Micro compatible CPU (http://www.sparkfun.com/products/12640) 7-Segment displays (similar to http://www.sparkfun.com/products/11442) I did run the 7 segment displays off of a shift register instead of the ATMega328 sparkfun used, which helped keep my I/O to a minimum. For power, the unit will use a LiPo battery, but I haven’t yet picked the exact model that will fit in the case and also last all day. I still have a few power measurements to make. Layout on GerbLook Schematics: Game Clicker (pdf) Early renderings (there are a few updates […]

Read more
1 2