Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 07:31 19 May 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : CMM2: Bug reports

     Page 14 of 17    
Author Message
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1421
Posted: 03:49pm 18 Jun 2020
Copy link to clipboard 
Print this post

I was pulled away early last night to deal with something, so that is why I disappeared. The good part is that I had a late meal at an Irish pub: English Curry. It was delicious, if not ethnically confusing.

Only one Waveshare version of the board was discovered to have issues - that of GregZone. Perhaps others are out there with this issue, but have not changed any options. It could be a lurking issue for them.

No amount of cleaning cures the 10 boards that I have (on older software), but this new software change does fix things nicely. Thank you for making changes Peter.

Being robust about testing things on power up as well as having confidence in the validity of RAM values is a good programming practice.
Micromites and Maximites! - Beginning Maximite
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1421
Posted: 03:55pm 18 Jun 2020
Copy link to clipboard 
Print this post

  GregZone said  
  matherp said  Not so fast - I've just coded round an underlying H/W problem - not a good solution

I'd suggest that slow settling time of the applied internal pull-ups is more likely related to PCB trace capacitance / inductance.

I've left my workroom for the night, so I haven't inspected the PCB routing associated with pin 40, but is it possible that this is a longer trace perhaps running alongside a ground trace or copper fill?
(Just thinking out loud with some end of day tired thoughts).

ps. Hopefully CircuitGizmos can replicate the last test successfully with his boards as well.


I agree. It isn't contamination. The boards are clean. It would be difficult to believe that contamination would be low enough impedance to offset the pin pill up. Possibly there is an issue causing a borderline condition at the time of the test.

Nevertheless a more robust approach to the software is a good approach.
Micromites and Maximites! - Beginning Maximite
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1421
Posted: 04:02pm 18 Jun 2020
Copy link to clipboard 
Print this post

  GregZone said  
However, I was then able to do OPTION SD TIMING CONSERVATIVE, and my SD Card "Check Disk" error disappeared!


That is what I will be setting the SD TIMING to on boards that I ship. Best to be safe.
Micromites and Maximites! - Beginning Maximite
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3865
Posted: 04:07pm 18 Jun 2020
Copy link to clipboard 
Print this post

  matherp said  
  Quote  Do you want to take a look?


Certainly need to get to the bottom of it.

Please try the following test version and let me know if the issue still occurs

CMM2V5.05.03b1r.zip


Thanks Peter, that seems to have fixed it  

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3865
Posted: 05:13pm 18 Jun 2020
Copy link to clipboard 
Print this post

BUG: Value of MM.INFO$(CURRENT) is incorrect

To reproduce

1. Run a program, e.g. RUN "A:/subdir/foo.bas"
2. Print MM.INFO$(CURRENT)

Expected behaviour

Prints "A:/subdir/foo.bas"

Actual behaviour

Prints "Asubdir/foo.bas"

Regards,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8605
Posted: 05:58pm 18 Jun 2020
Copy link to clipboard 
Print this post

Fixed in b1s - usual download
 
GregZone
Senior Member

Joined: 22/05/2020
Location: New Zealand
Posts: 114
Posted: 06:11pm 18 Jun 2020
Copy link to clipboard 
Print this post

  CircuitGizmos said  
  GregZone said  
However, I was then able to do OPTION SD TIMING CONSERVATIVE, and my SD Card "Check Disk" error disappeared!


That is what I will be setting the SD TIMING to on boards that I ship. Best to be safe.


Given the comments I've seen showing some people seem to need CONSERVATIVE to get their SD Card working (even with my new 32G SANDISK Card), could I suggest that it might be prudent to make the CONSERVATIVE setting the default (to avoid lots of new owner support issues down the track).

ie. The default setting should be the one that works for everybody!

If some people want to try turbo charging their system, they could then experiment with a option like: SD TIMING FAST, to see if it worked for their particular SD Card.

Just my 2c
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3865
Posted: 07:09pm 18 Jun 2020
Copy link to clipboard 
Print this post

BUG: Function keys do funky things during LINE INPUT

To reproduce

Run this:
Cls
Do
 Line Input "? ", s$
Loop

Press F1, F2, ... F12

Actual behaviour

Pressing the function keys produces the following output:

F2 -> RUN [CRLF]
F3 -> LIST [CRLF]
F4 -> EDIT [CRLF]
F10 -> AUTOSAVE [CRLF]
F11 -> XMODEM RECEIVE [CRLF]
F12 -> XMODEM SEND [CRLF]
Others do nothing

Expected behaviour

Not this. Probably they should do nothing.

Regards,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1032
Posted: 09:22pm 18 Jun 2020
Copy link to clipboard 
Print this post

  GregZone said  
  CircuitGizmos said  That is what I will be setting the SD TIMING to on boards that I ship. Best to be safe.

Given the comments I've seen showing some people seem to need CONSERVATIVE to get their SD Card working (even with my new 32G SANDISK Card), could I suggest that it might be prudent to make the CONSERVATIVE setting the default (to avoid lots of new owner support issues down the track).

