MAIN | NEWBIES | GUIDES | N1 FILES | FORUMS | CHAT | SPONSORS

JavaEMU Guide


Introduction

After reading this simple, easy to follow guide, and following all the instructions exactly, you will be able to emulate your Bell Expressvu or Dish Network IRD using a program called JavaEMU. The simplest explanation of emulation is connecting a cable between your AVR board (which will be in the IRD) to your computer and running a program that "emulates" your smart card. This guide will assume you have some basic knowledge and know how to download files off the internet and unzip them. I'll also assume that you know how to program your AVR board with Jeepers. Please note I take no resposiblity for any damage you may cause as well as any laws you may be breaking. Please read the disclaimer on the home page. This guide is for educational purposes only. Enjoy.

Difficulty Level

The difficulty of setting up JavaEMU is 8 on a scale of 1-10. This project does not require you to be an expert with a soldering iron and is rather easy to complete. If all goes well, you should be able to complete it in an hour or less.

What's Needed


Optional (but recommended) Materials


Atmel Flashing


The first thing you're going to do is program the flash memory of your AVR. The first step is to erase your Atmel. You can do this in Jeepers by selecting "Atmel 8515" then "Erase Flash/Eeprom". Erase the Atmel again because Jeepers doesn't always do the best job at completely erasing the Atmel. Use IRD2PC if you DO NOT have pins jumpered (10-12 for 40 pin DIP Atmel, 11-14 for the 44 pin Atmel). If you haven't download the file, do so now. If you do have pins jumpered, download IRD2PCV2 (or download it from here if you have pins jumpered and have a 6000 IRD . If you're not sure if you have pins jumpered or not, the easiest way to tell is, if you see a chip on your AVR board that says 24LC256 on it, then you most likely do have pins jumpered. What the IRD2PC hex file does is convert the 140,000 Kb/s coming from your IRD to a more standard 115,200 Kb/s which is useful to your serial card. Unzip the file to a new folder of your choice and run the Jeepers program that came with it. Connect your AVR board to your computer. Once you've connected the AVR board, click Full Monty. MAKE SURE YOU SELECT THE PROPER IRD2PC FILE DEPENDING ON IF YOU HAVE PINS 10-12 or 11-14 JUMPERED OR NOT!




Building the Cable


Unprotected Method

Now, disconnect your AVR board and put it in a safe place. The next thing you want to do is wire your DB 25 and DB 9 connectors together. There are two different methods that I will discuss when wiring the cable. The first is a little bit easier, but CAN be risky. This method does not require any zener diodes or resistors. I say it CAN be risky because there is the potential that you can damage either your Computer, IRD or Atmel chip. The voltage coming from your computer is something like 11V and the Atmel chip is really designed to run at ~5V. It is possible to run without the zener diodes and resistors and have things work fine, but remember, YOU'VE BEEN WARNED! To wire the 25 pin connector to the 9 pin connector, follow this simple chart:


DB 9 Pin # DB 25 Pin #
3 7
2 8
5 25

Diagram:


All of the other pins are left alone. Make sure that when you are soldering, you don't accidently leave a solder spike that connects pins together that shouldn't be connected.

Protected Method

The proteced method is highly recommended and does reduce your risk of screwing something up. It requires 2 1000 Ohm (1K Ohm) resistors and 2 5.6 V 1 Watt zender diodes (available at electronics stores). The wiring is similar. Connect 1 resistor to pin 7 of the DB 25 and 1 resistor to pin 8 of the DB 25. Now connect the wire to the other end of each resistor. The setup is the same as the unprotected version so far, except now you have 2 resistors added to the cable. The next step is to add the zener diodes to the cable. If you look at the diode, you will notice that there is a band on one end. Connect the end with the band on it to the resistor and the end without the band on it to the wire coming from pin 25 (ground). This sounds confusing, so look at this diagram so you can understand what I'm saying:


Installing Necesary Files
The next step is to install all the necesary files for JavaEMU. If you have downloaded the Java Runtime Version 1.4.0, do so now by click here . Once that file is downloaded, you will want to download the Java Comm Api V2.0 from here . Of course, you are going to want to download JavaEMU from here . Now you are ready to install the files. First, install the Java Runtime Version 1.4.0. This guide will assume you install the files all to the default directory. On your Desktop, create a new folder (right click on your Desktop, put your mouse over "New" and then select "Folder") and name it "Com Files". Now, open up the Java Comm Api V2.0 (it will be a zip file)and find these exact files in the zip folder:

Win32Com.dll
Javax.comm.properties
Comm.jar


Now, extract these three files to the folder you just created on your desktop called "Com Files". Now open up the "Com Files" folder, and if you can't see the three files, you are going to have to change the folder options. If you don't see all three, while in the "Com Files" folder, select "View" (at the top of the folder) then select "Folder Options". Under the "View" tab, select the "Show All Files" radio button then select "Apply". Now you have to copy and paste the three files into the proper folders in the Java Runtime that you installed earlier. To copy and paste a file, just select it (click on it once), right click and select "Copy". You will have to paste the three files into the following directories:

Win32Com.dll to C:\Program Files\Java\j2re1.4.0_01\bin
Javax.comm.properties to C:\Program Files\Java\j2re1.4.0_01\lib
Comm.jar to C:\Program Files\Java\j2re1.4.0_01\lib\ext

The reason I had you extract the files to a folder then copy and paste them instead of extracting them directly to the folder is for some reason the files would create their own folder and they wouldn't be in the proper folders listed above

Once that is done, it might be a good idea to double check that you have the correct files in the correct locations. Create a folder on your C: drive called "je". To create a folder on your C: drive, open "My Computer" (there should be an icon on your Desktop), double click on C:, then once you are in your C: drive, right click your mouse (not on any folders, just on some blank space) put your mouse over "New" and select "Folder". Name the folder "je" (without quotes). Now, open up the JavaEMU zip file and extract both files (JavaEmu074.jar, rom3.bin, BEV380.bin, DN380.bin and DN380DP.bin) to the "je" folder we just made. Now, we are going to create a batch file. To do this, right click on your desktop, then put your mouse over "New" and then select "Text Document" (Windows Notepad should open up). Now, type the following:

c:
cd\
cd je
java -cp JavaEmu074.jar javaemu0_7.main -rom rom3.bin -port COM2 -eeprom dump.bin -log -avr

Once you've entered those lines EXACTLY into Notepad, go to File> Save As, then type "Java.bat" WITH QUOTES and save it to your Desktop. What you have done is created a batch file (so all you have to do is double click on this icon whenever you want to run JavaEMU).
Configuring the Com Port
The next step is configuring your Com port settings. To do this follow these simple steps:

Right click on "My Computer" on the desktop
Select "Properties"
Select the "Device Manager" tab at the top
Click on the "+" (plus sign) next to "Ports (Com and LPT)"
Double click on your Com port
Select the "Port Settings" tab at the top
These are the settings you must have:

Bits Per Second: 115 200
Data Bits: 8
Parity: None
Stop Bits: 1
Flow Control: None

Creating a Bin File
Now we have to create a .bin file for JavaEMU to use (with your custom settings). Create a new folder called "XCel 3.0" and extract all of the files from the XCel 3.0 file. Also create a new folder called "Codegen" and extract the contents of the Codegen zip file to it.

Once you have created these two new folders, open up Codegen, and for "Card Version" select Rom 3. For "Main Options" select "3M Activation" and for "Providers" select "ExpressVu" if you are using an "ExpressVu" IRD and "Dishnetwork" if you are using a Dish Network IRD. Click on "Generate Code". You will get a warning saying that you haven't selected blocker code. Just click "OK" on this. It will then tell you your code was generates successfuly. You can close Codegen and you should have a new file called "Codegen.ne3" in the same folder you ran CodeGen in.

Now open up XCel 3.0. Click on "File" and select "Open Bin". Navigate to "C:\je" (this is the folder you should have created earlier and extracted the contents of the JavaEMU.zip file to). If you are running on a BEV system, choose "Bev380.bin". If you are running a Dish Network IRD, open "DN380.bin" (or "DN380DP.bin" if you have a Dish Player IRD). When you open the file you will get a message saying "Unknown REV Number...", click "OK" to this message.

Now, on the right hand side of the screen, enter your IRD and CAM numbers in hex (or if you don't know how to convert to hex, press the little "?" next to the field and enter in your IRD and CAM numbers in regular decimal format and the program will to the work for you). For Zip code, just enter "0". Leave "Rev Number" at "380". For "Key 0" and "Key 1" just put in "0". Enter your "Box Key" with no spaces and in all CAPS. Leave "Backdoor" at 0. For "IRD Status" select "00 - Subbed". Leave "Dial Out" at the default. Select your "Time Zone" and "Day Light Savings" options to your liking. Leave the "BlackOut String" at default.

Once you think you have all of your information correctly, we have to apply the 3M we created with Codegen earlier. While in XCel, select "Tools" then select "Patch EEPROM". Now you should see a button that has "..." on it. Click that button then find the "Codegen.ne3" file you created earlier. Now click "Apply the Changes to the currently open EEPROM". You will get a message saying "Unknown REV number..." just press "OK" on this. It will then say "Applied Patch to the currently open EEPROM". Press "OK" and you should be back in the main screen. Now click "File" and select "Save Bin As" and save the bin as "dump.bin" in your "C:/je" folder. If you don't save it as "dump.bin" then you will have to edit the batch file you created earlier. Once the file is saved, you can now close out of XCel. Your .bin file should now be set up.
Configuring JavaEMU
Now we are starting to get closer. Insert your AVR into your IRD and plug the cable that you made into the AVR and the other end to your serial port. Plug your IRD and run the Java.bat file that we created earlier. If everything goes well, you should see the JavaEMU program. Turn your IRD on and watch TV. You may have to wait for the keys to auto-roll but it shouldn't take long. Enjoy!
This guide was written by The Dishnewbies Team . If you have problems, please ask on the message board or the #Dishnetwork or #Expressvu channels on irc.dishnewbies.tv .




MAIN | BEV STATUS| DISH STATUS| NEWBIES | GUIDES | FILES | LINKS | FORUMS | CHAT | SPONSORS| PRODUCT REVIEWS | NEWS