IOT BIT (Formally Known As PiAnywhere V1.31) 4G & LTE Hat for the Raspberry Pi




About: Altitude Tech LTD is founded by professionals and students in the area of robotics, electronics and product design, which makes the team the heart of the company.

IOT BIT 4G & LTE Hat for the Raspberry Pi

4G (100 mbps down/ 50 mbps up) – Ultra fast internet connectivity for your raspberry pi, excellent for large downloads and video streaming.

TheIOT BIT 4G & LTE Hat for the Raspberry Pi Beta provides 4G mobile data for the Raspberry Pi mini computer. Our intelligent HAT module provides your Raspberry Pi with mobile data, GPS positioning information and battery support. This is the perfect module for hackers, scientists, and creators as it gives your Pi powerful connectivity wherever you are. Simple plug out module into your Raspberry Pi and start playing.

Find out more & order at

The HAT can integrate easily with the software on your operating system giving you access to general internet data through the mobile network. Using our API this hat gives you the ability to send SMS (text) messages. We also give easy access to the GPS onboard which exposes location data.

HAT Features

  • Supports any nano sim. Slot your sim card in and get going
  • 4G Mobile Data for the Raspberry Pi
  • Easy set-up, with a single terminal command setup our software to streamline Pi Anywhere with your Raspberry Pi.
  • Wake up your Pi or trigger events with text messages.
  • Optional external antenna for better reception.
  • High-efficiency power regulation up to 3 amps.
  • Use for external projects with a solar panel and battery pack.
  • It can be used in conjunction with our Sensly gas monitoring HAT

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Whats in the Box?

Step 1: Parts in the box

  • GPS Antenna
  • 1 4G antenna,
  • 1 3G antenna.
  • USB cable to connect to the Raspberry Pi.

