How to secure your Raspberry Pi board [Tutorial]

There is a great Raspberry Pi tutorial where you will learn to secure your Raspberry Pi. You will also learn to implement and enable the security features to make the Pi secure. This article is an excerpt from the book, Internet of Things with Raspberry Pi 3, written by Maneesh Rao. I give credit where it is due and this is what I wanted to share with all of you. Worth the time to read.

Secure Your Raspberry Pi
Secure Your Raspberry Pi

You can read all about it here.

Raspbian update makes things even better…

Hello everyone!

I just received my new Raspberry Pi from the folks over at the Pi Hut and could not wait to get it installed on my bench and see all of the new improvements that have come out with the latest version of Raspbian.

As always, when you get a new pie you should always put it on your DINrPlate so it is not going to make a mess shorting out on anything that you have lying around on your test bench.

The Raspberry Pi 3B+ came in a simple package that was easy to open and allowed me fast access to my latest diversion. I have been waiting 3 months to get to this new board and the wait was well worth it!

Top side of the new Raspberry Pi 3B+

Bottom side of the Raspberry Pi 3B+

So once I have it installed on the plate above I went to go fetch the latest version of Raspbian. They are always making changes to it making the install process easier and easier for beginners. If you have been waiting for a time to get started with the Raspberry Pi and found the installation process frustrating you might just want to take another crack at it again. Much easier and straight forward now.

First this you want to do is go download the lastest version of NOOBS, that is what I did as a .zip file, and then unzip it on your local system.

Once you have it unzipped you can copy over the contents of that zip file over to your newly formatted SD card. Once you have done that, take it to your Raspberry Pi and then boot it up.

When you first boot up you will see the following screen with only 2 options until you get your Wi-Fi going.

Click on the Wi_Fi icon and log onto one of your local networks.

Once you have done that you will have many more choices for what you can install. In my case I wanted Raspbian so that is what I selected.

Once you have done that, go get a cup of coffee/tea and sit back, this is going to take a few minutes.

When done it will prompt you with OK. I don’t know why people have to include the OK button… just get on with it already!

Once you have clicked OK your Raspberry Pi will reboot and take you to the new start up screens.

Set everything to your local area…

Change your password!! This is w WAY overdue step in the process. I am so glad that they added this! This will make the whole Raspberry Pi Community a better place as we will all be more secure. In my opinion this should have been a mandatory step since day one. But I digress…

Then you will be prompted to sign onto a Wi-Fi network if you did not pick one during the installation process. Another much needed step in this process!

Enter your password…

When your connected to the Internet you can then check for updates for your Raspberry Pi. Another much needed step!

When all done you should get the following message telling you your up to date. Always a good thing!

At this point your Raspberry Pi is now setup and ready for you to use. Time for another reboot to get everything all set. Remember, at this time you can go into your Raspi-Config and make changes. I turned on VNC and SSH. I am always on the PI via one or both of those from my main PC.

I also wanted to take the time to let all of you know that even though the new Raspberry Pi 3B+ is more power efficient than all of the previous models it still at peek usage consume MORE power. So I am using a 5v 3a power supply that terminates in a barrel jack. I then use a barrel jack to micro USB converter to power the Raspberry Pi 3B+. I figures that a picture would also help explain it. Want to make sure that power is not a problem!

ok, now that we have rebooted and we are back on the desktop you can click on the Raspberry Icon and open up your applications menu.

You can then navigate down to “preferences” and to “recommended software”.

As you can see there are “all programs” you can select or you can pick other things like “games” or “programming”.

If you do not see what your looking for, and I didn’t, you can also go to “preferences” and “add/remove software”. This will most likely still be the way I do things as I find it has a better selection (for now).

When you open that up you can type in the search box for something that your interested in installing on your PI.

Or, you can select a category, I selected Games, and you can see games that you can install.

I didn’t want to install any games at this time but I did want to listen to some mp3’s that I have on my phone on the Raspberry Pi 3B+. So I typed “vlc” in the search box and behold VLC showed up as one of my choices. So I installed it!

Installation is easy, only takes a few seconds to maybe a minute depending on your Internet speed…

When completed you have a new category on your main menu for your new program! Easy Peasy!

