WP 34S: IR printing - update



#2

Things move on! :-)

Today I made a gorgeous discovery: Christoph Giesselink's HP 82240B emulator. It was a matter of a few minutes to add a UDP sender to the Windows GUI emulator so that (virtual) printing will be fully supported once I have all the user commands implemented. With one of the next builds the commands will be included. Set up the printer emulator with its default UDP settings and it will work. You will want to turn on the graphic display.

At the moment there are issues with mixing graphic and character output (needed to support the full 34S character set) - the spacing isn't fully correct yet. Missing are all the register and program listing commands and some configuration options such as the LF delay. And I'm waiting for a parts list to build my own transceiver. Katie is already helping me here. The pulses on my scope look quite good so I have high hopes that printing will work.


#3

With this virtual printer it would certainly be a great feature to have something like a 'protocol' mode for the WP34s emulator, which continuously prints all entries and results in a proper format! :-)

Franz


#4

SF T will do the trick in a later version.


#5

'T' for tracing ...


#6

Quote:
'T' for tracing ...

Yes, a good idea indeed.

But be aware that such a trace mode isn't a simple task:

I remember last year when I've exchanged quite a few emails with the author of the TI-58C emulator about his implementation of this trace mode - it's not always clear what and when to print anything (operator and/or operations).

And although there have been many improvements wrt. this trace mode in the TI-58C, it's still not really perfect.

Franz

Edited: 24 Apr 2012, 7:58 a.m.


#7

