uWatch Source code released



#2

I know a few of you get excited over this kind of thing :->

So just thought I'd let everyone know that the uWatch source is now available for download on the
MAIN SITE

Construction photos and instructions are up too.

Just programming and testing the first batch boards now and making sure everything is ready, so give me another day or two then the PayPal page goes up for those who have registered.

Thanks

Dave.

Edited: 18 May 2008, 6:34 p.m.


#3

DaveJ:

Very impressive!! What are your thoughts on the compatibility of HP41/HP42 RPN code with your device?

Congratulations and many thanks.

Gordon Strickland


#4

Quote:
DaveJ:

Very impressive!! What are your thoughts on the compatibility of HP41/HP42 RPN code with your device?


The uWatch only has basic macro keystroke programming, it is not compatible with other HP programs.

If you are referring to porting something like the Free42 project code, then I don't really know, I have no experience with that code.

My guess would be that it would have a real hard time fitting into the 64KB FLASH ROM on the uWatch. A larger 24F chip could be used with 256KB, but that would require a new PCB layout.
Substantial changes to the user interface would be required.

Although I'm not sure why you would even want to try to incorporate full programming into such a limited user interface design. The limited keypad on the uWatch would make the uWatch very cumbersome to program I suspect.

I picture more value coming from people being able to customise the source code themselves. You could hard program in your favourite routines and modify the menu system to your liking etc.

Anything is possible, it's just a matter of code!

Dave.


#5

Quote:
Anything is possible, it's just a matter of code!

Or, as I had on a T-shirt which I wore to occasional NASA meetings: "It's only $oftware"

#6

Dave, I'm psyched. This is great news.

This is a tall order, but I hope there's no harm in asking: If I was able to get you an image file of a custom-programmed software with the payment, would it be possible for you to program the watch thusly before shipping it to me? (There are some features I'd love to add, like "ld" and "2^x".)

(Also, I can see two versions of the student compiler on the MPLAB page -- dsPIC DSCs v3.10b and PIC24 MCUs v3.10b. Which of these would you recommend using?)

Thanks,
-cam


#7

Quote:

Dave, I'm psyched. This is great news.

This is a tall order, but I hope there's no harm in asking: If I was able to get you an image file of a custom-programmed software with the payment, would it be possible for you to program the watch thusly before shipping it to me? (There are some features I'd love to add, like "ld" and "2^x".)

(Also, I can see two versions of the student compiler on the MPLAB page -- dsPIC DSCs v3.10b and PIC24 MCUs v3.10b. Which of these would you recommend using?)


Sure, I can program anything you want into it. Just include a note with the order and email me the HEX file.

Microchip have just renamed the software!, it used to be called the C30 compiler and supported both devices. The PIC24 one is the one to get, although I'm still using a older version, but that should not matter. The micro target is 24FJ64GA004

Dave.

#8

Just to let you know, there will be a new firmware version up on the site later today.

I had some problems with the EEPROM routines which are now fixed. The 24F series PIC's have nasty silicon bugs in the I2C hardware module which required me to dump that module and code it all manually. Evil, just evil.

I hope the code is easy enough to follow. Should be fairly obvious on how to change menu options and implement your own custom functions.

There is also a "conversions" menu option which allows you to easily implement your own custom conversions in the code (e.g. kg-lbs). There are only a couple in there at the moment as an example.

I would have liked to include the ability for the user to customise all the menu options and functions without any code changes. But I haven't figured out an easy and nice way to do that yet.

Dave.


#9

Dave,