Step 2: Put PiAnywhere Together With the Raspberry Pi

  • Raspberry Pi wall plug Into IOT BIT to power both IOT BIT and Raspberry Pi. ( You don't need to also plug in the Raspberry Pi).
  • Put the 2 antennas and the GPS antenna into IOT BIT.
  • Sim card into the IOT BIT (which you can buy from any major sim provider )
  • USB into the modem to connect to the Raspberry Pi.

Step 3: Setting Up the Raspberry Pi

Components needed for the Raspberry Pi to be operational:

  • Raspberry Pi 2 or 3.
  • Monitor.
  • Mouse and keyboard.
  • HDMI Cable.
  • Raspberry Pi Charger.
  • SD card (more than 8GB is required) with the latest version of Raspbian Jessie.

The guide to setup the Raspberry Pi software can be found at

The latest version of the Raspbian Jessie can be found at

Step 4: Connect the IOT BIT With Your Raspberry Pi

  • Connect the 40-pin of the IOT BIT with the 40-pin of the Raspberry Pi.
  • Connect the USB from the modem of the IOT BIT to the USB Slot of the Raspberry Pi.
  • Connect the Raspberry Pi charger to the power pin of the IOT BIT, the IOT BIT will power your Rasberry Pi.

  • For the IOT BIT to power, the Raspberry Pi, press the button that states PWR (power) in the IOT BIT.

Step 5: IOT BIT Easy Setup

There are multiple ways to get this up and running. The first is to download the disk image and flash it using Win32 Disk Imager. You will need an SD card that is 8GB or bigger. The link for the download is below:

To use turn on the IOT BIT by plugging in the power cable to the USB port labeled 5V Power. Next, we press the button marked btn to turn on the modem. We then connect the other USB port to the raspberry pi and finally turn on the raspberry pi by pressing the pwr button.

Also, you can use IOT BIT on a windows system. All you have to do is use these drivers and install them:

Step 6: Downoad and Install the Software.

Once the 2 boards are connected successfully and the power LED is on. The next task is to download the correct software for the IOT BIT to work with the Raspberry Pi. Using the latest version of Raspbian Jessie is recommended.

Open the terminal and type:

This should take around 30 minutes to complete as installing the kernel headers takes a long time. But once this is completed and your IOT BIT is connected via USB to the Raspberry Pi you should be able to run

  • lsusb | grep Qualcomm

And see a Qualcomm device connected. As a final check you can also run

  • ls /dev/ttyUSB*

And see 5 usb devices connected these are the virtual com ports for the modem.


Step 7: Set Up Wvdial and Connecting to the Internet

One of the important features of the IOT BIT 4G is its ability to connect to the internet using the mobile network, but for that, it needs to be configured to do so. This step will cover the link between the IOT BIT and the internet using the sim card information.

Now we need to configure the wvdial.conf file to enable IOT BIT to connect to the internet using your sim card. You will need the USSD code used to fetch the sim cards registered number. For example, on giffgaff this code is *99#. Or you can just use the sim cards phone number if you can't find the USSD code but just remember you will have to edit the file to change the number if you change the sim.

So we will need to open the file found in the iotbit_Install folder called wvdial.conf using a text editor of your choice.

  • sudo nano /home/pi/iotbit_Install/wvdial.conf

Then add to the file your USSD code or phone number in the 'Phone =' field. Then save and exit the file by pressing ctrl+x then y

We now need to move this file to the correct place to the system can find it.

  • sudo mv /etc/wvdial.conf /etc/wvdial.conf.bak
  • sudo mv /home/pi/iotbit_Install/wvdial.conf /etc/wvdial.conf

  • sudo wvdial

This last step takes around 30 seconds. If successful, you should be connected to the internet with your Raspberry Pi. Congratulations!

Step 8: Setting Up the Network Interface to Use the Modem Automatically

To enable the Pi to connect IOT BIT to the internet using the mobile network automatically, we use the following steps.

First, open the file called interfaces using:

  • sudo nano /etc/network/interfaces

Then add the following lines at the bottom of the file:

  • auto ppp0
  • iface ppp0 inet wvdial

Then reboot the Pi, ensuring that the PiAnywhere is on and the Modem USB port is connected to the Pi.

  • sudo reboot

If successful when the Raspberry Pi boots you should be able to connect to the internet using your IOT BIT.

Step 9: Enable the GPS

The IOT BIT has the GPS feature, but it needs to be activated. First, minicom needs to be installed in order to test the GPS. This is done by using the following command:

$sudo apt-get install minicom

This is a terminal that operates in the command window, enter the minicom terminal using:

minicom –D /dev/ttyUSB2

In order to operate the minicom press CTRL+A and then Z, this will show all the different options that can be used. The echo local will need to be enabled. This is done by pressing CTRL+A then E. Once this is enabled you can enable the GPS this is done by typing inside the minicom terminal:


It will show a message of Ok!
The to get the information of the GPS location use the following command:


Step 10: Congratulations!!!!

You have now gotten IOT BIT working, and you can do some amazing experiments with it. We are also running competitions for Instructables. If you buy an IOT BIT from us and you write an instructable about your project then we will give you up to 100% of your money back depending on the quality.

When you finish just tag us in it so we can take a look.

2 People Made This Project!


  • Instrument Contest

    Instrument Contest
  • Make it Glow Contest

    Make it Glow Contest
  • STEM Contest

    STEM Contest

52 Discussions


2 years ago

Just got mine up and running. The clocking of the SIM card is a factor I think for some and is not obvious. When the sim is installed correctly the blue network light flashes as opposed to being constantly lit.

I found for AT&T (US) that adding a APN init line was required to make a connection.

I have also got the GPS running ( downing the Modem and issuing the init command worked for me) and plan to use gpsd and traccar to do location tracking.

Thus far I am only seeing 10Mbps/3Mpbs speeds, but it likely is my locale.

In general a very nice HAT. I would LOVE to hear from @Altitude Tech on how to bypass the buttons and do auto startup for both the network and the PI. This is going to present a real challenge for a remote box. I did read about the microcontroller option below, but that seems like a horribly complex solution to what can likely be solved in firmware.

3 replies

Reply 4 months ago


"I would LOVE to hear from @Altitude Tech on how to bypass the buttons and do auto startup for both the network and the PI"

Did you find any solution for above issue, I am facing the same issue, my pibox is at remote location, I dont understand why there is button added to switch on the pianywhere. it should be auto started once powered up same as like pi. Please let me know the solution if you have found, or is there any other device same as this available in market?


Reply 6 weeks ago

Hi Vishalmote,

If you send us your board version in a message we can help you out.


Reply 1 year ago

anyway you can help me understand how you got gps working? I can bring down the dialer and then bring up minicom or run an active dialer and then bring up minicom. I've tried on USB1 2 and 3 and no matter what situation or combination I cannot get a 'OK' response for activating the gps module. This board has proved to be very finicky with regards to process of activation. I'm curious how you made this work?


Hi everyone!
Does anyone know if is it possible to reset the 4G hat modem using a script?
Thank you in advance.

1 reply

If you send AT+CRESET to the modem it will reset it in software. If you would like us to create a script for you just send us a private message and we can discuss your requirements.


Question 1 year ago

thanks for sharing this projet, however is it possible directly connect the camera directly with Sim7100 and have video streaming while control the Sim7100 module with host MCU?


Question 1 year ago

is there any schematic or eagle file for any development board of 7100E series ?


1 year ago

Hello Everyone, I finally succeeded with the IOT-BIT 3G with a Bell Canada account (i.e. North America version) ... After many trials, I finally figured out that the SIM card has to be inserted the cut corner facing the antenna connectors... which is not the "normal" standard since the corner cut should be located on the right side of the slot. Make sure that the "contacts" are facing the down :-). As explained into another post, the modem is working when the blue led is flashing. I think IOT-BIT is a good product and has been well designed. I'm also a hardware manufacturer and customer service should always be the first value of any serious company... If Altitude Tech may insert this value into their day-to-day work (i.e. answering emails, helping people to use their product, etc.) this would be a terrific product and they would sell a lot of them... Hope this will happen... I would order several dozens of them. Cheer, Mike (Montreal, Canada)