HP typically offers 2 modes: NORM and TARCE where the latter is more verbose just to catch everything while the former mostly prints results (I haven't tested it yet on my 42S.) I'm thinking of a scheme like the following:

Data entry commands (digts, etc.) are not traced.
Commands that do something will be printed together with their result. If the input is different from the previous result (i. e. data entry has occurred), the input will be printed, too. I should have enough room to print the commands left of the results. The printer has 24 columns. If I want to print 12 digits, a decimal point, 2 signs, an "E" (or space) and 3 exponent digits, I need 19 places which seems a bit tight. Things are easier if I use the built-in font which is smaller but does not allow tabular printing. Maybe a line for the command and another for the data is an easier choice. I'll do my best...

#8

I've implemented a large portion of the user commands. Still missing is program listing, tracing and printing the summation data. Following is the new readme file doc/printing.txt:

Printing with WP 34S
====================

The Windows emulator and the image calc_ir.bin contain printing commands.
To set up printing on the emulator you will need to install the HP 82240B
emulator by Christoph Giesselink: http://hp.giesselink.com/hp82240b.htm.
The default UDP setup works fine. You need to open the graphic display to
see all output.

To print on the device you have to modify it:

- Add a crystal.
- Add an IR transmitter.

The necessary schematics will be provided.


Setting the operation mode
--------------------------

PMODE n (in MODE) sets the printing mode:

0 - Default mode, use the printer character set where possible.
All characters have the same width of 5 columns + 2 columns spacing.

1 - Use the variable pitch display character set instead. This results in
some jitter on the printout but packs more characters on a single line.

2 - Use the small display font which packs even more info on a single line.

3 - Send the output to the serial channel. This does not do any character
set translation and works only for plain ASCII. The line setup is the
same as for serial communications: 9600 baud, 8 bits, no parity.

PDLAY n (in MODE) sets the LF delay in tenths of seconds.

SF T / CF T enable / disable tracing.


All following commands are in P.FCN but will eventually be relocated to a
new printing catalogue.


Listing programs
----------------

PRTPGM prints the current program. (To be implemented.)


Printing text
-------------

PRT[alpha] prints the contents of the alpha register.

PRT[alpha]+ prints alpha but does not send a line feed. This is useful
for chaining output or labeling numeric data.


Printing data
-------------

PRTR n prints any register (including stack or local registers) without
labeling the output. The data is printed to the right. You can add a label
with the alpha print commands above. PRT X can be reached from the keyboard
with f+EXIT (the yellow arrow).

PRTSTK prints the stack registers with a label to the left.

PRTREG takes a descriptor of the form rrr.nn in X (see R-SORT for an
example) and prints the registers with a label to the left. To print local
registers start with 112. nn=00 is treated as 'all available' registers.

PRT[SIGMA] prints the summation registers. (To be implemented.)


Formatting and special commands
-------------------------------

PRTADV sends a line feed and causes the printer to spit out any pending
data.

PRTT n positions the print head to a chosen column (0 to 165). This can
be used for formatting, especially when using PMODE 1 or 2. A simple
plot function is possible, too.

PRTC n sends a single character to the printer. The command uses the
current PMODE setting. The printer buffer is limited to 200 bytes. If
you print many characters in mode 1 or 2 with this command a buffer
overrun may occur because of the overhead of adding the necessary two
byte ESC code to each character pattern. If that occurs print multiple
characters at once with the commands PRT[alpha]+ or PRT[alpha] instead
which buffer the characters in larger graphic blocks.

PRTB n sends a single byte without any translation. You can use this to
send control codes to the printer. The column counter is not updated
which means PRTAB and right justified number printing won't work if you
send commands which affect the print position. Use at your own risk!

The above commands allow indirection which limits the argument that can
be passed to values from 0 to 127. Larger values can be sent by putting
them in a register and using indirection.

Edited: 25 Apr 2012, 10:45 a.m. after one or more responses were posted


#9

It works!

I just soldered in an IR emitter (5mm size, part number LE-DS158 from Sure Electronics on ebay and elsewhere) in series with a 390 ohm resistor with no transistor to up the current, so it's less than 4ma. I get a range of a little more than one foot. I'm awaiting some smaller IR emitters (T-1 size) that will fit into the case and I'll probably add a transistor to increase the current/range.

Edited: 25 Apr 2012, 12:28 a.m.


#10

That's probably enough for most people. I'll fetch an IR diode and add it to the dongle protruding from my development unit so I can do some real world testing. What's shown in the emulator is very promising. The specification says that the range increases with the timing accuracy. I've tried to produce the best possible timing by using the built-in timers instead of a pin controlled by software. The effort seems to pay off.

Today I'll be implementing the missing features, namely trace and program listing. :-)

A short poll: How many WP 34S owners are interested in modifying their units? The modification requires the crystal (for timing accuracy) and Katie's modification (IR diode, resistor, eventually transistor).


#11

I probably would if I owned a printer. But since I don't, I won't.

- Pauli

#12

WOW, IR on the WP 34S, amazing ! I'm interested (I have a 82240B).

#13

I'm interested. I'm of the solder-wire-to-household-switch-variety, so I would need detailed pictures, a parts list from, say, Conrad and a bit of luck. ;-)

Would you consider putting the parts together and send them out (to Hamburg in my case), being payed via Paypal or bank transfer?


#14

Alexander, I will not provide hardware but I'm a taker if someone does.


#15

Provide me with a fool-proof Conrad parts list and I will see if it makes any sense to buy ten of each instead of one.
If, on the other hand, someone here has these things stocked, I'm also a taker. ;-)


Edited: 25 Apr 2012, 8:26 a.m.

#16

Quote:
The specification says that the range increases with the timing accuracy. I've tried to produce the best possible timing by using the built-in timers instead of a pin controlled by software. The effort seems to pay off.

I'm skeptical of this claim that HP made in their manual having done some experimentation with my own circuit sending data to this printer. I find that several percent variations in timing make no difference at all, I get a range of around 1 foot with a couple of milliamps. Current and efficiency of the IR emitter make a huge difference in range. Peak wavelength of the IR emitter makes some difference as well from my limited experiments with a few different LED's. HP says that 940nm is optimum, but I'm not so sure they got that right.