In some cases you will want to install a program that will not install when you try either of the ways I listed above. The Phoronix Test Suite is one of those such programs. It is listed in the add/remove software section but it will not install that way. I am not sure if it is a bug but I have tried it many times on many versions with zero success that way.

I HAVE had success bu going to the Phoronix website though!

Select the Debian package and download that…

Once downloaded go ahead and double click on it…

Your Raspberry Pi 3B+ will ask you if you wish to install it…

If you say yes you will be prompted for your password. When you changed it you committed it to memory or wrote it down somewhere right?

Just like VLC it will take a moment to install it and then you will have a new group with an icon for you to use your new program!

With this new version of Raspbian for NOOBS it has never been to easy to setup a Raspberry Pi 3B+ (and previous versions of Pi). I will go into more depth with Phoronix and VLC in future posts. I just wanted to get this post out there so you can start to configure your Raspberry Pi’s as well.


I look forward to putting the Raspberry Pi 3B+ through it’s paces and explore many projects with it. I have been working on getting a lot of items together for future regular posts. The rest of this year is going to be great! Catch you real soon 🙂

Gaming on your Raspberry Pi

Today I am going to show you how to install a new game and at the same time learn how to install other programs on your Raspberry Pi. There are a plethora of educational, graphics, Internet and even games out there that you can easily install once you learn what I am going to show you today. The best part about it is that they are free!

Frozen Bubble
Frozen Bubble Single and Multiplayer Internet game

How To Install Games And Other Software On The Raspberry Pi

You can discover new software to install using the command line, but there’s also a friendly menu system you can use in the desktop environment. On the Applications menu, hover over the Preferences option and click Add/Remove Software to get started. You need to have an active Internet connection.

The menu looks like this:

There are 3 Frozen Bubble Packages
There are 3 Frozen Bubble Packages

In the top left is a search box, where you can enter the name of a program you’re looking for, or a phrase such as “Frozen” to explore what’s available. On the left are categories you can click to see your options.

NOTE: If this does not show up for you then you may need to update your Raspberry Pi with the latest information. You can open a terminal and use this command:

sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade

The main pane shows you the packages, with a scrollbar on the right that you can use to see the full list. Those that are already checked (or ticked) and shown in bold are already installed on your Raspberry Pi. You can click a package to see its description below. To select a package for installation, tick the box beside it. To remove it, untick it. In this example you will see a checkbox for the Frozen Bubble Game.

When you’ve finished choosing your software, click the OK button to install and remove the applications. You will be prompted to enter your password (which is raspberry, unless you’ve changed it). It can take some time to download and install the software, so it’s a good idea to choose a few applications and leave them to install in one batch while you do something else.

The menu ensures that any applications that your chosen application requires also get installed. When you install the game Frozen Bubble, for example, the menu automatically installed its separate data package for you.

Your software is now installed! You should be able to run it either from the shell by entering its name (for example, Frozen-Bubble), or through your Applications menu in the desktop environment.

The menu makes it easy to install software, but you might find that not all the software works well on the Raspberry Pi. It’s easy enough to try something, though, and remove it if it doesn’t do what you need. It’s all free.

In the case of Frozen-Bubble it will run in a smaller window when you first launch it from the desktop. There is no option in the GUI to change this. You can make it full screen by launching it from the shell (terminal window) by typing:

frozen-bubble ––fullscreen start in fullscreen mode
frozen-bubble ––no-fullscreen
don’t start in fullscreen mode
frozen-bubble ––help
gives you a list of all of the commands 

Multiplayer support is built in

Final thoughts:

“Frozen Bubble” is a simple but highly addictive game involving knocking down clusters of frozen bubbles. The bubbles come in several colors, and strategy involves getting as many bubbles down as possible with each shot.
There is no violence, horror or innuendo anywhere, and you can make new levels with a simple text editor (like vi or Notepad).

Logo for ‘Frozen Bubble’ The game is Open Source (GPL) and is written entirely in PERL, so you can inspect it, learn from it and change it if you wish.

Have fun playing this one folks as it is good for the whole family! -=Enjoy=-

Asciinema – record your Terminal sessions

I have been working at learning a new program called Asciinema which will allow you to record Terminal sessions and share them on the Internet. For someone like me that wants to share everything that I learn with you this is an extremely valuable tool. I am excited to introduce you to this awesome program.