Question 1 year ago

I have the Americas version of this device (USA), to be used to add remote communication / file transfer capabilities to a sensor deployed several miles from my location. Are there any current suggestions/recommendations for SIM cards that will work with the device?


Question 1 year ago on Step 7

after wvdial configuration
I get error

--> WvDial: Internet dialer version 1.61
--> Initializing modem.
--> Sending: ATZ
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
--> Bad init string.
--> Initializing modem.
--> Sending: ATZ
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
--> Bad init string.
--> Initializing modem.
--> Sending: ATZ
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
--> Bad init string.


2 years ago

I purchased this device under the impression that it would work on any US carrier (because it says that it does in the product description) and after countless hours of setup, and countless more communicating with the Verizon rep, and a week of waiting for approval, I was told this cannot be added to the Verizon Wireless DMD and is NOT approved to be used on their network. I have reached out to Altitude for support while I was troubleshooting and never heard a peep once. I would stay away until this is further developed and the product description is updated to reflect accurate information. Please refund my money ASAP.

J. Félix OntañonP

2 years ago

My unit isn't working and PiAnywhere ( isn't helping. They stop responding my emails 10 days ago.

This instructable steps didn't worked. The vendor states the firmware need to be upgraded but it isn't working too.

I feel my money has been wasted.

$ dmesg | tail

[ 30.287958] usbcore: registered new interface driver usbserial

[ 30.288013] usbcore: registered new interface driver usbserial_generic

[ 30.288060] usbserial: USB Serial support registered for generic

[ 30.302848] usbcore: registered new interface driver Gobi