I'm sure that you could get this to work across a large room if you pump 500ma into an IR emitter like many TV remote controls do. But it would take a couple of AAA cells for that. Drawing the max current from the two CR2032 cells without lowering the voltage to the point of brown out, I except that we'll get a range of 6 to 8 feet. I'm going to experiment with this and report my findings.

#17

I will do the IR mod on my AAAA powered Xtaled unit first.

And then move it to the CR 2032 machines when range/IR Led are stabilized.

I use a 82240B

Thank you for this additional great development!

Etienne

#18

I probably will. Great work you have done implementing it and Katie demonstrating it works!

#19

I would too. But how "clean" can the hardware integration be?

#20

Hmmmh - I've got a 82240A. For me, however, it's the same question as for Pascal. It's quite nice to appear with my very own calculator :-) but I don't want it looking too nerdy with tape all around and cuts everywhere. And as long as there's a stable DSSTL connection to a PC for editing, printing, and whatever else I don't really need an IR connection illuminating a cone of I-dunno-how-many degrees with the scarce power of my two CR2032 cells. No, I won't do this now.


#21

Quote:
It's quite nice to appear with my very own calculator :-) but I don't want it looking too nerdy with tape all around and cuts everywhere


Hopefully, I'll have worked out a nice looking and tested design and have a picture of it later today.


#22

I've got some good news for all your IR printing fans.

I found these T-1 (3mm) size IR emitters at Digikey and they work great! With no transistor I get a range of 20 inches straight on:

and a range of 12 inches at around 30 degrees:

This LED fits unobtrusively and snugly (no glue needed) into a 7/64" hole drilled into the end of the case:


Here's the internal overview:

and the closeup of the IR emitter (aka LED) with the 390 ohm current limiting series resistor (1/8 watt):

which is finished off using a bit of heat shrink tubing:

Here's a close up of the PCB connections:

Other things you might want to know: I used 28 gauge wire wrap for connections. I used a bit of hot melt glue to keep those wires from interfering with the battery contacts, etc., there's enough room to run these thin wires underneath the LCD. The short leg of the LED is the cathode, that goes to ground (the corner pin of U3 on the PCB, or some other ground point, there are many). The long leg of the LED is the anode and goes to PC7 of the CPU which is only accessible on the PCB at R18.

I see little reason to use a transistor for greater range unless this morphs into a universal IR remote control device. I'm very happy with the efficiency of these emitters. I measured a peak current of 4ma. The duty cycle while sending data to the printer is only around 10% -- that's an insignificant battery drain. You could print continuously for several hundred hours on a set of CR2032 cells (CPU power consumption aside).

Edited: 25 Apr 2012, 11:38 p.m.


#23

Now that looks like good lookin'. Thank, Katie. Don't forget, however, 95% of the world: 7/64" ~= 2,8mm. But 28 gauge wire ?? Fortunately, we share the Ohms and Watts and mA :-)


#24

Quote:
Now that looks like good lookin'. Thank, Katie. Don't forget, however, 95% of the world: 7/64" ~= 2,8mm. But 28 gauge wire ?? Fortunately, we share the Ohms and Watts and mA :-)

+1. With this cleaner solution, I would be interested but I wonder if it is not better till Marcus finishes designing the "global" extension he is talking about, the one with 1 To memory, GPS, Internet access, coffee machine, foot massage, stock markets 100% accurate predictions...


#25

For the stock markets accurate predictions we need some external help, I'm afraid.

I'll go and try to find the necessary parts and modify my units accordingly. It couldn't be less obtrusive. Thanks, Katie!


#26

1D random walk will do ...

#27

Quote:
95% of the world: 7/64" ~= 2,8mm.

I realized that, but thought that I should report exactly what I used since it's a perfect fit and I don't know if you can buy 2.778125mm drill bits. 'T-1' size LED's like this one mean that they are specified as nominally 1/8" in diameter the alternate 3mm designation is just an approximation for the rest of the world to use. The entire world-wide lighting industry still specifies bulbs in terms of 1/8" units, Edison casts a really big shadow!


Quote:
But 28 gauge wire ??

OK you've got me on this. I'm talking about solid core wire used for wire-wrapping and in the US and Canada it's specified in AWG -- American Wire Gauge -- terms. AWG is almost always just called "gauge" around these parts. However I've seen this wire on Australian electronics distributors websites specified using AWG too.


#28

In this case, Wikipedia is our friend: see http://de.wikipedia.org/wiki/American_Wire_Gauge for metric equivalents (in German - little revenge ;-)

#29

I think that any thin wire will do. :-)

For the drilling I'll try to find a 2.8mm drill. This should be good enough, even for a calculator that supports 34 digits. ;-)


#30

Quote:
I think that any thin wire will do. :-)

For the drilling I'll try to find a 2.8mm drill. This should be good enough, even for a calculator that supports 34 digits. ;-)


All my wirewrap wire is 30AWG... I see no reason not to use it.

And I'll try a #36 bit, and if that is too small then might go for a #35. (A #35 is bigger than 7/64in and very slightly smaller than 2.8mm.) I suspect if the T1 LED won't go into a #36 hole, I can wobble the bit and make the hole slightly larger but almost certainly either one will friction fit the T1 LED. If not there is always room for a dab of glue on the inside!

And don't you just love this mix of units... AWG is smaller as the number gets larger because it was derived from how many fit in how much space (like a screen size measures holes in an area). Drill bits make holes, but are measured by the size of the hole so are larger as the number gets larger. A T1 LED is nominally 1/8in, which is pretty close to 3mm, but a T1-3/4 is usually less than 0.20in and almost exactly 5mm. Huh?

But for all you countries that have standardized on metric, tell me about the standard sizes of your construction lumber and plumbing pipes now as opposed to what they were before metric...


#31

Quote:
But for all you countries that have standardized on metric, tell me about the standard sizes of your construction lumber and plumbing pipes now as opposed to what they were before metric...

All metric sizes in lumber and almost all in plumbing after some 200 years d:-) So there's a long way to go for the USA, the most allegiant subordinate of the Britisch Empire of measures ... d;-)

#32

Quote:
All metric sizes in lumber

Perhaps more importantly: do you actually get what the size says? I'm not sure whether a US 2x4 (i.e. 2" by 4", at least in name) was ever really that size. But, if you buy one now, it is more like 1.5" by 3.5" .


#33

We get what we buy here. If timber is listed as 38mm x 12mm it will be very close to those dimensions -- within a fraction of a millimeter.


- Pauli


#34

Quote:
We get what we buy here. If timber is listed as 38mm x 12mm it will be very close to those dimensions -- within a fraction of a millimeter.

Because as I understand it, they kept the same sizes of lumber and plumbing, but gave them new names in keeping with their actual metric dimensions...

So a 38mm x 12mm sounds just about like what we in the "most allegiant province" would call a 1in x 2in. (I think maybe our 1x2's are closer to 16mm or 18mm rather than 12mm.) The only wood product I can think of that would be 38mm x 12mm would be some molding or trim.

My barn and fences are made with rough sawn lumber from a local mill (a few decades ago). It is really close to the nominal dimensions and has a rough surface from the coarse saw blade used in the mill. Normally it would have been finish planed to actual (as opposed to nominal) size. In the "old days" finish planing would take off 1/4" (6mm) or so from each surface, but now the rough is much smaller so finish planing removes only 1/16" to 1/8".


#35

Quote:
So a 38mm x 12mm sounds just about like what we in the "most allegiant province" would call a 1in x 2in.

I knew precision and accuracy were (are?) spelled a bit different in the US of A, but also my WP 34S :-) tells me 28mm are 1.5" and 12mm are less than 0.5". How did you ever make it to the moon?

#36

Quote:

I knew precision and accuracy were (are?) spelled a bit different in the US of A, but also my WP 34S :-) tells me 28mm are 1.5" and 12mm are less than 0.5". How did you ever make it to the moon?


As for the moon... That was before all this confusion with metric was much of an issue here in the U.S. But probably we would be metric now if the idea to convert had not been championed by Jimmy Carter or if Carter had managed to get elected to a second term.

A 1x2 is a somewhat standardized stick of lumber with dimensions of (I go to the other room to find a piece and measure...) (returning 5 minutes later) 37mm x 18mm.

I think my late-night SWAG was sufficiently accurate for what is about the smallest and cheapest piece of lumber around (used as a furring strip, etc.). I would not be at all surprised to find different suppliers vary by 1-2mm in both directions or if my steel ruler in dim lighting caused my measurement of the piece I had to be off that much. 2mm not accurate enough? It changes by that much when I hit it with a hammer.

So what is a 38x12mm piece of wood used for in metric speaking countries?


#37

Quote:
So what is a 38x12mm piece of wood used for in metric speaking countries?

The same purposes as you mentioned, amongst other things.

The difference is I buy a piece of 38x12mm rather than a 2x1" (which really should be 50x25mm).


- Pauli


#38

It's easier to find strips of 40mm x 10mm or 40mm x 20mm in my country, but they are always dimensioned as advertized in that range. If you happen to find pieces of 40mm x 15mm at a storage place labeled 50mm x 25mm it's an *obvious misplacement or wrong labeling*.


#39

Give us another hundred years of metric and these odd dimensions will disappear I'm sure.


- Pauli

#40

38mm x 12mm comes out quite close to 1 1/2" x 1/2". I've no idea how this translates to the USA's rather obscure system of not getting what it says :-)


We're slowly moving away from imperial sizes but it is very slow. House building materials tend to be imperial in the dimension where it matters and metric in others -- e.g. wall cladding comes in 8' x 1.2m sheets. However they are starting to appear in 2.4m x 1.2m which is roughly the same but nicely metric.

Pipes don't adhere to imperial dimensions as strictly, although the imperial measures can still be found in some but by no means all diameters. Lengths are metric predominately.

Bolts are an oddity. Our door fittings use 5/32" Whitworth almost exclusively, and this doesn't seem to be changing fast. Most other uses have switched to the metric M series when compatibility with existing nuts isn't mandatory.


I guess this mixture is because we're transitional still. Australia went metric in the 1970s and it will probably take a generation or two to fully switch. Most of Europe has had 200 years of metric. I don't for a second regret the changeover -- but please no flame fests over which system is better.


- Pauli


#41

The US was supposed to transition to the metric system in the 1970's too. When I was in middle school (1970) we spent most of that year in science class learning the metric system in preparation for this. Not a fun year for me science-wise, but I figured that it was a fair trade off if the rest if the world learned English as I was terrible at languages and was failing my Spanish class.

Now, a lot more of the world speaks English, a lot more Spanish is spoken in the US, and aside from the auto industry we're still hanging on to the imperial system pretty well. So much for long-term, large-scale planning in the US -- it seems an impossible task in this country.

#42

Dave:

Quote:
Quote:
All metric sizes in lumber

Perhaps more importantly: do you actually get what the size says? I'm not sure whether a US 2x4 (i.e. 2" by 4", at least in name) was ever really that size. But, if you buy one now, it is more like 1.5" by 3.5".

A bit of trivia: I saw (no pun intended!) on a TV show why "dimensioned" lumber , like "two-by-fours" don't really measure to their nominal dimensions. The reason is that all the dimensioned lumber starts as 12"x12" boards at the lumber mill, and they are cut-down from there, and saw kerfs (blade thickness) accounts for the loss. So, a 12"x12" would make 6x3 (18) 2"x4" boards, but by the time you subtract all the loss due to the blade-width (making sawdust!), you end-up with 1.5"x3.5" boards!