Asciinema is a fast, light-weight and open source Terminal recording tool. Asciinema not just records your Terminal activities, but also helps you to share them on the web if necessary. You can share the recordings by copying its URL and sending it to a friend or posting it on a social network. It is easy to use and in just about 10 minutes you will be a pro at using it.

Asciinema tool could be useful in the following situations:

  • The online trainers can record and share the Terminal session when teaching Linux commands to the students.
  • The students can share their Terminal activities to their online tutors when they have been given a command-line assignment.
  • The junior admins can record and share their Terminal activities to the remote technical support or subject matter experts when looking for help.
  • Technical writers or bloggers can record the terminal activities and use them while writing a book or blog post.

The possibilities are endless. Whatever it is, when it comes it to record a terminal session, Asciinema comes in handy! In this guide, we’ll be discussing how to install Asciinema in Mint and Raspbian and how to record your Terminal sessions using it. Also, we will see how to share the recorded terminal sessions on the web.

Install Asciinema

The good thing is the developers have packaged asciinema for almost all Linux distributions, and it’s available in the official repositories of many Linux distros. I have installed this on both Mint and Raspbian with excellent results.

sudo apt-get install asciinema

To install asciinema on Unix and other operating systems, refer the asciinema installation page:

Record Terminal Sessions using Asciinema

The usage is trivial. When you run “asciinema” without any argument, it will display the help section. Now, let us record a terminal session. To do so, run:

asciinema rec

Once you run the above command, you will see the following output.

~ Asciicast recording started.
~ Hit Ctrl-D or type “exit” to finish.

Now, your Terminal activities is being recorded and saved in the file called “test” in the current working directory.

Let us type some random commands.

df -h

ls -l



uname -a

#In Raspbian on your Raspberry Pi type:

vcgencmd measure_temp

That’s enough. To finish the recording, press “CTRL+D” or type “exit”.

When the recording is ended, you will see the following message.

~ Asciicast recording finished.

You can copy and paste directly out of this window.

The direct link to this asciicast is:


Uploading the record session to site

Since we didn’t specify filename for the recording, you will asked to upload the resulting recording to website, so you can share it to your friends or social media or add it to your own blog/website.

Just share it to your colleague or friend or whoever wants to view your Terminal session in their web browser. Or, you can view it on your own browser itself.

Once your friend entered the above URL in their browser’s address bar, they can be able to see your recording.

To learn more you can check out the website. It is a small community right now but I believe that if enough people that use the Raspberry Pi’s with the Raspbian system that this will become a vibrant community.

I will be using Asciinema as I believe this to be a great teaching tool. Share this with your friends so we can all benefit from this unique way of sharing.

Benchmark your Pi with a browser

Today I am going to show you how to benchmark your computer, Single-Board or otherwise through three different websites. I have tested my Raspberry Pi 3 B on all of them and you can do it right along with me. I setup my Raspberry Pi 3 B on my DINrPlate and then launched the Chromium Browser for testing.

Raspberry Pi 3 B being tested on a DINrPlate

The first website you can go to is and this website will test your setup 3 times and give you the final average score of the three tests. Screen Shots were captures with “scrot” from a terminal window.

Jet Stream testing the Raspberry Pi 3 B

The next website to test on is and this one is a little tricky. This website tests the Raspberry Pi 3 B to its limits. Out of 3 tests only 2 of them completed and one locked my Pi completely up. This one is a good test for sure.

Testing your Base Marks on the Raspberry Pi 3 B

The final website is and was one of the most reliable out there in the web based areas. I have tested a lot of computers on this website and as I make changes when overclocking this one would show me some of those changes instantly.

Cranking up the Octane on the RaspBerry Pi 3 B.
Final Thoughts:

Web based tests are hard on the Raspberry Pi 3 B because it only has 1 Gb of Ram. Browsers are Ram killers and make sure to keep all of your tabs closed, not be logged into your Google Account and have a fresh browser opened for each test. Every little bit helps.

I am working on other tests now that I want to share with all of you one I have them down as best I can. I want you to be able to do the same things I am doing as you read them so you can compare your results to mine. Then as you learn how to setup your system better by tweaking and or overclocking it you can compare your own results against yourself and continue to improve your experience.

-=Remember – Work Hard, Have Fun & Enjoy=-

Raspberry Pi 3B+

What’s new

While not as big as an aesthetic overhaul as the original B+ was, the Pi 3B+ does have a larger selection of improvements that make it distinct from the original Pi 3. This includes a more powerful CPU, now running at 1.4 GHz on all its four cores. The Ethernet port has also been updated to a Gigabit port, an oft requested feature, although due to pre-existing limitations it maxes out at about 350 megabits. There’s also some minor upgrades, such as a different wireless antenna and the addition of PoE pins for more advanced applications.

Great project ideas for the faster Raspberry Pi 3B+

Otherwise, it still has all the great connectivity and software of the original Raspberry Pi 3. With this new power though, we reckon it could make a few projects better than ever, like these ones:

Easy retro gaming on Raspberry Pi – a more powerful Pi can go a long way here – would make what I just did even better!

Image editing on your Raspberry Pi – image editing can get resource intensive, so extra power is always useful.

Set up a file server – make use of the better Ethernet port on the Pi 3B+ by improving your home Pi server – future project (very soon)

Get a Raspberry Pi 3B+ for the same great price of $35! NICE!

Raspberry Pi 3B+ specifications

  • SoC: Broadcom BCM2837B0 quad-core A53 (ARMv8) 64-bit @ 1.4GHz
  • GPU: Broadcom Videocore-IV
  • Networking: Gigabit Ethernet (via USB channel), 2.4GHz and 5GHz 802.11b/g/n/ac Wi-Fi
  • Bluetooth: Bluetooth 4.2, Bluetooth Low Energy (BLE)
  • Storage: Micro-SD
  • GPIO: 40-pin GPIO header, populated
  • Ports: HDMI, 3.5mm analogue audio-video jack, 4x USB 2.0, Ethernet, Camera Serial Interface (CSI), Display Serial Interface (DSI)
  • Dimensions: 82mm x 56mm x 19.5mm, 50g

Final thoughts:

This is a wonderful day for Raspberry Pi users. We are upgraded to better performance and the cost stayed the same. I look forward to getting myself one of the new boards to test and retry some programs that might like the new horsepower. Yes, good day indeed 🙂

Vilros Retro Pi Gaming Platform

Today by request we are going to show you how easy it is to setup Retro Gaming on the Raspberry Pi. I picked up this package last week and I couldn’t wait to get into building this fun project. Gaming has always been a pretty big industry for quite awhile now and it nice to see the nostalgia when it comes to the games of yesteryear. This is a easy project for you to get done in just a few hours and it will give your years of enjoyment. So lets get started.

Vilros Retro Pi in the box
Vilros Retro Pi in the box

I ordered the kit off of Amazon and you can get it here.

For a limited time you can get a Raspberry Pi 3 kit that has just about everything you need to get started (including a retro-style case) for $66 on Amazon when you use the promo code 45YOCHIQ at checkout. The full list of features includes:

  • Includes Official Raspberry Pi 3 (RPi 3) Model B Quad-Core 1.2 GHz 1 GB RAM–Features On-board WiFi and Bluetooth Connectivity [Latest Broadcom BCM2837 Chip]
  • Includes Samsung 32 GB Evo Plus (Class 10) Micro SD Card Preloaded With NOOBS & RetroPie With MicroSD -USB ADAPTER (can be used to Re-Write the SD Card if desired)
  • Includes UL Listed 2.5 Amp USB Power Supply with Micro USB Cable and Noise Filter – Designed for the Raspberry Pi 3–Includes Retro Gaming Style Case With Easy Access to all Ports
  • Includes High Quality 5 FT CEC Compatible HDMI Cable–Set of 2 Heatsink–Vilros Raspberry Pi Quick Start Guide
  • This kit is fully guaranteed for 1 year with our 5 Star US based Customer Support

Again, you can get it here and that code as of the time I posted this will save you $9 which you can put that towards a USB controller of you don’t have one. So lets get to the unboxing.

HDMI Cable, Power Supply and Heatsinks
HDMI Cable, Power Supply and Heatsinks

Everything was pre-packaged and very well shipped.

The Raspberry Pi 3, Retro Gaming case, SD card and good documentation.
The Raspberry Pi 3, Retro Gaming case, SD card and good documentation.

I like the fact that everything is in this kit. Makes trying to get this project done very easy.

Easy to read manuals
Easy to read manuals

It helps with the print is large, easy to follow and pictures. Even grandpa can do this! 🙂

Top side of the Raspberry Pi 3
Top side of the Raspberry Pi 3

The top side of the Raspberry Pi 3 does not have the heat sinks installed on it. I will cover that in another post. There is a lot you can do with them. In this build I did not install them and everything ran fine. Keep in mind I played real simple retro games on it as that is the least stressful and everything worked flawless.

Bottom side of the Raspberry Pi 3
Bottom side of the Raspberry Pi 3

When mounted in the Retro Case the bottom side sits high enough off the bottom that it will allow some airflow. For a stock, fan-less case, this is sufficient. There are other cases and things we can do in the future if we have the need..

Pre-installed Retro Pi on the SD card
Pre-installed Retro Pi on the SD card

Everything is pre-installed for you. All you have to do is insert the SD card.

Putting the Raspberry Pi 3 in the case
Putting the Raspberry Pi 3 in the case

This was very easy to do and you can’t put it in the wrong way. Once you put it in you can put the top on and insert the 4 screws.

Closing the Vilros Case
Closing the Vilros Case

Vilros even supplies the screwdriver for you. How cool is that?!

Assembled Retro Pi
Assembled Retro Pi

Everything is assembled and now we are ready to power it up.

Select Retro Pi and then setup your WiFi
Select Retro Pi and then setup your WiFi

Setting up the WiFi made things very easy for us to get updates and connect to the Internet. Very nice setup.

Pick your network and enter your password
Pick your network and enter your password

I wish more Raspberry Pi setups were this easy!

Make sure that you have Retro Pi selected and then click Install.

Click on Retro PI and Install
Click on Retro PI and Install

They RetroPie will then go to the Internet and get the files it needs to finish the installation.

NOTE: I would use the following command when done on the command line.

sudo apt-get install && sudo apt-get upgrade

This will take a few minutes to make sure everything is up to date.

Automatically reboots
Automatically reboots

Once everything is done the Retro Pie will reboot and not the fun starts!

USB Joystick is required
USB Joystick is required

When I got to this point I did not have a joystick. I had to text my brother to ask him where his was so I could calibrate it and get to the next steps. Now you know why I linked you one above and here it is again USB controller.

Playing Bubble Bobble 2
Playing Bubble Bobble 2

Success! A few minutes later I was playing one of the games I probably spent a few paychecks on (one quarter at a time) while I was in Okinawa Japan. It brought back a lot of fond memories and I look forward to trying out some others soon.


There are free and copyrighted ROMS out on the Internet. I am not telling you what you can or can’t do since Google is your friend and your mind is your conscience. I know some people that literally have hundreds of games. If you educate yourself I am sure you can find something that works for you. I look forward to hearing what all of you learn. So who’s up for a game?!

The Pimoroni Inky pHAT

This tutorial will show you how to install the Pimoroni  Inky pHAT Python library, and then walk through its functionality. You’ll learn how to run the a few of the included examples: the calendar and the name badge. For the complete tutorial you can go the the Pimoroni website:



First thing I did on my Raspberry Pi Zero WH was open a new terminal window and update the software to tun the Pimoroni  Inky pHAT:

sudo pip install –upgrade inkyphat


Then I made sure my version of Raspbian was up to date with this command:

sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade


Then I the following command to setup the Inky pHAT:

curl | bash


Once that’s done reboot your Pi to let the changes propagate.

After the reboot open up a terminal window and navigate to:

cd /home/pi/Pimoroni/inkyphat/examples

Once there you can then type “ls” to see the examples in that directory. I did the calendar:




python “”


Final thoughts:

I am very happy with the completion of this project. It seems that all the soldering I did on the header works as intended. I will update more as I intend to use this Inky pHAT in all of my future projects. I will definitely be adding my logo on there!

What is next weeks project?



RPI Zero W Day 4 – Upgrades!

My Raspberry Pi Zero W is now a Raspberry Pi Zero WH. Here are all of the parts before the were cobbled together. This created a USB dongle for me that allows me to log into the Pi and have a Linux based environment to work in at any time. I am no expert and with this simple how to build anyone can do this project.


The first step is to solder the USB connector to the SparcFun Pi Zero USB Stem (pictured).


Once you have the main grounding legs soldered to the Stem, flip it over and solder the actual USB data and power connections. As you can see I am not using a fine tipped soldering tip but if your careful and have a steady hand you can do this fairly easy.


Once I had that all soldered together it was getting fairly warm so I set that off to the side and then started to work on soldering the header. This takes a little time to solder all of the connections and it also required some patience. This allows you to practice your soldering skills.


About 15 minutes later I had the header all soldered on and I used some Isopropyl alcohol to clean it all up. Since the Stem was now cool I fastened that to the board with the parts provided.


There is a good tutorial over at SparcFun showing how to solder castellated holes (or castellations). This might come in handy if you need to solder a module or PCB to another PCB. These castellations are becoming popular with integrated WiFi and Bluetooth modules.


Here is the finished soldered and assembled project. A Raspberry Pi Zero WH dongle. Now time for the final test. Will it power up?


Success! As you can see in the picture the new Raspberry Pi Zero WH powered up and booted with no problems. I immediately had to log in and run quick test or two.


I just ordered Pimoroni Inky pHAT for Raspberry Pi – 3 Color eInk Display and it should have it for installation in the next day or so. I wanted to have it by the time I posted it but we know how life gets in the way. Expect a post on that in the next few days.

Final Thoughts

This has been a fun project! I hope I have shown you a few things that have piqued your interest. This reason I started with the Raspberry Pi Zero WH is that out of all of the Raspberry Pi versions that are available this is what I would consider the base model. Everything I have show you so far can be, and will be used on higher models of the Raspberry Pi and other Single-Board computers. I’ll see you in the next post!

RPi Zero W – Day 3 – Test Bench Setup

Today I wanted to share how I am setting up my test bench for those that are curious. I have decided to use the DINr plates from the folks over at since their design and implementation are second to none in my humble opinion.

As you can see from the photo below the board is securely fastened to the plate and then that plate is secured to the rail. All of the cables are zip tied to the plate which makes sure that the connections to your Single-Board Computer are not stressed out. The left micro-usb is power, the center micro-usb is for the WiFi dongle and the right is the micro-hdmi to hdmi converter.

dinrplate-dpz1 holding the RaspBerry Pi Zero W

I highly recommend this setup if your going to be testing with your boards like I am since I have not found anything that is even close to the features and stability of this since I worked at Kodak. Amazon link to the setup I am using – DIN Rail Mount for Raspberry Pi Zero

Today’s test is with “stress-ng” – Bogo Ops

Stress-ng measures a stress test “throughput” using “bogus operations per second“. The size of a bogo op depends on the stressor being run, and are not comparable between different stressors. They give some rough notion of performance but should not be used as an accurate bench marking figure. They are useful to see if performance changes between kernel versions or different compiler versions used to build stress-ng. One can also use them to get a notional rough comparison of performance between different systems.

They are NOT intended to be a scientifically accurate bench marking metric.

To install this program copy and paste:

sudo apt install stress-ng

To learn more about the program you can read the options:

stress-ng –help | less

and you can read the manual

man stress-ng

Then to run it you would copy and paste:

stress-ng –cpu 0 –io 2 –vm 1 –vm-bytes 1G –timeout 30s –metrics-brief

Even more information if you want to really understand the program:

Here are my results on both systems:


I will be working with stress-ng over the next few months to see just what I can do with it for future testing. If you know some good commands please share them below.

Here is the command I used on my brothers RaspBerry Pi 3

stress-ng –cpu 4 –io 2 –vm 1 –vm-bytes 256M –timeout 60s

stress-ng –cpu 4 –io 2 –vm 1 –vm-bytes 256M –timeout 60s –metrics



The idea behind these benchmarks is for you to see what the default setting provide you and then, if you want/need to, you can overclock your Single-Board Computer. Overclocking I will cover in later blogs.

So what’s next?

I have started with the command line testing with the RaspBerry Pi Zero W since that is where we can get the basic testing out of the way. The desktop environment on the RaspBerry Pi Zero is not very good for any kind of Internet testing. We will save that for the RaspBerry Pi 3. I will do all of the same tests on the RPi 3 so we can compare them against the RPi Zero W.


I has also planned on making this RaspBerry Pi Zero W into a USB dongle and I am also going to be adding the GPIO header to it.