[ 30.302910] usbserial: USB Serial support registered for GobiSerial

[ 30.302922] GobiSerial: 2011-07-29-1026

root@raspberrypi:/home/pi/PiAnywhere_Update# ls /dev/ttySO /dev/ttyAMA0

/dev/ttyAMA0 /dev/ttySO

root@raspberrypi:~/PiAnywhere_Update $ ./

Enter the path to the update file e.g /pi/Pianywhere.binary or if it is in the same folder use Pianywhere.binary with the path


Can't init. Ensure that BOOT0 is enabled and reset device

Traceback (most recent call last):

File "", line 436, in <module>

bootversion = cmd.cmdGet()

File "", line 118, in cmdGet

if self.cmdGeneric(0x00):

File "", line 115, in cmdGeneric

return self._wait_for_ask(hex(cmd))

File "", line 91, in _wait_for_ask

raise CmdException("Unknown response. "+info+": "+hex(ask))

__main__.CmdException: Unknown response. 0x0: 0x1

2 replies

I got erros from the usb port everytime, pianywhere was delivering a broken usb cable :(

But with a right one everythings is working (i hope) :)


Reply 2 years ago

My cable just had the same issue. It worked fine for a couple months and then failed. The symptoms were overheating and high current draw on the Pi as well as kernel faults and hard locks of the pi. If anyone experiences these symptoms do check the usb cable!


2 years ago

Has anyone else noticed that the download site is down? I have also not received any responses from their support email address.


2 years ago

They send the wrong RF Adapter Cable SMA Female Connector to ipex for the GPS Adapter. Thats very annoying, because you did not get any answer if you contact the support. I've bought some cable by my one, but that must not be a option when ordering something.

John Doe Junior

2 years ago

Raspberry Pi 3 does not detect 4G HAT when connected to USB. Several different OSs are tested, but with the same result. All USB ports in RP3 are tested OK with other hardware.

The same documentation is available on all pages, as in this guide. Neither RP3 nor 4G HAT has the "pwr" or "btn" buttons.

There are very very long response times from the support. I feel left to myself.


2 years ago

Does anyone know whether its possible to query the power state of the device? I would like to be able to determine whether the device is on battery power or ac.


2 years ago

* Gps module everytime needs to be activated.
for myself, i fixed the issue by adding the following line to crontab.
echo "AT+CGPS=1" > /dev/ttyUSB3

* Another poor thing, PiAnywhere always must be activated by manually pushing 'btn' button and then 'pwr' button. Its not useful for remote installation instances.
I hope there is a way to make it manually on power up. ?

* I bought pre-installed SD card. On advertisement, it was written that ''SAMPLES'' but there were no sample on it. No script. I couldn't find anything?

* GPS initiliazing very fast. As given instructions on the page for different model i see. For 4G/LTE, /dev/ttyUSB1 is GPS Echo for NMEA stream. You can see the stream basicly with " $ cat /dev/ttyUSB1 " command (without quotes) easily. ttyUSB2 is Modem, ttyUSB3 is GPS terminal for AT+ command/query.
Tested with gpsd and initialstate, works well.

* Preloaded SD card comes with hostapd and isc-dhcpd-server.
You can easily use it as WiFi - 3G/4G dongle by adding a conf file for hostapd and modify dhcpd.conf. Default on dhcpd.conf gateway written like, don't forget to change this otherwise you wont able to route default traffic trough raspi.

I am planning to write useful tutorials for the product.
But need more information about few things ;
- Auto boot/start option as i mentioned above ?
- Modem AT+ set, or at least more specific details about chipset to find out full list of commands. To enable disable 4G/3G function.
- More information about all virtual interfaces /dev/ttyUSB0,1 etc.

Also have few advice ;
- A housing for sale might be good.
- Given USB cable is simple ugly cable. A slim and nice one (as pictured above) would be more useful and looks nice.