Your trivia for the day,

Bruce.

#43

To all the European fellows which want to print: I've just ordered a bag of 25 LEDs from a local supplier. I'm willing to share them for a small donation to our SF page. I think I can build the combined LED/resistor/cable assembly for direct installation into the unit. I can add the parts for the crystal modification as well.

#44

Thank you for the update and description! That looks good. I will have to try and see how it fits in with my AAAA modification as I also would like to keep it looking as original as possible :-).

#45

Nice work Katie!

#46

I'm a bit concerned about how this mod would coexist with the USB port mod. Is there room for both of them fore of the LCD? By the way, when/where can we get USB board for implanting into the calculator?


#47

If I am not mistaken, Harald is looking to incorporate the IR LED on the USB board, so we'll get an all-in-one solution. Contact Harald in his thread about the USB board.

#48

Give me a little more time. I am impatient myself ;)
I'll present the solution as soon as I have it.

Edited: 30 Apr 2012, 8:19 a.m.

#49

Quote:
Today I'll be implementing the missing features, namely trace and program listing. :-)

And when can we expect being able to control our TV sets and SAT receivers with the WP34s-IR? ;-)

But seriously again:

I see this is printing.txt:

"PRTREG takes a descriptor of the form rrr.nnn in X (see R-SORT for an example)"

Wouldn't it be more comfortable to use a descriptor bbb.eee instead, i.e. specifying the begin and end register?

Edited: 25 Apr 2012, 8:12 a.m.


#50

Franz, I'm just reusing the code already in place for the R- commands. The descriptor format is the same as in R-SORT: rrr.nn (only two digits for the count, not three). I will correct the readme file.


#51

Quote:
The descriptor format is the same as in R-SORT: rrr.nn (only two digits for the count, not three).

Ok, so it's not possible to print (or sort) ALL 100 registers at once (because 0.99 is the maximum)?

Or is there any trick to do this, for example omitting the fractional part (i.e. using 0.0)?

Edited: 25 Apr 2012, 8:27 a.m.


#52

All R-commands treat nn=00 as the maximum available. The same holds for PRTREG.


#53

Quote:
All R-commands treat nn=00 as the maximum available. The same holds for PRTREG.

Ok, then everything is good!

How could I doubt at all that experts like you would think about such useful tricks? ;-)
#54

Some words to the maximum distance between the IR transmitter and the receiver. Of course we can increase the distance between both by increasing the current through the transmitter LED. But IMHO this is the wrong way.

Let us go back to the early times of a HP48(SX) and the HP82240B printer. The maximum distance was about 20 inch. The main reason for this "short" distance is the design of the HP82240B receiver part. When I'm using the same HP48(SX) as transmitter and a receiver build with the TSOP1833 chip, the max. distance is greater than 120 inch!

So IMHO a max. distance with the WP 34S and the HP82240B as receiver of one foot, mentioned by Katie, is good enough.

Christoph

#55

Marcus:

I would try modifying my unit! IR printing is a *huge* plus for developing programs, and then for archiving them. Although I realize that's pretty old-school nowadays... ;-)

I haven't looked inside an HP-30b/WP-34s; is there room to (reasonably) mount an IR diode in there? It wouldn't have to be at the top, and in fact, the left or right side would be fine for me.

Also, as far as a transistor to increase power/range, I would vote for the minimalist solution---the lowest power---in order to avoid stressing the tiny batteries... 6"-8" is good enough in my book.

Thanks,

Bruce.

#56

Quote:
A short poll: How many WP 34S owners are interested in modifying their units? The modification requires the crystal (for timing accuracy) and Katie's modification (IR diode, resistor, eventually transistor).

I'm totally in!


Edited: 25 Apr 2012, 7:30 p.m.

#57

Quote:
Today I'll be implementing the missing features, namely trace and program listing.

Trace mode is very nice!!!

(I don't think that you've implemented program listing yet.)


#58

