In this tutorial, I'm going to show you how to setup Apple AirPrint Server on a router running TomatoUSB firmware. This will allow you to print from your iOS device (iPhone, iPod, iPad) to your non-AirPrint-enabled printer through your router. If you're familiar with AirPrint Activator or FingerPrint, this solution is similar, except you don't have to keep your power hungry MAC/PC running 24/7.
Before I start, I want to give special thanks to @davygravy on the TomatoUSB.org forum. He was the one that ultimately made this all possible by compiling, re-compiling and fixing all the required packages.
Another thing, if you're familiar with my Tutorial on Apple AirPlay on TomatoUSB Router, these two tutorials (currently) are not compatible with each other. Meaning, you either go with AirPrint or AirPlay on your TomatoUSB Router, NOT BOTH. This is because the AirPrint tutorial uses Entware and this tutorial uses Optware, which isn't compatible with each other. Hopefully we're get this issue resolved in the near future.
Note: this tutorial is a work in progress (but working). I'll be updating and flushing out the details as time permits. Please excuse the typos and bad grammar.
YMMV (Your Mileage May Vary) depending on your Printer model.
What you'll need:
- Router with TomatoUSB installed*
- USB Flash Drive >1GB (will be completely wiped)
- USB or Wireless/Network Printer
* If you're looking for a recommendation on a router for this project, please check this post - [Tutorial] Apple AirPlay on TomatoUSB Router. You can pick up a router as low as $24.
Outline of Steps:
- Partition and Format USB Flash Drive*
- Install Optware
- Download and Install Required Packages
- Start CUPS and Configure Printer(s)
- Generate AirPrint Service File
- Startup DBus, Avahi and CUPS
- Test Print
- Configure the router so that everything works after a reboot
- CloudPrint (Bonus Content)
*Note that your USB Flash Drive will be completely wiped clean.1) Partition and Format USB Drive:
Plug in your USB drive and connect to your router via SSH (Putty) and execute the following commands:
#Partition your usb flash drive
umount /dev/sda1
fdisk /dev/sda
Type in the following commands to create a primary partition on your USB Flash drive
# p # list current partitions
# o # to delete all partitions
# n # new partition
# p # primary partition
# 1 (one) # first partition
# <enter> # default start block
# <enter> # default end block #use the whole flash drive
# w # write new partition to disk
#format newly created partition
#label disk as 'optware' case sensitive
umount /dev/sda1
mke2fs -j -L optware /dev/sda1
#mount partition as /opt
mount /dev/sda1 /opt
#Make sure /opt is properly mounted on a reboot.
echo "LABEL=optware /opt ext2 defaults 1 1" >> /etc/fstab
nvram setfile2nvram /etc/fstab
nvram commit
2) Install Optware
#Install Optware from scratch.
#Assumes drive is formated and mounted as /opt already
cd /tmp
wget http://tomatousb.org/local--files/tut:optware-installation/optware-install.sh -O - | tr -d '\r' > /tmp/optware-install.sh
chmod +x /tmp/optware-install.sh
sh /tmp/optware-install.sh
3) Download and Install Required Packages
#create a folder to store packages
mkdir -p /opt/ipkgs
cd /opt/ipkgs
#install wget-ssl (for https)
ipkg install wget-ssl
#download packages.
#cut/paste this whole section
/opt/bin/wget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/dbus_1.2.16-2_mipsel.ipk
/opt/bin/wget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/cups_1.5.4-1_mipsel.ipk
/opt/bin/wget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/poppler_0.12.4-1_mipsel.ipk
/opt/bin/wget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/py26-cups_1.9.62-1_mipsel.ipk
/opt/bin/wget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/ghostscript_8.71-3_mipsel.ipk
/opt/bin/wget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/hplip_3.11.7-1_mipsel.ipk
/opt/bin/wget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/gutenprint_5.2.9-1_mipsel.ipk
/opt/bin/wget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/cups-driver-gutenprint_5.2.9-1_mipsel.ipk
#install packages. this may take awhile.
#cut/paste this whole section
ipkg install /opt/ipkgs/dbus_1.2.16-2_mipsel.ipk
ipkg install /opt/ipkgs/cups_1.5.4-1_mipsel.ipk
ipkg install /opt/ipkgs/poppler_0.12.4-1_mipsel.ipk
ipkg install /opt/ipkgs/py26-cups_1.9.62-1_mipsel.ipk
ipkg install /opt/ipkgs/ghostscript_8.71-3_mipsel.ipk
ipkg install /opt/ipkgs/gutenprint_5.2.9-1_mipsel.ipk
ipkg install /opt/ipkgs/cups-driver-gutenprint_5.2.9-1_mipsel.ipk
#install hplip if you have a HP printer
#ipkg install /opt/ipkgs/hplip_3.11.7-1_mipsel.ipk
#install splix for Samsung printers
#ipkg install splix
#Color profiles for Samsung (untested)
#cd /opt/share/cups/model/samsung
#wget http://splix.ap2c.org/samsung_cms.tar.bz2
#tar xvjf samsung_cms.tar.bz2
#rm samsung_cms.tar.bz2
4) Start CUPS and Configure Printer(s)
#start cups
cupsd
Now open up your web browser and go to http://<RouterIPAddress>:631/admin (http://192.168.1.1:631/admin).
Click on "Manage Printers"->"hp990c"
Administration->Delete Printer (this printer was accidentally included)
If you're prompted for authentication, enter in root and your password.
Go back to Administration->Add Printer
In my case, I am using a Brother HL-2270DW which has built in wireless and supports various printing options - socket, ipp, http, etc. I'm going to use socket (AppSocket/HP JetDirect) which is the same option you would select if you had your USB printer directly connected to your router. Make sure you enable "USB Printer Support" in the Tomato GUI if you're using a USB attached printer.
For my wireless printer, the Connection address I'm using is "socket://<PrinterIPAddress>:9100" ( for the record "ipp://<PrinterIPAddress>/pcl_p1" would also work).
For a USB attached printer, the Connection address would be: "socket://<RouterIPAddress>:9100" (i.e., socket://192.168.1.1:9100)
Name your printer. Check the "Share This Printer" checkbox (not totally sure if this is required, but for now check it to be safe).
Select the Make/Model of your Printer. Basically you are selecting the drivers to use. For my Brother HL-2270DW, I went with "Generic"->"Generic PCL 6/PCL XL Printer".
Click Add Printer.
Set your Default Options.
Print a test page. Maintenance->Print Test Page.
Printing a test page needs to work. If not, you can not continue. Not all printers will work. Try different drivers (or a different printer).
Print a test page. Maintenance->Print Test Page.
Printing a test page needs to work. If not, you can not continue. Not all printers will work. Try different drivers (or a different printer).
5) Generate AirPrint Service File
Back in your SSH console session, execute the following:
killall cupsd
#create some needed mime types for AirPrint and iOS6
echo "image/urf urf string(0,UNIRAST<00>)" > /opt/share/cups/mime/airprint.types
echo "image/urf application/pdf 100 pdftoraster" > /opt/share/cups/mime/airprint.convs
#Start CUPS
cupsd
#make airprint folder
mkdir -p /opt/airprint
cd /opt/airprint
#Download airprint-generate.py
#this is all one line
/opt/bin/wget --no-check-certificate https://raw.github.com/tjfontaine/airprint-generate/master/airprint-generate.py#set the script to be executable
chmod 755 ./airprint-generate.py
#Generate airprint service file
cd /opt/etc/avahi/services
python2.6 /opt/airprint/airprint-generate.py
#There should be a
#AirPrint-<PrinterName>.service file listed
ls
#Stop CUPS
killall cupsd
6) Startup DBus, Avahi (aka Bonjour) and CUPS
#Required for Avahi and dbus
#Ignore the warning
adduser avahi
addgroup netdev
#delete orphan pid files in case they exist
rm /opt/var/run/dbus/pid
rm /opt/var/run/avahi-daemon/pid
#start dbus before avahi
/opt/etc/init.d/S20dbus start
#start avahi (aka bonjour)
avahi-daemon -D
#Start CUPS
cupsd
#verify that your printer is being advertise
avahi-browse --terminate --resolve _ipp._tcp
7) Test Print
From your iPhone/iPad/iPod, do a test print.
8) Configure the router so that everything works after a reboot
Go to USB and NAS -> USB Support (http://192.168.1.1/nas-usb.asp).
In the "Run after mounting" section add the following:
#start dbus before avahi
/opt/etc/init.d/S20dbus start
#start avahi (aka bonjour)
avahi-daemon -D
#Start CUPS
cupsd
In the "Run before unmounting" section add the following:
#run before unmounting
killall cupsd
avahi-daemon -k
/opt/etc/init.d/S20dbus stop
You're done. Enjoy!
9) Google CloudPrint (Bonus Content - Work In Progress)
ipkg install git
cd /opt
One more thing regarding CloudPrint, my recommendation is to set up a new Google Account dedicated just for CloudPrint. Use this account for the above cloudprint login, and then share your printer(s) with your main account. I'm a little paranoid of having my email authentication stored on my router (even though its hashed or whatever).
If you get AirPrint working with your printer, please leave a comment with your printer model and drivers used. This will help other users. Thanks
Please leave a comment with any questions or feedback. Thanks
[Update 4/9/2013] Please check out my PogoPlug Tutorial below. A PogoPlug running Arch Linux ARM is the perfect companion to your TomatoUSB Router. I highly recommend that you run AirPlay/AirPrint on the PogoPlug versus your TomatoUSB router.
[Tutorial] - PogoPlug E02 with Arch Linux ARM - NAS (Samba4), AirPlay, AirPrint, Google CloudPrint
In the "Run after mounting" section add the following:
#Required for avahi and dbus
adduser avahi
addgroup netdev
#delete orphan pid files in case they exist
rm /opt/var/run/dbus/pid
rm /opt/var/run/avahi-daemon/pid
adduser avahi
addgroup netdev
#delete orphan pid files in case they exist
rm /opt/var/run/dbus/pid
rm /opt/var/run/avahi-daemon/pid
#start dbus before avahi
/opt/etc/init.d/S20dbus start
#start avahi (aka bonjour)
avahi-daemon -D
#Start CUPS
cupsd
In the "Run before unmounting" section add the following:
#run before unmounting
killall cupsd
avahi-daemon -k
/opt/etc/init.d/S20dbus stop
You're done. Enjoy!
9) Google CloudPrint (Bonus Content - Work In Progress)
ipkg install git
cd /opt
git clone git://github.com/armooo/cloudprint
cd /opt/cloudprint
python2.6 setup.py build
python2.6 setup.py install
cd /opt/cloudprint
python2.6 setup.py build
python2.6 setup.py install
#Run once to create credential files
#give it about a minute to start up
/opt/local/bin/cloudprint
#give it about a minute to start up
/opt/local/bin/cloudprint
#enter your google account email and password
#Google username:
#Password:
#Google username:
#Password:
#test print from your Chrome browser
#Control+C to close cloudprint
#copy your cloudprint authentication files to /opt
cp /tmp/home/root/.cloudprintauth /opt/cloudprint
cp /tmp/home/root/.cloudprintsaslauth /opt/cloudprint
To have cloudprint start automatically on reboot. Go to USB and NAS -> USB Support (http://192.168.1.1/nas-usb.asp). In the "Run after mounting" section add the following:
#copy back cloudprint authentication files to /tmp
cp /opt/cloudprint/.cloudprintauth /tmp/home/root/
Cloudprint is very fragile. If you're having start-up or printing issues try the following steps.
- Clear your Google CloudPrint Print Queue - https://www.google.com/cloudprint/#jobs
- Delete your stored credential and reboot and start over.
#Control+C to close cloudprint
#copy your cloudprint authentication files to /opt
cp /tmp/home/root/.cloudprintauth /opt/cloudprint
cp /tmp/home/root/.cloudprintsaslauth /opt/cloudprint
To have cloudprint start automatically on reboot. Go to USB and NAS -> USB Support (http://192.168.1.1/nas-usb.asp). In the "Run after mounting" section add the following:
#copy back cloudprint authentication files to /tmp
cp /opt/cloudprint/.cloudprintauth /tmp/home/root/
cp /opt/cloudprint/.cloudprintsaslauth /tmp/home/root/
/opt/local/bin/cloudprint &
In the "Run before unmounting" section add the following:
killall cloudprint
/opt/local/bin/cloudprint &
In the "Run before unmounting" section add the following:
killall cloudprint
- Clear your Google CloudPrint Print Queue - https://www.google.com/cloudprint/#jobs
- Delete your stored credential and reboot and start over.
One more thing regarding CloudPrint, my recommendation is to set up a new Google Account dedicated just for CloudPrint. Use this account for the above cloudprint login, and then share your printer(s) with your main account. I'm a little paranoid of having my email authentication stored on my router (even though its hashed or whatever).
If you get AirPrint working with your printer, please leave a comment with your printer model and drivers used. This will help other users. Thanks
Please leave a comment with any questions or feedback. Thanks
[Update 4/9/2013] Please check out my PogoPlug Tutorial below. A PogoPlug running Arch Linux ARM is the perfect companion to your TomatoUSB Router. I highly recommend that you run AirPlay/AirPrint on the PogoPlug versus your TomatoUSB router.
[Tutorial] - PogoPlug E02 with Arch Linux ARM - NAS (Samba4), AirPlay, AirPrint, Google CloudPrint
Hi,
ReplyDeleteWhen I go to download the packages, I am getting the error.
onnecting to dl.dropbox.com (107.21.253.161:80)
wget: can't open 'dbus_1.2.16-2_mipsel.ipk': Read-only file system
any idea why??
Thanks.
Brett, doesn't sound like you are in the right directory.
DeleteNote the following two commands before the wget.
#create a folder to store packages
mkdir /opt/ipkgs
cd /opt/ipkgs
You should be downloading to /opt/ipkgs
nice work buddy check this too it will helpmission mangal download
DeleteHi,
ReplyDeleteSo, I definitely went through the steps again. Everything was as is, yet it didn't download...same error. I tried removing and recreating the dir, and then I decided to check the wget parameters. For whatever reason when I executed the mkdir/cd commands it just wouldn't do it. No errors, it seemed to change, but didnt. I used the -P flag and manually stated the dir and that seemed to work.
Strange. You shouldn't need the -p option since the /opt directory should already exist. I went ahead and updated the tutorial and added the -p, since it doesn't hurt anything to use it. Thanks for letting me know.
DeleteHi again,
ReplyDeleteI am now stuck in the CUPS config. It will not accept the credentials to add/delete a printer. I have tried 2 browsers and cleared the cache/stored data/pw's etc. Any idea whats going on?
Thanks,
Brett
No idea. The username (root) and password should be the same as what you used to access the Tomato GUI via your web browser and SSH. I'll upload a full ssh console output in the next couple of days so you can compare. I might even make a YouTube video of the process. Please keep me updated on your progress. Thanks
DeleteYou probably have SSH login via password disabled.
DeleteHi,
ReplyDeleteSo, I have not ideas as to how to move forward. I dont know why it will not accept the user name as root, and my router password. Ive tried changing the password as well in the router. stuck at this cups page :/
Bret
Hey Brett,
DeleteSorry to hear you're still not able to get AirPrint working. I experienced this exact issue on my journey to getting AirPrint working. Never was able to resolve it and just blame it on a bad build of CUPS.
I can't say for certain what causing your issue, but I do know that the tutorial works if you start from step 1. Did you start from step 1 or did you already have a pre-existing optware installation?
If you started from step 1, try restoring the default configuration and starting fresh. Erase all data in NVRAM memory (thorough) @ http://192.168.1.1/admin-config.asp
Hang in there, we'll figure it out.
You can also contact me via email .
When I run the line
ReplyDeleteavahi-browse --terminate --resolve _ipp._tcp
there is no output at all.
I can print test page from the cups interface but iPad doesnt detect the printer.
Sorry, there was a run-on command in step 5 (Generate AirPrint Service File), which I just fixed. Please re-do step 5 and verify that a AirPrint-.service file exist in the /opt/etc/avahi/services folder. Please keep me updated. Thanks.
Delete.service file exists!
Deleteipad detects printer too.
Printer queue is however stuck saying
" processing since
Thu Mar 14 21:41:48 2013
"Processing page 1...""
When I manually deleted the job the file printed succesfully. :S
DeleteMaybe trying giving it a little more time? Not sure.
Deletecancelling the job doesnt help anymore. it just remains stuck at processing page 1
Deleteno longer prints at all
Deletejust says "pending since
Fri Mar 15 00:09:39 2013 "
I fixed the problem by changing the generic driver to hp driver for my printer model !
DeleteStill prints agonizingly slowly. Hope to fix that too.
Thanks for the update. This is good to know for other users that may experienced this issue.
DeleteHi,
ReplyDeleteI am giving this a go again starting from scratch. Although, everything up to the CUPS server worked, I am trying a different machine using putty instead of my Mac's terminal interface....I will update you with my results.
Brett
Hi,
ReplyDeleteI believe I have everything worked out. One thing I that was left unmentioned is that it seems you need to have either a usb hub or two usb ports for this to work, am I correct? unplugging the flash drive to plug in the printer loses all of the software...
Hey Bret, glad to hear you got it working. Yeah, you can't unplug the flash drive :). If you have a regular usb attached printer, yes, you will need a router with two usb ports or a usb hub. In my case, I'm printing to a wireless network printer, so I would only need one usb port for the flash drive. -Qui
DeleteHi,
ReplyDeleteI have a samsung clx-3180 printer. I followed the instructions, but unable to print the Test page. During installation, I did not get any error during installation. When I do a test print, my printer give print success sound without printing any pages. What could be wrong? Any help will be appreciated.
thanks
Ajay
Hi Ajay,
DeleteWhat print drivers are you using? From what I understand, Samsung use proprietary printing language. Try installing splix (ipkg install splix) and using a driver that closely matches your printer (clx-3160). Let me know if you get further. YMMV regarding printers.
Qui
When I run ipkg install splix, I get error - package not found. Where do I need to download it? How to download it? thanks
DeleteHi,
DeleteI got this package installed, but now when I do a test print, I am getting message ""SpliX Cannot open CMS file /opt/share/cups/model/samsung/cms/CLX-3160cms (2)" and nothing is getting printed. Any idea?
thanks
Ajay,
DeleteTake a look at this http://www.openprinting.org/driver/splix/. Sounds like you need some "color profiles". Not sure how/where you would get them. My suggestion is to try a black/white driver. Color at this point is probably not possible.
Qui
"Color printers needs color profile files to get better results. These
Deletefiles are provided by your printer manufacturer and you have to install them
manually. To do that, download the linux official drivers and locate the "cms"
directory." - So it sounds like you can try to download and extract these color profiles from the official linux driver and place them in the /opt/share/cups/model/samsung/cms/CLX-3160cms folder. Worth a shot.
I think you might be in luck. Try the following set of commands:
Deletecd /opt/share/cups/model/samsung
wget http://splix.ap2c.org/samsung_cms.tar.bz2
tar xvjf samsung_cms.tar.bz2
rm samsung_cms.tar.bz2
Thanks Qui. I got the error message taken care of. But no test page yet. In the status page, it says Printing is successful, but nothing is printed from the printer. Is it possible that CLX-3160 is not compatible with CLX-3180?
Deletethanks
Ajay
Yes. Try a different driver (B/W only).
DeleteQui,
DeleteI tried all the driver, but test page is not getting printed. In the CUPS admin screen, it says Successful but nothing is printing. Any idea?
thanks
Ajay
Hi,
ReplyDeleteExcelent tutorial. Thanks!
Only difficulty i have when printing pages with rasters from iOS is:
/opt/lib/cups/filter/pstoraster failed
Befor that I can see something like this in the cups log:
width = 4800, height = 6639
PageSize = [ 595 841 ], HWResolution = [ 600 600 ]
Which seems strange, as I only try to print from iOS's Notes.
In the router's log:
prnt/hpcups/HPCupsFilter.cpp 511: cupsRasterOpen failed, fd = 0
Did you test page print okay? What's your printer model and what driver have you tried? Try a different driver.
DeleteTest page went okay. The printer is a multifunction device HP Deskjet F300 Series and the driver się from hplip, the hpcups version. Other drivers don't work at all.
ReplyDeleteMy router is ASUS RT-N16 with Tomatousb 1.28 with optware of course.
As I said printing simple text or simple webpages from iOS works well, the problem occurs while trying to print put of Notes or something with big images or background. Maybe a problem with memory or rescaling?
I think I might have this exact printer at home somewhere. Not sure if it has any ink, but if I have some time this weekend I'll give it a test.
DeleteHi,
DeleteAny chance on testing this? :)
I've done some trials. For this particular printer there are two drivers: hpcups and hpijs. The hpijs doesn't work at all (error on testpage print). The hpcups works while printing test page from cups webpage, but doesn't work while printing from iOS.
Bottom lines I'm still stuck with this error.
thanks for the tutorial. I have ASUS RT-N16. Followed your instructions. I am able to print test page, but can't start google cloud print:
ReplyDeleteTomato v1.28.9054 MIPSR2-beta K26 USB Ext
root@router:/tmp/home/root# /opt/local/bin/cloudprint
Traceback (most recent call last):
File "/opt/local/bin/cloudprint", line 8, in
load_entry_point('cloudprint==0.9', 'console_scripts', 'cloudprint')()
File "build/bdist.linux-mips/egg/cloudprint/cloudprint.py", line 418, in main
RuntimeError: failed to connect to server
Any suggestion?
Hello Soleen,
DeleteLine 418 - cups_connection = cups.Connection()
Doesn't sound like you have CUPS running.
Qui
Hi Qui,
DeleteIt worked! I restarted cupsd and cloudprint started fine! Thanks again for the great tutorial!
I got Airprint working but I can only print in B/W !! How do I print in color? I have an HP printer
ReplyDeleteTry a different driver and let us know if you get it working :)
DeleteHi Qui, thanks for this tutorial.
ReplyDeleteEverything seemed to work out ok and I started cupsd, but when i visit the CUPS admin page, it get Internal Server Error.
I can visit the CUPS homepage fine, just not any of the tabs, like admin, printers, etc.
Have you seen this before?
(i did not start from a clean install, as I had tomato set up already, with transmission already running)
@schmichael,
DeleteHard to say what the issue is. Might be easier if you started from a clean install and re-configure transmission (backup your transmission config).
If you go this route I would recommend running Shibby's AIO TomatoUSB version, which is what I'm using on my Asus RT-N16 acting as my primary router and has Transmission client built right into the firmware with a nice Web Interface to config it.
http://tomato.groov.pl/download/K26/build5x-108-EN/tomato-K26USB-1.28.RT-MIPSR2-108-AIO.trx
Hi everyone,
ReplyDeleteI've followed the instructions to get CUPS working with my Brother HL-2140 printer to work on my RT-N16, but I'm getting stuck at the test page part.
I've tried several drivers, including the generic ones for PCL 5e and those for Brother alternatives. Most of those drivers start the printer for a few seconds, but then nothing actually prints. I've also tried using the PPD from OpenPrinting.org (www.openprinting.org/printer/Brother/Brother-HL-2140).
In the process of trying to get the PPD driver working, I've also had to install foomatic-rip (using hpijs package) and perl, which installed fine. Now I'm running into a situation where the print job renderer (KID4) is logging the following error:
D [05/Jan/2010:09:07:06 -0800] [Job 3] sh: gs: command not found
Some Google searching (http://mybookworld.wikidot.com/forum/t-144918/cups-problems) revealed the following solution (#3 on the reply post):
3) Also, gs was not linked in /usr/bin, since I found the following in the logs:
D [05/Jan/2010:09:07:06 -0800] [Job 3] sh: gs: command not found
So I created the missing link to gs in the /usr/bin
#ln -s /opt/bin/gs /usr/bin/
However, I cannot create the symlink in /usr/bin/ because it's read only.
Anybody know a solution for creating this symlink for gs in /usr/bin/? Thanks in advance.
Sorry for the late reply. Tomato's file system is read only. Did you ever get the HL-2140 working? Most likely its the drivers. I'm surprise the generic PCL drivers are not working. I don't think the foomatic-rip included in hpijs package is compatible with all the other packages..
DeleteI get a 404 for one of the files :
ReplyDeletewget http://dl.dropbox.com/u/42238/TomatoUSB/Optware/gutenprint_5.2.9-1_mipsel.ipkwget
Connecting to dl.dropbox.com (54.243.118.43:80)
wget: server returned error: HTTP/1.1 404 NOT FOUND
I'm not sure if it will be required, but I'm guessing it will.
I copy and pasted the link, I don't think I missed a character ?
I found the problem. The wget from the next line is appended : http://dl.dropbox.com/u/42238/TomatoUSB/Optware/gutenprint_5.2.9-1_mipsel.ipkwget
ReplyDeleteShould be :
http://dl.dropbox.com/u/42238/TomatoUSB/Optware/gutenprint_5.2.9-1_mipsel.ipk wget
Is it necessary to have a flash drive greater than 1GB? I have multiple 1GB drives lying around unused. Will those work?
ReplyDeleteMaybe. I'm not sure if everything will fit. Give it a try.
Delete1GB drive doesn't work.
DeleteI had some trouble printing a test page for a Canon MX870 printer, until I found the following link:
ReplyDeletehttp://forums.linuxmint.com/viewtopic.php?f=51&t=28486
I believe the necessary command lines were:
cd /opt/ipkgs
ipkg install optware-devel
ipkg install buildroot
ipkg install cups-dev
wget http://downloads.sourceforge.net/project/cups-bjnp/cups-bjnp/1.2.1/cups-bjnp-1.2.1.tar.gz
gunzip cups-bjnp-1.2.1.tar.gz
tar -xvf cups-bjnp-1.2.1.tar
cd cups-bjnp-1.2.1
./configure
make install
Then go back to "http://:631/admin".
Add printer, choosing ipp and address bjnp://
Yeah!! This^^ helps!
DeleteNow i can print a test page with my Canon MP640...
Thx
Thank you random guid!
DeleteAwesome guide. Got everything to work. However, printing is unbelievably slow. Any log files I should be looking at?
ReplyDeleteI changed default options in the server to a lower DPI and the speed got better. This is only when printing from iOS because you can't set printer options and it uses defaults.
DeletePrinter: Canon MP180
Thanks for the feedback. Glad you got it working. Did you have compile and install the cups-bjnp package to get your Canon MP180 to work?
DeleteYeah, these routers with their MIPS processors are very slow. If you want a little more speed/power, consider picking up a PogoPlug.
I can print a test page from CUPS and my ipad sees the printer. However, it won't print anything. The CUPS page shows no indication of receiving a job either.
ReplyDeleteIs there something I'm missing? Thank you so much for this tutorial.
Not sure. Check the CUPS logs to see if the AirPrint job even makes it to CUPS. What model printer? Just curious.
DeleteIf I wait, a double sided option appears. Turning double sided off gets the job to CUPS and it does print.
DeleteAlso, I'm using a Brother HL4150cdn with a brother 4050 cups driver.
Glad to hear you got it working. Yeah, I don't think duplexing works.
DeleteHello,
ReplyDeleteI have a HP Laserjet m1136 printer. I tried all the drivers and even the generic ones, but the test page does not print. I get this error : "/opt/lib/cups/filter/hpcups failed". Any help?
Sorry, sounds like a driver issue. My only recommendation would be to try a different printer.
DeleteIs there a way to add the foo2qpdl driver to tomato?
ReplyDeleteI got
ReplyDeletewget: bad address 'ipkg.nslu2-linux.org'
is that ok??
Full log:
Deleteroot@tomatoRAF:/tmp# sh /tmp/optware-install.sh
Checking system config ...
Using 171.97.62.1 as the default gateway.
Using the following nameserver(s):
nameserver 127.0.0.1
Installing package uclibc-opt_0.9.28-13_mipsel.ipk ...
Some newer versions of DD-WRT does not show download progress bar,
so just be patient - or check STATUS -> BANDWIDTH tab for download
activity in your routers Web-GUI, and then still wait a minute or two.
wget: bad address 'ipkg.nslu2-linux.org'
tar: can't open '/tmp/uclibc-opt_0.9.28-13_mipsel.ipk': No such file or directory
tar: can't open '/tmp/control.tar.gz': No such file or directory
tar: can't open '/tmp/data.tar.gz': No such file or directory
Installing package ipkg-opt_0.99.163-10_mipsel.ipk ...
Some newer versions of DD-WRT does not show download progress bar,
so just be patient - or check STATUS -> BANDWIDTH tab for download
activity in your routers Web-GUI, and then still wait a minute or two.
wget: bad address 'ipkg.nslu2-linux.org'
tar: can't open '/tmp/ipkg-opt_0.99.163-10_mipsel.ipk': No such file or directory
tar: can't open '/tmp/control.tar.gz': No such file or directory
tar: can't open '/tmp/data.tar.gz': No such file or directory
/tmp/optware-install.sh: line 102: /opt/sbin/ldconfig: not found
/tmp/optware-install.sh: line 103: /opt/bin/ipkg: not found
/tmp/optware-install.sh: line 104: /opt/bin/ipkg: not found
/tmp/optware-install.sh: line 105: /opt/bin/ipkg: not found
Solved!!
DeleteChanged DNS to 8.8.8.8 and 8.8.4.4
Hi,
ReplyDeleteI followed it to letter and got the print page as well from CUPS.
The Airprint*.service xml has also been created and I can see it publishes as below
--------------------------------------------------------------------------------------
root@Tomato:/opt/etc/avahi/services# avahi-browse --terminate --resolve _ipp._tcp
+ br0 IPv4 AirPrint Epson-NX420 @ Tomato _ipp._tcp local
= br0 IPv4 AirPrint Epson-NX420 @ Tomato _ipp._tcp local
hostname = [Tomato.local]
address = [192.168.2.1]
port = [631]
txt = ["pdl=application/octet-stream,application/pdf,application/postscript,application/vnd.cups-raster,image/gif,image/jpeg,image/png,image/tiff,text/html,text/plain,application/vnd.cups-banner,application/vnd.cups-command,application/vnd.cups-pdf" "printer-type=0x80900c" "printer-state=3" "product=(GPL Ghostscript)" "note=Epson inkjet printer NX420" "rp=printers/Epson-
NX420" "URF=none" "Transparent=T" "qtotal=1" "txtvers=1"]
--------------------------------------------------------------------------------------
However my Iphone( IOS7 ) nor ipod(IOS6) are not abel to find the printer.
what should be done.
FYI.. I did this on Belkin Share N300 router
DeleteNot sure why you're not seeing the printer. Can I assume this is your only router?
Deleteyes
DeleteAnything other information you may be leaving out that is relevant? Did you really follow the tutorial exactly from start to finish? Running Shibby's version of TomatoUSB, etc?
DeleteJust so we're clear, I meant to ask if this was your only router on your network. I noticed the IP of the router is set to 192.168.2.1, which isn't the default so I had to ask.
Have you completed step 8 and rebooted?
Yes, i followed it word by word. and Yes I have only 1 router. I can still print well from CUPS.
Deletehave tried Rebooting Router( and veryfied using "avahi-browse --terminate --resolve _ipp._tcp") and iphone5.
still no luck. Yes my router is set to 192.168.2.1, should i try to default it to 192.168.1.1
I was playing with it while reading - http://ubuntuforums.org/showthread.php?t=2060594 and then rebooted the router and voila, it got up.. can see it in my Iphone now..( Not sure if i made any significant change, so ur instructions are stil golden)
Deleteits different story that each job fails with this error "/opt/lib/cups/filter/pstoraster failed". looking in cups folder I do not see any pstoraster at all :-)
This comment has been removed by the author.
ReplyDeleteHi Qui
ReplyDeleteWhile I can start cloudprint manually from a telnet session but I'm having trouble to get it to start automatically after the router reboots, power flash etc. I tried this script in USB NAS script as suggested but cloudprint does not start. I can see cupsd and ahavi but no cloudprint with ps|tail and no log files record either. I tried to move the script to admin firewall but that does not work either.
My startup script reads
#Required for avahi and dbus
adduser avahi
addgroup netdev
#delete orphan pid files in case they exist
rm /opt/var/run/dbus/pid
rm /opt/var/run/avahi-daemon/pid
#start dbus before avahi
/opt/etc/init.d/S20dbus start
#start avahi (aka bonjour)
avahi-daemon -D
#Start CUPS
cupsd
copy back cloudprint authentication files to /tmp
cp /opt/cloudprint/.cloudprintauth /tmp/home/root/
cp /opt/cloudprint/.cloudprintauth.sasl /tmp/home/root/
/opt/local/bin/cloudprint &
Please help.
Frank Hull
PS you need to correct a typo in your tutorial to read /opt/cloudprint/.cloudprintauth.sasl /tmp/home/root/
Sorry for the support late reply. This is for future readers I guess.
DeleteCloudprint is started via the following line: "/opt/local/bin/cloudprint &". Simply as that. Double check that it runs correctly from the command line would be a good start.
Hi Qui,
ReplyDeleteThank you for your tutorial, im getting an error is step 4, in adding a new printer, after im filling the Name, Description and Location, im getting the bellow error:
Add Printer HP_LaserJet1200 Error
Unable to get list of printer drivers:
Internal Server Error
Add Printer HP_LaserJet1200 Error
Unable to get list of printer drivers:
Internal Server Error
Any idea how to resolve this issue ?
Regards
Ahmed
i am having the same problem as Ahmed, but with epson tx121 printer.
Deleteany insight on this?
Thanks, mufti
I reinstall gutenprint and cups-driver-gutenprint, and now I can select my printer driver.
DeleteBut I am still unable to print a test page.. :(
Try a different driver or printer.
DeleteHi Qui, I have tried various driver but could not get it working. However, I did some search at Gutenprint site and found that my printer driver is available on version 5.2.10. I just don't know where to find the ipk file or how to compile the source file on tomato. Any advise?
DeleteI have same problem
Deletethe State shows "The PPD version (5.2.10) is not compatible with Gutenprint 5.2.9."
I need to install Gutenprint 5.2.10 ,but I cant find the 5.2.10 ipk on the internet.
If someone can compile it please help me.
Hello, Can I install only google cloudprint without installing avahi and cups? I don't need to print from IOS devices. thanks
ReplyDeleteNo. The only part you can skip is the generation of the AirPrint service file. :)
DeleteHi while I am downloading Required Packages getting massage "wget: not an http or ftp url" any suggestions !
ReplyDeleteRun the following. Sorry, dropbox updated all their links to be https.
Delete#install wget-ssl (for https)
ipkg install wget-ssl
I'm getting that error too. I installed wget-ssl and still get the error. Any suggestions?
Deleterun "which wget" and post the result. Then try "/opt/bin/wget"
DeleteWill have to start over. I manually copied the install files instead of using wget. Got cups going and was able to do a test print. But when the router rebooted I get permission denied errors when I try to run s20dbus... No idea why. Got to start over!
DeleteOk. Started over. Had to use /opt/bin/wget --no-check-certificate to get wget working. Installed the first dbus package like a charm. Only thing is it warns 'messagebus user not found' and my prefix login in SSH says 'root@unknown'. Not sure if it is important. Anyhow thanks for that clarification. Continuing on..
DeleteHello, I can not find a driver for my Canon MF4700 Series printer, any help and suggestion is appreciate !
ReplyDeleteHi, During Google cloud print set up while i enter ' /opt/local/bin/cloudprint ' i am getting error 'ImportError: No module named argparse '
ReplyDeleteany help and suggestion is appreciate !
Im getting the same error!
DeleteSorry, this is not something I personal use anymore. The issue is mostly a mismatch of code. Try to get a older version of cloudprint somehow.
DeleteTry to use the cloudprint package from davygravy - https://dl.dropboxusercontent.com/u/1015928/ddwrt/airprint-materials/setup%20directions. Let me know.
DeleteThere really is no need for google cloudprint if you use chrome browser but it would be neat to have it installed. Anyhow I just put in a micro sd card in my rt-n66u and starting the tutorial over. No more need for usb drive!
DeleteThanks for writing this guide! It works now! But it is very very slow! Takes three minutes from clicking print on the ipad to cupsd starting the print process. Maybe its because my networks settings are messy? I have two dhcp clients. Top router is an R7000 running DDWRT BS build ip 192.168.1.100-199 and then RT-N66U with Tomato-USB DHCP 192.168.1.200-251. Have an HP Deskjet 5400 connected to the RT-N66U. Thanks.
ReplyDeleteYes, it is slow because the CPU in your router isn't really designed to do this type of work (it is not your "messy" network). As the tutorial stated, my recommendation is to use Pogoplug.
DeleteWhat drive did you end up using with the HP Deskjet 5400?
Hi, I can now print via Airprint but have one problem. I cant access the printer on the network from another computer.
ReplyDeleteWhen I try to add the printer in windows as a TCP/Ip printer at 192.168.1.1:9100 the printer moves for a second and I install the drivers but the print jobs fail. But airprint works flawlessly!
I figured it out. I had to access the printer at http://192.168.1.1:631/printers/Printername
ReplyDeleteHey Qui,
ReplyDeleteWas wondering if its possible to add another airprint printer that prints to pdf files on a network share?
thanks
hi Qui
ReplyDeleteThanks for the great tutorial
i have followed the steps but i received this issue on asus ac68r latest shibby tomato
Connecting to tomatousb.org (107.20.139.170:80)
Connecting to tomatousb.wdfiles.com (54.165.148.181:80)
- 100% |*******************************| 2826 0:00:00 ETA
root@Home:/tmp# chmod +x /tmp/optware-install.sh
root@Home:/tmp# sh /tmp/optware-install.sh
Checking system config ...
Using 10.3.150.1
192.168.1.1 as the default gateway.
Using the following nameserver(s):
nameserver 127.0.0.1
Installing package uclibc-opt_0.9.28-13_mipsel.ipk ...
Some newer versions of DD-WRT does not show download progress bar,
so just be patient - or check STATUS -> BANDWIDTH tab for download
activity in your routers Web-GUI, and then still wait a minute or two.
Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
uclibc-opt_0.9.28-13 100% |*******************************| 832k 0:00:00 ETA
Updating /opt/etc/ld.so.cache
/opt/sbin/ldconfig: line 1: syntax error: unexpected "("
Installing package ipkg-opt_0.99.163-10_mipsel.ipk ...
Some newer versions of DD-WRT does not show download progress bar,
so just be patient - or check STATUS -> BANDWIDTH tab for download
activity in your routers Web-GUI, and then still wait a minute or two.
Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
ipkg-opt_0.99.163-10 100% |*******************************| 75850 0:00:00 ETA
/opt/sbin/ldconfig: line 1: syntax error: unexpected "("
/opt/bin/ipkg: line 1:EL@4▒: not found
/opt/bin/ipkg: line 2: syntax error: unexpected "("
/opt/bin/ipkg: line 1:EL@4▒: not found
/opt/bin/ipkg: line 2: syntax error: unexpected "("
/opt/bin/ipkg: line 1:EL@4▒: not found
/opt/bin/ipkg: line 2: syntax error: unexpected "("
thanks in advance
i am having same prob any sol?
DeleteI've gotten CUPS working & printing fine, but the iDevices aren't seeing the printer. Avahi-browse in the terminal returns:
ReplyDelete+ br0 IPv4 Brother HL-2270DW series _ipp._tcp local
= br0 IPv4 Brother HL-2270DW series _ipp._tcp local
hostname = [BRN30055C07961B.local]
address = [192.168.1.155]
port = [631]
txt = ["TBCP=F" "Transparent=T" "Binary=T" "PaperCustom=T" "Duplex=T" "Copies=T" "Color=F" "usb_MDL=HL-2270DW series" "usb_MFG=Brother" "priority=50" "adminurl=http://BRN30055C07961B.local./" "product=(Brother HL-2270DW series)" "ty=Brother HL-2270DW series" "rp=duerqxesz5090" "pdl=application/vnd.hp-PCL" "qtotal=1" "txtvers=1"]
Any troubleshooting ideas?
Sorry, this is not something I'm using anymore and can not provide any support. As stated, I've transition AirPrint to my Pogoplug.
DeleteThis is because the AirPrint tutorial uses Entware and this tutorial uses Optware, which isn't compatible with each other. Printers Reviews
ReplyDeleteThis is because the AirPrint tutorial uses Entware and this tutorial uses Optware, which isn't compatible with each other. Printers Reviews
ReplyDeleteinteresting problem for me... it installs an older CUPS than the file I've downloaded no matter what options I've chosen in ipkg. Regardless, I am getting "can't load library libresolv.so.o" when launching cups daemon. I don't know that the version of cups is what's causing this.
ReplyDeleteit seems the dd-box link is down and I need the py26-cups_1.9.62-1_mipsel.ipk. do you have a copy of it u can provie? Thank!
ReplyDeleteAfter working for a couple years my optware running on Tomato Asus N66U box broke. No idea why. Going to start over but considering the age of this tutorial is there a newer better way to set this up?
ReplyDeleteThanks
I have a hard time describing my thoughts on content, but I really felt I should here. Your article is really great. I like the way you wrote this information. TutuApp Android
ReplyDeleteYour article has piqued a lot of positive interest. I can see why since you have done such a good job of making it interesting. App Valley Download
ReplyDeleteIf you have actually neglected your Customer ID or Password, keep reading. Citicards Login In particular markets, Citigold Select is accessible by clients.
ReplyDeleteI'm always surprised by using the amount of records to be had in this subject. What you supplied was nicely researched and nicely worded with the intention to get your stand in this across to all your readers. Gmod game
ReplyDeleteWhen there is a blogging site for every subject under the sun, why not one for day trading too? We have a detailed commentary on what constitutes a blog meant for day trading.Mens Shoes
ReplyDeleteThe blogging scene has become more worldwide than ever, with a vast array of competitive topics. Even with the ever-rising social networks, the BLOG will always have its distinct place on the Internet. In retrospect, what platforms are more widely used than others.Formal Shoes
ReplyDeleteDOWNLOAD PAID APPS FOR FREE WITH TUTUAPP FROM PLAYSTORE DOWNLOAD TUTUAPP FOR MORE INFO
ReplyDeleteTutuapp
Tutuapp Android
Awesome article! I want people to know just how good this information is in your article. It’s interesting, compelling content. Your views are much like my own concerning this subject. appvn
ReplyDeleteteen patti gold hack
ReplyDeleteteen patti gold hack
omegle alternative sites
best sites like omegle
best video chat sites
omegle alternative apps
play store pro apk free download
play store pro free apk
download play store pro apk
play store pro apk download free
Great Article
DeleteInformation Security Projects for Final Year Students
Project Centers in Chennai for CSE
JavaScript Training in Chennai
JavaScript Training in Chennai
Spotify Premium Apk
ReplyDeleteFake Gps Pokemon Go
Fake Gps Pokemon Go
Fake Gps Pokemon Go Joystick
Spotify Premium Apk
Pokemon Go Joystick
Spotify Premium Apk
Spotify Premium Apk
Best Nursing Diagnosis
ReplyDeleteBest Nursing Diagnosis
Best Nursing Diagnosis
Best Nursing Diagnosis
Best Nursing Diagnosis
Best Nursing Diagnosis
Best Nursing Diagnosis
Best Nursing Diagnosis
Best Nursing Diagnosis
ayam laga indonesia
ReplyDeleteYou aren't too fussed regarding its headline attribute. www.mihanblog.com also seven combs allowing you to trim to Most Popular beard trimmer but if you cannot easily fit in a visit 9 best beard trimmers this design is developed to tackle bristle and top rated beard trimmers as well as it can be used dry or with foam or with gel. Source Website to gain access to the blade itself.
ReplyDeleteDownload Latest Movies With
ReplyDeleteNewest Movies HD
Newest Movie HD
Newest Movies HD for PC
This website can live streaming , you can join at my site :
ReplyDeleteagen judi online terpercaya
Prediksi Bola
Thank you
agenpialaeropa.net
ReplyDeleteTutuapp
Tutuapp Download
tutuapp android
Tutuapp iOS
Tutuapp
Tutuapp apk
Pokesniper
tutuapp download
Appvn
ReplyDeleteAppvn For Pc
Blackmart
Blackmart Pc
iTube
Snaptube
Snaptube for pc
This was really informative and valuable information. Visit for the creative Website Designing and Development Services by Ogen Info system.
ReplyDeleteDynamic Website Designing Company in Delhi
Visit for the best Logistics and Freight Forwarders Companies in Delhi at Y & H Cargo India.
ReplyDeleteShipping Company in Delhi
Spin Gurus is provided you the best service of Music Production.
ReplyDeleteMusic Production Courses
Nice Blog. If you Need best Mutual Fund in India MutualFundWala is best for you.
ReplyDeleteMutual Fund Distributor
Thanks, you guys that is a great explanation. keep up the good work in your granite blog.
ReplyDeleteMobile app Development Company in Noida
we have provide the best fridge repair service.
ReplyDeletefridge repair in faridabad
LG Fridge Repair in Faridabad
Videocon Fridge Repair in Faridabad
Whirlpool Fridge Repair in Faridabad
LG Refrigerator Repair In Faridabad
we have provide the best ppc service.
ReplyDeleteppc company in gurgaon
website designing company in Gurgaon
PPC company in Noida
PPC Company in Delhi
Rice Bags Manufacturers
ReplyDeletePouch Manufacturers
wall putty bag manufacturers
Thanks for sharing valuable Information, I really very impressive on your blog. I hope you continue on blogging job.
ReplyDeleteMobile App Development Company in Mumbai
nice article. Thanks for sharing the great post...!
ReplyDeleteWhat is DataMapping
What Is ARP
What Is A Manifest
Diffrence Between $Scope and Scope
Explain Design Concept Of Appium
Features Of ArcSight Enterprise Security Manager
What Is Configuration Management
What Is a Security Policy
Explain the Use of SSD
What is a string
Excellant your post and blog.
ReplyDeleteIt’s amazing in support of me totruly have a blog site, which will be valuable meant for my knowledge. Thanks admin
Transcription in USA
Transcription in USA
Transcriptions in US
Medical Transcription in USA
Medical Transcription Companies in USA
best Medical Transcription Companies in USA
Medical Transcription Services USA
Transcription companies in USA
Transcription services in USA
transcription companies in us
Transcription USA
General Transcription companies in US
Medical Transcriptionist in us
Excellent post.
ReplyDeletehttps://www.bly.com/blog/direct-marketing/the-rfm-formula-in-direct-marketing/
https://www.zwsoft.com/forum/thread-5147-1-1.html
https://forum.primefaces.org/viewtopic.php?t=58214
http://www.letsrun.com/forum/flat_read.php?thread=9266545
https://chippewa.com/329e0224-9149-5322-854c-e7e00146b8ac.html
There is no doubt in the app you can easily download the app the most exciting features are waiting for you can easily go with Tutu App. There are nothing extra features required in this app because the most important items are already available in his update versions. Download Latest Version. Also love Snaptube For PC
ReplyDeleteThank for sharing this article, really awesome!
ReplyDeleteApna Khata
Rule no 1. Always Be Building Your List AND Your Relationship With Your List is on top of my list. Nowadays, I try not to sound spammy and hypey when I email them about any promotions. Building their trust will take some time but I’m getting there.
I can’t believe focusing long enough to research; much less write this kind of article. You’ve outdone yourself with this material without a doubt. It is one of the greatest contents. https://192-168-i-i.com/cisco-router-default-password/
ReplyDeletegood post
ReplyDeletefashionable girls costumes
modeling
Agar aap chatey hai ki aapka boyfriend ya girlfriend ka rishta tut jae toh aap Rishta todne ki dua Duas in islam is the best dua for love back.
ReplyDeleteawesome article f150 ford specs
ReplyDeleteAppValley is a free app store to download millions of Android, iOS apps along with Tweaked Apps without Jailbreaking iPhone/iPad.
ReplyDeletehttps://appvalley.co.in/
appvalley download
appvalley ios
appvalley apps
appvalley apk
appvalley download ios
Nainital is good for sightseeing, here you find top class Ramnagar call girl in every corner of city. You may choose high profile call girl in Nainital for erotic meeting. Ramnagar escort service agency provides sexy and hot call girls near your hotels or apartments. Here you will get top class Dehradun call girls for erotic pleasure.
ReplyDeleteNainital call girl
Call girl in Nainital
Dehradun call girl
Call girl in Dehradun
Noida call girl
Call girl in Noida
Haldwani call girl
Call girl in Haldwani
Ramnagar call girl
Call girl in Ramnagar
Rudrapur call girl
Call girl in Rudrapur
Noida call girl
Call girl in Noida
Nainital escort service # Dehradun escort service # Noida escort service # Haldwani escort service # Ramnagar escort service # Rudrapur escort service # Noida escort service
Want to feel erotic pleasure? Hire top escorts from Noida escort service provider and feel romantic. Don’t worry, our Greater Noida escort service agency provide all types of escort service for your pleasure. Our escort service in Greater Noida babes make your mood erotic with her moves. Hire a top class models from escort service in Noida agency and enjoy a romantic night.
ReplyDeleteGreater Noida escort service ## Noida escort service ## Ghaziabad escort service ## Nainital escort service ## Indore escort service ## Bangalore escort service ## Goa escort service ## Crossing republik escort service ## Pune escort service
VidMate is a free tool to download HD Youtube Videos, Music files, TV Series, and Movies.
ReplyDeletehttps://www.vidmate.work/
vidmate
vidmate download app
vidmate apps
vidmate app download
Tutuapp
ReplyDeleteI download youtube videos through Vidmate because it has awsome good features like high speed downloading and hd video download etc.
ReplyDeleteFilmywap
DeleteSaaho Full Movie in Hindi Dubbed Download
Saaho Full Movie in Hindi Dubbed Download
This comment has been removed by the author.
ReplyDelete
ReplyDelete192.168.1.1
192.168.0.1.1
192.168.1.254
sounddownmp3.com
Filmywap
ReplyDeleteSaaho Full Movie in Hindi Dubbed Download
Saaho Full Movie in Hindi Dubbed Download
thank u for good article check to rank fast on googlerank af
Deletethank u for good article check to rank fast on googlerank af
ReplyDeleteI like this topic.This site has lots of advantage.I found many interesting things from this site. It helps me in many ways.Thanks for posting this again.
ReplyDeleteSaaho Full Movie Download
Filmywap
Free Success Tips
nice work buddy check this too it will helpmission mangal download
ReplyDeleteUsually I never comment on blogs but your article is so convincing that I never stop myself to say something about it. You’re doing a great job Man,Keep it up.
ReplyDeletestudy abroad consultants in delhi
ielts coaching in gurgaon
ReplyDelete192.168.0.1
192.168.1.1
router login
Positive site, where did u come up with the information on this posting?I have read a few of the articles on your website now,
twitter dan video indirme
ReplyDeleteTwitter video índirme
Twitter Video Indir
twitter mp4 indir
Among the products listed on the site, which one is the best???
ReplyDeleteTutu Helper is the one of the best ios,android App store to get the tons of free app
ReplyDeleteand game. Here the latest version of TutuApp of free.
Tutu Helper Apk
TutuApp free
tutuapp pokemon go
Tweakbox App is the one of the best ios,android App store to get the tons of free app and game. Here the latest version of tweak box of free.
ReplyDeleteTweak box
Tweakbox ios
Tweakbox android
Whatsapp plus is one of the best mod app for official whatsapp for free, get unlimited features of
ReplyDeletewhatsapp plus for free. Here Click to download the latest version whatsapp plus apk.
WhatsApp Plus APK
WhatsApp Plus Download
Jeewangarg is a Leading Digital Marketing Company which is helping your brand to cut through the Digital Clutter with its best SEO Company in Delhi. Our range of Services includes SEO Services, PPC Company in Delhi, Website Designing Services and Social Media Marketing Services. Being a Google Partner in India, we provide our client with 100% satisfaction in every aspect of their marketing goals. So, what are you waiting for Connect to the team of best SEO Expert in India, Google Ads Experts, Website Designing Experts, Social Media Experts & more to boost your Digital Presence today with the high quality Digital Marketing Services.
ReplyDeletePanache Haute Couture, a leading Indian Designer House for Indian Dresses. You can Buy Designer indian wedding dresses lehenga dresses, anarkali suits, indo western bridal gowns,
ReplyDeletelehenga choli online, Designer Sarees Online at Online.
lehenga choli
lehenga online
ReplyDeleteShowbox Apk is a meta-search engine scraper that scrapes data from the world wide web and provides you with the best for your movies and TV shows.
It works directly as well as p2p i.e peer to peer.
if you are looking for free movies and tv shows you can find them on showbox app its easy to download and install
you can stream movies and tv shows on tvtap for free its great app for all types of live stream
if you wanna watch free movies and tv shows you can tune in to beetv app for free
whatsapp status
RedBox TV App has introduced a lot more features than any other TV Channels Streaming App. It does have categories, depending on Counties as well.
To find out your native language you can swipe to Country based categories, where you’ll find the channels which are highly native to your region and language. That’s an extra of RedBox TV App.
Apart from this, RedBox is available for almost every possible platform. Unlike the other apps, Redbox tv don’t claims any fake hoax, all the stuff where are features in this post will be served.
ReplyDelete192.168.1.1
192.168.1.1
192.168.l.254
Great content. Pleasure to read your blog. Thank you
ReplyDeleteinstall norton using product key
avast 5 license key
avast licence
avg install with license key
www trendmicro com bestbuy pc
Thank you for sharing such nice information.
ReplyDeletewww trendmicro com bestbuypc
cool post with some dope info! ppsc jobs in pakistan
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteGreat work done by author of this blog. Its an Amazing blogger. We are one of the best Mobile App Development | Mobile App Development Company in India | Website Development Company in Delhi | Website Designing Company in Gurgaon.
ReplyDeleteGreat post. salesforce training in Canada is a best institute for training.
ReplyDeleteThanks for sharing the information...
ReplyDeleteSalesforce CRM Training in Marathahalli - Bangalore | Salesforce CRM Training Institutes | Salesforce CRM Course Fees and Content | Salesforce CRM Interview Questions - eCare Technologies located in Marathahalli - Bangalore, is one of the best Salesforce
CRM Training institute with 100% Placement support. Salesforce CRM Training in Bangalore provided by Salesforce CRM Certified Experts and real-time Working Professionals with handful years of experience in real time Salesforce CRM Projects.
Thanks for this informative article tutuapp
ReplyDelete
ReplyDeleteWell I definitely enjoyed reading it. This tip procured by you is very constructive for correct planning.
Corporate video makers Delhi
Explainer Video company Delhi NCR
ReplyDeleteWow!!! It was really an Informational Article which provide me with much Insightful Information. I would like to first thank the author for such an Insightful Content. If someone here is looking for a Website Designing Company in India, then look no further than Jeewangarg.com as we are the Best website designing company in India working in the arena for the last 8 years.
Digital Marketing services in Delhi
Nice post I have been searching for a useful post like this on salesforce course details, it is highly helpful for me and I have a great experience with this
ReplyDeleteSalesforce Training melbourne
Thank You for providing us with such an insightful information through this blog. However, if you are in the search of finding Cab or Taxi Services in Melbourne? Your Search Ends here…
ReplyDeletesilver service cabs is your answer for availing best silver taxi service in Melbourne. Reach us for the best Silver Service Cab Melbourne.
Really this is awsome post, which is so informative. We are the largest shot blasting machinemanufacturers & Suppliers in India. Get the all types of sand blasting machine manufacturers and their equipments @ best prices & unmatched services. Call us @ 9811083740.
ReplyDeleteVisit to know more:
sandblasting
shot blasting machine manufacturers in india
Such an interesrting and essential topic that everyone should know this. Parsan provides Engineering Geophysics repair solution. Visit the site Pipeline Leak Detection to know more about Pipeline Leak Detection Service Provider in India.
ReplyDeleteSuch an amazing article thanks for sharing this
ReplyDeleteYou’ll love to see my site http://sandblastingmachine.in/blog-sand-blasting-machine-manufacturer/ as well.
Keep posting.
I would first like to thank the author for coming up with the insightful information every time. People if you are also looking for the best indian dresses online | buy lehenga online then visit Panache Haute Couture, a leading Indian Designer House for Indian Dresses.
ReplyDeleteThankyou for this article this information is very useful for me. i have also information for you A list of the best ACP sheets and acp sheet manufacturers in India who produces compact, strong and durable sheets those are best for your home décor, office or Industry etc. Aluminium Composite Panel
ReplyDeleteThanks for sharing such a great information, Here we are India's best service provider of sbi kiosk banking.
ReplyDeletecsp bank mitra
bank mitra
Wow!!! A great insightful & informative content on ACP Board. Virgo Group is the largest providers of best in class leading facade materials and more & having years of experience in manufacturing Premium ACP Sheet. We aim to deliver excellence and ensure maximum worth for our clients’ money and so we provide you with the best hpl sheet.
ReplyDeletePast the essential arrangement of wireless web inside your home or office, there are numerous extra highlights which ought to be viewed as when taking a gander at purchasing another wireless router.best wifi router for long range
ReplyDeleteThanks for the great article and post. Need a Industrial UPS? Don’t go beyond nexusups. 10 kva online ups which offers an extensive range of exceptional Industrial UPS, and Online UPS Free to contact.
ReplyDeleteThanks for the great article and post. Need a servo voltage stabilizer manufacturers in india? Don’t go beyond servo star “A popular 10 kva voltage stabilizer price which offers an extensive range of exceptional servo stabilizer. Feel free to contact.
ReplyDeleteIt's at the same time a decent place which i extremely savored browsing. Isn't day to day that provide the prospect to observe an item. Best Vape Tank in UK
ReplyDeleteتصميم مواقع
ReplyDeleteتصميم موقع الكترونى
برمجة تطبيقات الجوال
حجز دومين سعودى
تصميم موقع حراج
سيرفر
الرياض
تصميم تطبيقات الجوال
دومين
Great information! I found excellent details. Surely, this content is very helpful for me and Keep it up...
ReplyDeletePower BI Training in Chennai
Power BI Training
Unix Training in Chennai
Oracle Training in Chennai
Tableau Training in Chennai
Advanced Excel Training in Chennai
PEGA Training in Chennai
Corporate Training in Chennai
Linux Training in Chennai
Primavera Training in Chennai
Awesome blog. I enjoyed reading your articles. You can install all paid games for free with tutu app tutuapp download
ReplyDeleteI was taking a gander at some of your posts on this site and I consider this site is truly informational! Keep setting up .. Cosmetics Products Online, Beauty Products
ReplyDelete