04-11-2014, 01:03 PM
Hi all,
As electronics is one of my hobbies, I decided to prototype my own USB to Serial cable flash box, so I can re-flash from scratch the HP-20B/30B into a famous WP-34S RPN scientific calculator anytime I need to.
1) First of all, thanks for all the good people posting here on this subject, I have learned a lot from You!
These are some of the main threads I have used and above all the most important source of information from the WP-34S creators:
WP-34S project repository
Homemade ARM-based Calculator Programming Cable, by Katie Wasserman
WP34s Programming Cable, by several contributors
WP 34S Programming Adapter Plug Parts - FS, by Dave Frederickson
2) My prototype flash box includes:
- One 3.3V regulator power supply for extra energy for calculator during the flash operations;
- Two push buttons (Erase and Reset), each one with a LED to provide visual feedback;
- USB 5Volt Power On LED status;
- Two additional LED's to monitor the TX and Rx serial data transfer;
The flash box circuit includes an 3.3V low voltage drop regulator based on the LM1117-3.3 IC as a source voltage to the calculator power supply, Reset and Erase functions of the serial cable.
One word on the calculator internal Reset logic:
When the calc is powered On, the normal state of the Reset pin is High (3V).
When the Reset action is taken, its state goes down (0V) and stays down even after releasing the Reset action, for as long as the batteries have good voltage.
The only way to turn the Reset state to High again is by powering On the calc.
So, the Reset indicator LED circuit needed a more elaborated circuit, as we do not want to overload the calculator internal Reset circuit that is maintained to 3.3V thru a 100Kohm resistor. As I had a BS170 MOSFET at hand, i have used it as a switch with very high input impedance load, followed by a NPN BC547 acting as inverter/driver.
Schematics are included in one of the pictures below.
Update on 23-June:
Added a picture with the draft of the PCB layout (Top view, where the red copper lines are underneath).
The Part's Listing are included as well (see below).
3) The USB to Serial converter is based on a Prolific PL2303HX.
The cable itself is named as "USB auf RS232 TTL serielles Kabel Adapter Modul PC-PL2303HX Chipset Computer T5", and it was purchased in TAS.
Windows 7 x64 has automatically detected the Prolific PL2303HX device, installed the required driver, and it runs without any flows!
I have tested in two different computers with no issues at all:
- One ASUS AMD systemboard with USB2 interfaces;
- One Toshiba Portégé Z930 Laptop on both USB2 and USB3 ports;
Windows 7 x64 Device Manager information:
Prolific USB-to-Serial Comm Port (COMnn)
Driver Provider: Prolific
Driver Date: 17-10-2013
Driver version: 3.4.62.293
Driver file: ser2pl64.sys
4) Testing the flash box:
The calculator is not used at this stage.
We need to simulate the calculator internal reset load, so I have connected a 100Kohm resistor across J31 (Vcc) and J32 (RST).
Also, I have connected a jump wire between J35 and J33 to create a loopback connection. This allows the testing using the Hyperterminal tool for Windows.
5) The Pogo connector to plug in the back of the calculator was hand made from a kit got from Dave Frederickson. Unfortunately Dave doesn't has these kits anymore. The kit included the 2mm IDC ribbon cable assembly, the spear point pogo pins type PA50-B (16mm length), and one brass strip approximate 0.25 x 2 x 0.16 inches to make a clip.
We need a small piece of double-sided foam tape (2.5mm thick) to attach the clip.
The pictures below includes the build plan details.
6) The following (shaky) video shows the prototype in action.
The serial interface is connected in loop back mode.
I am running the Hyper Terminal on Windows to send and receive ASCII chars from the keyboard.
http://youtu.be/X10TVjPdGmE
7) Current status:
This flash box works nicely to re-flash the HP20B or 30B calculators, providing all the visual aid during the Erase and Flash procedures.
8) Parts Listing
8.1) Semiconductors:
IC1 - LM1117-3.3V low drop regulator TO220 (I used the SMD version, but this TO220 case is easier to solder)
T1 - BC557C PNP transistor
T2 - BC557C PNP transistor
T3 - BS170 N-channel FET transistor
T4 - BC457C NPN transistor
PWR LED - LED Red
TxD LED - LED Red
RxD LED - LED Green
RST LED - LED Green
ERASE LED - LED Yellow
(or any other color scheme you like)
8.2) Capacitors
C1 - 10uF, 35V Tantalum
C2 - 10uF, 35V Tantalum
8.3) Resistors (all 1/8W or 1/4W, with 5% tolerance)
R1 - 470R
R2 - 1K
R3 - 1K
R4 - 39K
R5 - 330R
R6 - 39K
R7 - 330R
R8 - 560K
R9 - 2M2
R10 - 68K
R11 - 470R
R12- 470R
8.4) Miscellaneous
- Veroboard with a minimum of 29 x 8 holes to build the circuit (7cm x 2.5cm);
- A plastic box (8.5cm x 5.5cm x 3.0cm) Velleman WCAH2855;
- Thin isolated wire of different colors for internal wiring;
- 6-pin Pogo connector of your choice and interconnect cable (6-wires);
8.5) USB interface
- One USB-to-Serial TTL adapter based on PL2303HX;
Thanks all for the contributions and comments.
As electronics is one of my hobbies, I decided to prototype my own USB to Serial cable flash box, so I can re-flash from scratch the HP-20B/30B into a famous WP-34S RPN scientific calculator anytime I need to.
1) First of all, thanks for all the good people posting here on this subject, I have learned a lot from You!
These are some of the main threads I have used and above all the most important source of information from the WP-34S creators:
WP-34S project repository
Homemade ARM-based Calculator Programming Cable, by Katie Wasserman
WP34s Programming Cable, by several contributors
WP 34S Programming Adapter Plug Parts - FS, by Dave Frederickson
2) My prototype flash box includes:
- One 3.3V regulator power supply for extra energy for calculator during the flash operations;
- Two push buttons (Erase and Reset), each one with a LED to provide visual feedback;
- USB 5Volt Power On LED status;
- Two additional LED's to monitor the TX and Rx serial data transfer;
The flash box circuit includes an 3.3V low voltage drop regulator based on the LM1117-3.3 IC as a source voltage to the calculator power supply, Reset and Erase functions of the serial cable.
One word on the calculator internal Reset logic:
When the calc is powered On, the normal state of the Reset pin is High (3V).
When the Reset action is taken, its state goes down (0V) and stays down even after releasing the Reset action, for as long as the batteries have good voltage.
The only way to turn the Reset state to High again is by powering On the calc.
So, the Reset indicator LED circuit needed a more elaborated circuit, as we do not want to overload the calculator internal Reset circuit that is maintained to 3.3V thru a 100Kohm resistor. As I had a BS170 MOSFET at hand, i have used it as a switch with very high input impedance load, followed by a NPN BC547 acting as inverter/driver.
Schematics are included in one of the pictures below.
Update on 23-June:
Added a picture with the draft of the PCB layout (Top view, where the red copper lines are underneath).
The Part's Listing are included as well (see below).
3) The USB to Serial converter is based on a Prolific PL2303HX.
The cable itself is named as "USB auf RS232 TTL serielles Kabel Adapter Modul PC-PL2303HX Chipset Computer T5", and it was purchased in TAS.
Windows 7 x64 has automatically detected the Prolific PL2303HX device, installed the required driver, and it runs without any flows!
I have tested in two different computers with no issues at all:
- One ASUS AMD systemboard with USB2 interfaces;
- One Toshiba Portégé Z930 Laptop on both USB2 and USB3 ports;
Windows 7 x64 Device Manager information:
Prolific USB-to-Serial Comm Port (COMnn)
Driver Provider: Prolific
Driver Date: 17-10-2013
Driver version: 3.4.62.293
Driver file: ser2pl64.sys
4) Testing the flash box:
The calculator is not used at this stage.
We need to simulate the calculator internal reset load, so I have connected a 100Kohm resistor across J31 (Vcc) and J32 (RST).
Also, I have connected a jump wire between J35 and J33 to create a loopback connection. This allows the testing using the Hyperterminal tool for Windows.
5) The Pogo connector to plug in the back of the calculator was hand made from a kit got from Dave Frederickson. Unfortunately Dave doesn't has these kits anymore. The kit included the 2mm IDC ribbon cable assembly, the spear point pogo pins type PA50-B (16mm length), and one brass strip approximate 0.25 x 2 x 0.16 inches to make a clip.
We need a small piece of double-sided foam tape (2.5mm thick) to attach the clip.
The pictures below includes the build plan details.
6) The following (shaky) video shows the prototype in action.
The serial interface is connected in loop back mode.
I am running the Hyper Terminal on Windows to send and receive ASCII chars from the keyboard.
http://youtu.be/X10TVjPdGmE
7) Current status:
This flash box works nicely to re-flash the HP20B or 30B calculators, providing all the visual aid during the Erase and Flash procedures.
8) Parts Listing
8.1) Semiconductors:
IC1 - LM1117-3.3V low drop regulator TO220 (I used the SMD version, but this TO220 case is easier to solder)
T1 - BC557C PNP transistor
T2 - BC557C PNP transistor
T3 - BS170 N-channel FET transistor
T4 - BC457C NPN transistor
PWR LED - LED Red
TxD LED - LED Red
RxD LED - LED Green
RST LED - LED Green
ERASE LED - LED Yellow
(or any other color scheme you like)
8.2) Capacitors
C1 - 10uF, 35V Tantalum
C2 - 10uF, 35V Tantalum
8.3) Resistors (all 1/8W or 1/4W, with 5% tolerance)
R1 - 470R
R2 - 1K
R3 - 1K
R4 - 39K
R5 - 330R
R6 - 39K
R7 - 330R
R8 - 560K
R9 - 2M2
R10 - 68K
R11 - 470R
R12- 470R
8.4) Miscellaneous
- Veroboard with a minimum of 29 x 8 holes to build the circuit (7cm x 2.5cm);
- A plastic box (8.5cm x 5.5cm x 3.0cm) Velleman WCAH2855;
- Thin isolated wire of different colors for internal wiring;
- 6-pin Pogo connector of your choice and interconnect cable (6-wires);
8.5) USB interface
- One USB-to-Serial TTL adapter based on PL2303HX;
Thanks all for the contributions and comments.