Try again!


#59

I found that all the printer commands have moved to be in P.FCN under the cute little printer icon.

print-PROG works but has at least one bug. Print a short program, clear the program and print again and you'll see as many END commands as lines in the prior program.

Also the "=" annunciator remains on now after some printing commands are completed. I can't quite figure out the bug conditions.


#60

Katie, the "=" stays on as long as the calculator thinks that that printer still has some data buffered, i. e. as long as the internal column counter is non zero. A pADV command should clear the annunciator. Can you test the pPROG problem again?

The new version has some enhancements in tracing, and I have removed a hack specific to the printing emulation on the PC. You need to upgrade Christoph's emulator to version 1.02 (see first post).


#61

I just loaded calc_ir_full.bin (2891) and lots of printing stuff that was working is now broken. print-STK waits for a while then overflows on each line of output. Trace overflows all the time too. I set print-DLAY to 9 and that doens't help.

I'm not running the emulator at all.


#62

Thanks for the info. I've changed something in the timing between bytes that might be broken now. I don't have my transmitter working yet so I must rely on your reports.

#63

I'm interested! The IR printing possibilities have finally prompted me to try the WP 34S (have sent off for my flashing cable today - thanks Gene!)

Cheers

James

#64

Hi Katie,

Which one is the cathode?

I'm looking forward to trying this.

Thanks,
-B


#65

The short leg of the LED is the cathode.


#66

Thanks. I meant the pink or green wire in your photo as I couldn't quite make out the orientation of your diode ;-). However, you have explained it nicely in your later post (3mm diode). Thank you for all your work & photo's.
-B


#67

Oh. This thread is a mess time-wise. Anyway, pink being close to red (the common color for positive) goes to the anode, while green (the common color for ground) goes to the cathode.


#68

Thanks. I know, with all these sub-threads it all gets a bit mixed-up. I got two 3mm IR emitters from Maplin, so I'll be trying it soon. I had guessed the green was ground, but just wanted to be sure. Glad to see some people keeping to general convention :-).

#69

That makes me think I should probably add that to my USB adaptor bord. I just got back from my holiday and will resum work on that soon.

Harald


#70

I'm thinking of a combined daughter board with all the extensions:

  1. Quartz and its capacitors
  2. FTDI USB interface chip
  3. IR transmitter and components
  4. SPI Memory
With all this on a single board a user would just have to cut out the case for the USB connector and IR transmitter and solder a bunch of wires to the various pads on the calculator board.

#71

I can see where you are coming from, but I am not sure it is a good idea to put the crystal and capacitors on a different board and connect them via relatively long wires. Is it really that difficult to solder the components on the calculator PCB?

Have you already written code for the SPI memory?


#72

Quote:
Have you already written code for the SPI memory?

Not yet no.


- Pauli

#73

If the crystal components cannot be put on a daughter board, be it. I've converted several units by adding the tiny caps and it was a nightmare each time. I'm just hoping this can be made easier.

SPI memory isn't my favorite expansion but once it's there I'm sure we'll support it. I'm still undecided for what (user storage, library space, XROM, who knows).

The whole idea behind the daughter board is to make modifying the hardware a task that many more people can (and will) succeed in doing in order to enable the many advanced functions which rely on it.


#74

Quote:
SPI memory isn't my favorite expansion but once it's there I'm sure we'll support it. I'm still undecided for what (user storage, library space, XROM, who knows).

XROM isn't really feasible. Have to get the code in there somehow. User data is a possibility as is library space however.


- Pauli

#75

Quote:
If the crystal components cannot be put on a daughter board, be it. I've converted several units by adding the tiny caps and it was a nightmare each time. I'm just hoping this can be made easier.

I was able to use thru-hole components for the capacitors and the crystal. Even to the point of using a trimmer cap for timing adjustment (see the picture above). There's a lot of room for tall components inside the 30b.

#76