ie. The default setting should be the one that works for everybody!

If some people want to try turbo charging their system, they could then experiment with a option like: SD TIMING FAST, to see if it worked for their particular SD Card.

Just my 2c


I would tend to agree to have the CONSERVATIVE setting as default then everyone (including myself) should be able to have immediate access the SD card regardless.

For what it is worth (2c), I measured the PIN 39 to PIN 40 resistance on my CircuitGizmos board & got open circuit with the multimeter positive on pin 39 & about 2M with the negative on PIN 39.

Apart from the SD card problems, my CMM2 seems to be going along OK with the little I've done with it so far.

Brian
Edited 2020-06-19 07:23 by Chopperp
ChopperP
 
abraxas
Regular Member

Joined: 16/06/2020
Location: Canada
Posts: 99
Posted: 09:23pm 18 Jun 2020
Copy link to clipboard 
Print this post

Yeah, about this SD timing thing...

I actually spent a few hours of troubleshooting getting my CMM2 working when I got it on Wednesday. I went through 3 different SD cards until I landed on one that CMM2 liked. I just assumed the others were busted as they were pretty old but maybe in hindsight they were just being pushed too hard by CMM2? Since I did not know about the existence of the CONSERVATIVE option I kept trying cards until I found one that worked.

Unfortunately I threw away "the bad ones" and kept the one that worked since they were all under 16GB and I have a whole bunch of larger SD cards. I now kind of regret throwing them out and have no way to try them again with the CONSERVATIVE setting on.

As a new user I would also be in favor of making it a default setting since the initial experience matters a lot to newcomers.
 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1032
Posted: 09:39pm 18 Jun 2020
Copy link to clipboard 
Print this post

  abraxas said   Unfortunately I threw away "the bad ones"


I tend to keep all of mine, unless they are obviously damaged.

Still got the first one I ever bought: a 32MB one for a Kodak camera. Cost about $AU40 at the time.

Good to have you aboard

Brian
ChopperP
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9082
Posted: 09:41pm 18 Jun 2020
Copy link to clipboard 
Print this post

SD card stuff is interesting.  I am using an old 4GB card(Apacer 4GB class 6), and do NOT have the conservative option set, and it always works, in every one of the CMM2's I have built, as I use the exact same card to test each board is working OK etc.

I think the 'Not all SD cards are the same' thing is coming into play here.
I am kinda surprised by the fact that big 32GB cards are not wanting to respond unless the conservative option is set.  The bigger cards should be perfectly happy with a faster(then the older cards) clock.  Odd...   Check that your bigger cards are AT LEAST class 6 speed rating.  I would expect cards like 32GB+ are probably U1 speed(or class-10 at least) and should never have an issue with the CMM2 SD clock speed....

On the recommendation to change to conservative by default, I think that is also probably a good idea in light of a few people having even bigger(and faster clock) cards that still don't want to talk unless the conservative option is set.

Peter?

I hope to be able to build at least one more of my Y's from JLC today, and run more tests, but it would seem that matherp has come up with a firmware work-around for now anyway.
Smoke makes things work. When the smoke gets out, it stops!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8605
Posted: 09:46pm 18 Jun 2020
Copy link to clipboard 
Print this post

  Quote  BUG: Function keys do funky things during LINE INPUT


Function keys generate text strings F1-F4 are terminated by CRLF. Others are not and will just stack up in the buffer. Answer, don't press them if you are using LINE INPUT

MMBasic can't cater for every non-sensical user activity
 
GregZone
Senior Member

Joined: 22/05/2020
Location: New Zealand
Posts: 114
Posted: 10:32pm 18 Jun 2020
Copy link to clipboard 
Print this post

  Grogster said  SD card stuff is interesting.  I am using an old 4GB card(Apacer 4GB class 6), and do NOT have the conservative option set, and it always works, in every one of the CMM2's I have built, as I use the exact same card to test each board is working OK etc.

I think the 'Not all SD cards are the same' thing is coming into play here.
I am kinda surprised by the fact that big 32GB cards are not wanting to respond unless the conservative option is set.  The bigger cards should be perfectly happy with a faster(then the older cards) clock.  Odd...   Check that your bigger cards are AT LEAST class 6 speed rating.  I would expect cards like 32GB+ are probably U1 speed(or class-10 at least) and should never have an issue with the CMM2 SD clock speed....

On the recommendation to change to conservative by default, I think that is also probably a good idea in light of a few people having even bigger(and faster clock) cards that still don't want to talk unless the conservative option is set.

Peter?


For reference, the SD Cards I have tried with my CMM2 are:

- SanDisk Ultra Class 10 32GB (SD)
- Lexar Platinum II Class 6 8GB (SD)
- Team Class 10 8GB (MicroSD in SD Adapter)

ALL of these cards have failed to work until successfully changed to SD TIMING CONSERVATIVE option.

One other observation:

If I'm now in CONSERVATIVE mode (SD Card is functional), and I either:
a. Change the OPTION back to SD TIMING NORMAL
or
b. Run OPTION RESET
And I then use OPTION LIST to verify that the CONSERVATIVE setting is no longer active, the SD Card continues to work, even through a Reset button push.

The SD Card only fails again after an actual power cycle!

This seems kinda strange, as obviously the CONSERVATIVE setting is taking effect immediately (as the SD Card immediately starts working).
Yet, changing back to NORMAL doesn't appear to affect SD Card operation until a power cycle?
 
ps. As a new user, I hadn't found the CONSERVATIVE setting in the manual, until someone here kindly suggested I try it, to get my SD Card working.
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3865
Posted: 10:43pm 18 Jun 2020
Copy link to clipboard 
Print this post

  matherp said  
  Quote  BUG: Function keys do funky things during LINE INPUT


Function keys generate text strings F1-F4 are terminated by CRLF. Others are not and will just stack up in the buffer. Answer, don't press them if you are using LINE INPUT

MMBasic can't cater for every non-sensical user activity


We'll have to agree to disagree

However note that F10, 11 & 12 aren't even producing the expected text strings for a CMM2, which would be RUN "" without a CRLF and whatever has been set with the OPTION F11/F12 commands.

Regards,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1399
Posted: 12:17am 19 Jun 2020
Copy link to clipboard 
Print this post

I have an old Medion 32GB, a Sandisk pro 32GB and an Extreme 64GB, and another no brand 4GB, all are Micro SD cards with Adaptor and every one runs perfectly at the normal setting. Some formatted as exFAT, others are FAT32.

Perhaps a list of SD cards known to work at full speed in the CMM2 would be useful to see if it really is the SD card causing the problem "IN ALL CASES" or something else not quite right.

Mike.
It's all too hard.
Mike.
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1399
Posted: 12:21am 19 Jun 2020
Copy link to clipboard 
Print this post

  GregZone said  


The SD Card only fails again after an actual power cycle!

This seems kinda strange, as obviously the CONSERVATIVE setting is taking effect immediately (as the SD Card immediately starts working).
Yet, changing back to NORMAL doesn't appear to affect SD Card operation until a power cycle?


This sounds like another initialisation timing error at power up, perhaps caused by the same strangeness that is causing the OPTIONs reset timing issue.

Mike.
Edited 2020-06-19 10:22 by KeepIS
It's all too hard.
Mike.
 
GregZone
Senior Member

Joined: 22/05/2020
Location: New Zealand
Posts: 114
Posted: 01:04am 19 Jun 2020
Copy link to clipboard 
Print this post

  KeepIS said  This sounds like another initialisation timing error at power up, perhaps caused by the same strangeness that is causing the OPTIONs reset timing issue.

Mike.

No, I don't think it is another timing error at power up. Note that changing back to NORMAL timing (which doesn't work with my SD cards), appears to only take effect at the next power up.
Whereas changing to CONSERVATIVE (from NORMAL) takes immediate effect.

I do agree that there appears to be some strangeness going on with the apparent inconsistencies around reported SD Card support.

It may be interesting to see if there is any correlation with SoC type Y or V.

eg. If all the folk having no issues with SD Cards (at the NORMAL timing) are using V variants, then perhaps there is some subtle SD timing issue related to the Y variant?

ie. My CMM2 is a Y, what was your SoC type?
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 5923
Posted: 03:03am 19 Jun 2020
Copy link to clipboard 
Print this post

  thwill said  
  matherp said  
  Quote  BUG: Function keys do funky things during LINE INPUT


Function keys generate text strings F1-F4 are terminated by CRLF. Others are not and will just stack up in the buffer. Answer, don't press them if you are using LINE INPUT

MMBasic can't cater for every non-sensical user activity


We'll have to agree to disagree

However note that F10, 11 & 12 aren't even producing the expected text strings for a CMM2, which would be RUN "" without a CRLF and whatever has been set with the OPTION F11/F12 commands.

Regards,

Tom

If you want to accept the function keys (and others), use INKEY$

Jim
VK7JH
MMedit   MMBasic Help
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2294
Posted: 06:34am 19 Jun 2020
Copy link to clipboard 
Print this post

not wanting to fan any flames, but...

what if the "ground pin 40 to reset" functionality was removed, and instead have a full reset triggered in wither of two different ways:

1. hold down shift-1 on an attached USB keyboard while starting up, or,
2. hold down shift-1 ("!") on a terminal set to 115k and attached to the serial console?

ie, in much the same was as can be done with an MX170 micromite.

with methods 1. and 2. available, would this not cover every possible base? if the scan codes are used from the USB keyboard, it wouldn't matter what language was printed on the keytops - as far as i am aware, both the shift and "1" keys return the same scan codes irrespective of language (the "1" key may have a different shifted character printed on it, but this is unimportant). and the string of "!" characters from the serial console is there as a backup.

my feeling is that having a simple level-triggered 'master reset' input attached to what may be an undefined length of ribbon cable is, well, not the best ideal.


cheers,
rob   :-)
 
     Page 14 of 17    
Print this page
© JAQ Software 2024