My apologies if this has been discussed before, or if it is mentioned in the documentation on your site. (I wasn't able to find anything, hence the question.)

How much space/capacity is there for programming in new functions and conversions? Is the code you have written close to maximum capacity, or is there room to grow this into something larger?

Thanks,
-cam


#10

Quote:
Dave,

My apologies if this has been discussed before, or if it is mentioned in the documentation on your site. (I wasn't able to find anything, hence the question.)

How much space/capacity is there for programming in new functions and conversions? Is the code you have written close to maximum capacity, or is there room to grow this into something larger?

Thanks,
-cam


The current code uses about 60% of the 64KB. And that is with the free version of the compiler which does not have code-size optimisations (well, it does for the first 60days, but I'm past that so am restricted)

When I had the code size optimisation option I was getting much smaller code sizes, like >30% reduction or something.

Also, I have not tried to optimise any code to reduce size.

SRAM usage is running about 15% I think.

New functions don't take much extra space at all, in the order of tens or hundreds of bytes not KB. Most of the code space it taken up by the overhead of the floating point routines.

So there is plenty of room to expand and add whatever you want. You'd be hard pressed to fill the memory with just extra menu functions and conversions.

One thing to note. The internal delay routine (used for keystroke and LCD timing etc) is dependent upon the speed-optimisation compiler setting. It is written for the lowest level optimisation (the default restricted Student version one). I should probably try and fix this!

Dave.


Edited: 19 May 2008, 9:30 p.m.


#11

Wow, this is terrific news. It sounds like there's a lot of room to extend this puppy and make it extremely capable. I'll have to take a look at the source later today. I'm pretty handy with C++, although I haven't messed directly with C in a long time.

A library of constants would be fun to include as well.

Cheers,
-cam

#12

Hi Dave. Just saw on the video that you have x!, nCr and nPr on the scrolling menu. Can't wait to get one. Question, will it be possible to have it reprogrammed if newer software versions are released. I imagine this could be a nightmare, though.

Looks like I'll need to break ou the sewing machine and make a kanga_uWatch pouch when not worn. ;) Baaaad.


#13

Quote:
Hi Dave. Just saw on the video that you have x!, nCr and nPr on the scrolling menu. Can't wait to get one. Question, will it be possible to have it reprogrammed if newer software versions are released. I imagine this could be a nightmare, though.

Looks like I'll need to break ou the sewing machine and make a kanga_uWatch pouch when not worn. ;) Baaaad.


Sorry to say that nCr and nPr are not in the latest firmware. That is a very old video, the menu options have changed fairly significantly since then. X! is there though.

The watch can be easily reprogrammed if you have a PIC 24F compatible programmer (e.g. Microchip ICD2) and cable. The kit is supplied with the programming connector, but you'll have to make up whatever cable you require for your programmer. It uses the standard Microchip ICSP interface.

In theory it would be possible to update the firmware through the serial port (requires an RS232 adapter) using a bootloader, so no PIC programmer would be required. But I have not looked into doing that yet. The first batch of watches will certainly not support this.

Dave.


#14

Not a problem. The x! will suffice just fine. As far as self-programming, I may have more success getting myself to Mars. ;)

#15

Dave, I'm getting really psyched about this and I'm checking around, looking into the world of programmers and costing them out. I'm pretty new to this, although I've had experience with EEPROM programmers in the past.

To make sure I understand that I'm looking in the right direction, would something like this (top item) work?:

http://www.electronics123.com/s.nl/sc.8/category.40/.f

(I can't tell if it would work with a cable, or ZIF socket only.)

Thanks,
-cam


#16

Quote:
Dave, I'm getting really psyched about this and I'm checking around, looking into the world of programmers and costing them out. I'm pretty new to this, although I've had experience with EEPROM programmers in the past.

To make sure I understand that I'm looking in the right direction, would something like this (top item) work?:

http://www.electronics123.com/s.nl/sc.8/category.40/.f

(I can't tell if it would work with a cable, or ZIF socket only.)

Thanks,
-cam


That one won't work I'm afraid, the software does not support the 24FJ64GA004 chip.

The only requirement is that it supports this chip and it has an ICSP interface port that is 3V compatible. A ZIF socket is not required and won't help you.

Unfortunately the PIC24F series is harder to get a low cost programmer for than the more popular 16F or 18F series

I use the official Microchip ICD2 programmer, but this is not exactly cheap.

Try the PICkit2

It is official Microchip and supports the 24FJ64GA004.

I just looked at the manual and it is 3.3V compatible. Make sure you disable the VDD target power as shown on page 22 of the manual.

It needs the latest MPLAB 8.10 software to work though, 8.00 software does not support it.

Dave.

Edited: 20 May 2008, 5:40 p.m.

#17

The uWatch kits are now available.
Those who were on the first batch list should have received an email by now. If you didn't then let me know.

Dave.


#18

Dave,

I did send you an email after your first request but did not get your most recent email. I am interested however ....

Meindert

#19

G'day Dave,

any idea when you order a second batch? I can't wait to order one...

thanks,
stefan


#20

Quote:
G'day Dave,

any idea when you order a second batch? I can't wait to order one...


You have mail...

A few people didn't rock up to claim their first batch pre-order, so they have been bumped off the list and some others have been bumped up ;-)

The 2nd batch parts have arrived and are going to the assemblers tomorrow, should take about two weeks from that date before they are ready. Once they are the order page will go online for the general public.

Curiously, less than half the orders have included a watch band. So either people are supplying their own or are simply using it as a tiny pocket calc.

Dave.


Possibly Related Threads...
Thread Author Replies Views Last Post
  HP PRIME: APP program code DISAPPEARS !! Joseph Ec 0 129 11-25-2013, 11:35 AM
Last Post: Joseph Ec
  Droid48 Reader 1.2 Released Chris Dreher 0 115 10-23-2013, 02:26 PM
Last Post: Chris Dreher
  Where to the 32-bit version of User Code Utiltiy for HP-41 ? Olivier (Wa) 2 158 09-26-2013, 01:55 AM
Last Post: Olivier (Wa)
  A HP42S Code Editor Andreas 9 428 09-22-2013, 03:17 AM
Last Post: Andreas
  SandMatrix Released - The trilogy is complete. Ángel Martin 3 234 08-30-2013, 05:35 PM
Last Post: Marcel Samek
  Dynamic Gaussian Quadrature code in Excel VBA Namir 4 256 07-30-2013, 07:37 PM
Last Post: Namir
  Latest & Last SandMath is released Ángel Martin 0 138 07-02-2013, 12:44 AM
Last Post: Ángel Martin
  any open source HP 10BII emulators? John 15 618 06-12-2013, 09:58 AM
Last Post: Kimberly Thompson
  HP48 source Han 0 107 05-26-2013, 03:34 PM
Last Post: Han
  HP 50g: Major updates for MLP / OSE / HLP released Software49g 2 167 04-15-2013, 04:49 AM
Last Post: Michael Lopez

Forum Jump: