Raspberry Pi High CPU Utilization

So if you are coding in python for your Raspberry Pi and your script runs a loop you may have noticed the high cpu utilization, or not. I have not had an issue (yet) with the Pi running in the 90%, I have had a test Pi on my bench running for a few days with no problems so far. Least to say that it still is an issue.

Now I cannot claim to be the author of this fix, I found it while digging through the RPi forums one day. If your Pi is having this issue, simply add this line of code here and there during your loop:

time.sleep(0.1)

TA-DA! It really is that simple. I added one time.sleep(0.1) call between each of my IF/THENs and I watched (via top) my cpu go from 90-98% to under 5%!!

My adventures in 433mHz with a Raspberry Pi B+

So I bought some 433mHz modules off of eBay for dirt cheap. The “standard” 4 pin receiver and 3 pin transmitter. For the life of me I could not get them to work. Everything I found online appeared to be related to the RPi A I am pretty sure because NONE of the instructions worked for me. I was able to download, compile and run the commands but with zero results. I tried damn near all tutorials I could find out there. Nothing work but I did get close a few times. The part that really irritated me was that I had hooked up LEDs to the Tx and Rx pins to see if it was working. It was, I could see the LEDs flicker away when I pressed buttons, but no results with sniffing.

Finally I was able to send and receive a signal. RFSniffer finally worked off of pin 13/GPIO 27/wiringPi 2 on my Raspberry Pi B+. I curse the people that decided to use a completely different number schemes!! I used this http://shop.ninjablocks.com/blogs/how-to/7506204-adding-433-to-your-raspberry-pi to get the sniffer working, with the above pins, but without the ninja block stuff.

I don’t have FTDI, it hasn’t arrived yet, so I used my Arduino Duemilanove to flash the Mini Pro, but it didn’t work. To get the Arduino Mini Pro to flash I had to switch the Tx and Rx pins. You will find all the directions out there say to connect the Arduino’s Rx to the Minis Tx and vice versa, but that was not the case for me. I did find one post on the Arduino forums that mentioned switching them, I had to flip-flop the pins and then it worked! Tx to Tx and Rx to Rx. I got my Mini Pro off eBay for cheap, it has no name on it, but it does have a red PCB and a small Sparkfun logo. Works like a charm this way. Just remember to set the Arduino IDE to your Mini Pro or you will get errors. I also HAD to remove my Duemilanove’s chip to flash the Mini. I tried it with it in and it did NOT work.

As for the receiver some say to use 5v to power, the board even says 5v. But I have also read people using 3.3v to power it. I used 3.3v to power it when I was testing. To use 5v and the RPi you need to drop the voltage or you will damage the Pi. Use a voltage divider with a 1K and 2K ohm resistors to do it. Google Images has plenty of examples. http://forum.arduino.cc/index.php?topic=136788.0

Heres the code I used to finally get it to work:

———————
(1) Raspberry Pi B+
(1) XY-MK-5V 433mHz Receiver (4 pins, both data are the same)

(1) Arduino Mini Pro
(1) FS1000A 433mHz Transmitter (3 pins)

RFSniffer (on the RPi for receiving)
RCSwitch (on the Arduino for transmitting)

I used 2 LEDs on the Tx and Rx data pins, and 10K ohm pulldown resistor for the button. I also soldered on 17cm (about 6.5″) of 22awg solid copper wire for antennas.
———————

Some useful links
http://arduino.cc/en/Tutorial/ButtonStateChange

So far so good. Do not blame me for anything bad that happens to you or your RPi/Arduinos, consider yourself warned. Double check your wiring!!

ClearOS

Since Zentyal decided to drop support for all of the modules that I was using it for I had to switch, and I chose ClearOS. It does the job, but I miss Zentyal. Things were just easier with Zentyal, sure they both have a web GUI but Zentyal just seemed to have it all together. Things made more sense, and I feel like Zentyal was faster. The internet and local network all seem a little slower than before. I can’t say for certain but it feels that way.

One major thing I am missing from Zentyal was the firewall and Traffic Shaping. In my experience with Zentyal the firewall was super easy to understand and setup, and it worked. The traffic shaping (qos) was also easy to setup, and it worked! ClearOS has a firewall and it works, but it requires a lot of pre-configuration to get working properly. I still have issues with my setup. ClearOS doesn’t have QoS either (its in beta). Zentyal’s traffic shaping made it super easy to segregate the phones from computer and the rokus in the house. Making it easy to prioritize your netflix experience for example.

Dealing with ClearOS for now.

Synergy

I use an app called Synergy, it is a KVM switch that works without hardware over your network. I went to update Synergy on the Mac the other day, because it always breaks with OSX updates, and they have gone from free software to no longer free software. They are calling it a donation I believe, but thats BS cover. Charging for whatever reason is still a fee/cost of a product, don’t hide behind the wording. It is a small fee I will say though, currently (as of this posting) $5.00. Or head over to their site and grab a nightly for free, if you don’t mind betas. It is a great piece of software, very handy with multiple machines on the same desk I must say.

Goodbye Zentyal

Well this is a sad day. I was just reading the roadmap for Zentyal 4.0 (currently I’m running 3.4). With the last few releases they have been dropping modules left and right, nothing has changed it seems. With Zentyal 4.0 they have dropped support and integration with more modules than they had previous. IPS, UPS (NUT), Backup, Monitor, RADIUS, Web Server, Webmail, and IPSec modules are all getting the axe with the 4.0 upgrade, along with Gateway mode.

What the fuck.

The reason I found Zentyal picked it up and ran with it was because of all of those modules. I was looking for a router replacement and wanting to merge all of my separate servers into one. I was looking for a nice streamlined way to manage my home network. With these modules gone this severely blows. While I could do without some of these modules, Backup, and Monitor, Web Server and Gateway was imperative! Yes I can install Apache and Munin but I did not want all of these programs to be separate, and I really wanted a nice GUI to manage it all. Yes, I do know how to manage the server via terminal – I can get my hands dirty.

So off to find a replacement for Zentyal. I found and settled on ClearOS. While it is based of RHEL/CentOS(?) which I don’t care for actually (gimme Debian/Ubuntu please), it seems to be the best fit for the hole Zentyal 4.0 left. Currently have the server up and running on ClearOS 6.3 Community Edition. More later on the issues that brought. And I remembered to backup the SQL this time!! haha