Quote:
I'm thinking of a combined daughter board with all the extensions:
  1. Quartz and its capacitors
  2. FTDI USB interface chip
  3. IR transmitter and components
  4. SPI Memory

That was essentially my suggestion sans crystal which I'd
recommend against. Reason being such purposefully energy
conservative oscillator designs are extremely susceptible
to external interference as well as parasitic effects of
their interconnect, to the extent PCB routing itself must be
minimal and carefully controlled.

Concerning the FTDI USB an alternate possibility is a USB
capable uC with SPI interconnect. If the uC flash is
oversized, it may be possible to dispense with (or augment)
the SPI flash/RWM. Having a uC available to generate/interpret
IR data will free up the comparatively precious sam7 flash
as well as provide a means for supporting bidirectional
communication.


#77

You want to replace the serial debug connection by a USB converter which rules out any 'intelligent' device. SAM_BA should work with the construction.


#78

Quote:
You want to replace the serial debug connection by a USB converter which rules out any 'intelligent' device. SAM_BA should work with the construction.

A USB <-> serial converter is basically a closed special purpose
intelligent device. I'm simply advocating use of an open
programmable version of the same to allow additional functionality
while conserving board space.

Allowing USB source power would also be useful in debug/development
scenarios to avoid depleting the CR2032s.

#79

Quote:
Reason being such purposefully energy conservative oscillator designs are extremely susceptible to external interference as well as parasitic effects of their interconnect, to the extent PCB routing itself must be minimal and carefully controlled.

You're 100% correct on this. The signal level on the 32Khz dive is around 100mv. I added a trimmer cap and thought that I might be able to adjust using the frequency counter but the signal is so low that the that 10x 'scope probe causes the frequency to shift substantially. I had to use multi-day trial and error to adjust the trimmer.

Ideally the firmware could be enhanced to output a 1pps clock on one of the i/o pins for calibration purposes. But I don't know if anyone else has bothered to use a trimmer cap.

#80

I've added SF T to enable tracing and fixed a bad bug in the allocation of the statistics registers in the course.

Some commands got new names (see edited post above).

Please test!


#81

Quote:
Some commands got new names (see edited post above).

... or look into the most recent manual. You'll find it here:
http://wp34s.svn.sourceforge.net/viewvc/wp34s/doc/Manual_wp_34s_3_1.pdf?view=markup&pathrev=2882 :-)

Please read and test!


Possibly Related Threads…
Thread Author Replies Views Last Post
  [WP-34S] Unfortunate key damage with update to V3 :( svisvanatha 5 3,250 12-10-2013, 11:37 PM
Last Post: Les Bell
  WP-34S (Emulator Program Load/Save) Barry Mead 1 1,830 12-09-2013, 05:29 PM
Last Post: Marcus von Cube, Germany
  DIY HP 30b WP 34s serial flash/programming cable Richard Wahl 2 2,568 12-04-2013, 11:14 AM
Last Post: Barry Mead
  Help: HP-41CX and IR module Marcel Samek 13 4,099 11-14-2013, 11:00 AM
Last Post: Marcel Samek
  WP 34S/43 ?'s Richard Berler 3 2,095 11-10-2013, 02:27 AM
Last Post: Walter B
  My FrankenCulator (wp-34s) FORTIN Pascal 4 2,210 11-09-2013, 06:18 PM
Last Post: FORTIN Pascal
  WP 34S Owner's Handbook Walter B 5 2,719 11-09-2013, 05:34 PM
Last Post: Harald
  wp 34s overlay and programming. FORTIN Pascal 6 2,943 11-08-2013, 01:28 PM
Last Post: Nick_S
  m.dy in display of WP-34S Harold A Climer 3 1,979 11-05-2013, 11:28 AM
Last Post: Andrew Nikitin
  IR printer failure Andrew Nikitin 7 2,536 11-05-2013, 11:25 AM
Last Post: Andrew Nikitin

Forum Jump: