Re: Need help with PI PICO...

Liste des GroupesRevenir à cs raspberry-pi 
Sujet : Re: Need help with PI PICO...
De : tnp (at) *nospam* invalid.invalid (The Natural Philosopher)
Groupes : comp.sys.raspberry-pi
Date : 27. Mar 2024, 12:13:57
Autres entêtes
Organisation : A little, after lunch
Message-ID : <uu0rh5$2pcls$1@dont-email.me>
References : 1 2 3 4 5 6 7 8
User-Agent : Mozilla Thunderbird
On 26/03/2024 21:58, Pancho wrote:
On 25/03/2024 15:57, The Natural Philosopher wrote:
On 25/03/2024 11:31, Pancho wrote:
On 24/03/2024 11:13, The Natural Philosopher wrote:
>
However on trawling the internet I discovered a conversation  with someone else *on here* (c.s.r-pi) last year, who was finding that *sleep_us(x)* was highly inconsistent for certain (small) values of x. Sometimes taking a day to end.
>
Further investigation reveals that in fact it really is a 'sleep' with the processor being put in low power mode and requiring an interrupt to 'wake it up'.
>
>
Why not use threads/timers, wait on a lock/semaphore rather than sleep.
>
Good point Pancho, but I was really looking for the simplest code possible.  Interrupts can be tricky things on a platform whose architecture you do not understand completely. In any case it was a learnning curve I preferred not to negotiate if i didnt need to
>
 A timer isn't complicated, just a call back routine, and a semaphore. Interrupts are something an OS does, not me :o). I hate multithread code, but async handling of an external resource is one of the two main places I would use another thread.
 I had a look at your code, it looks extraordinarily like a python example on Tom's hardware.
 
Oh. The manufacturers sample code is the source of ALL the 'examples' that other people publish as their own., I am just being honest :-)

I'm not clear how many times it is succeeding vs failing, but I suspect you really need to bite the bullet and introduce timeouts/error handling, if it fails try again, average out multiple results. i.e. accept it as flawed and that results are statistical, like GPS.
 
Well the averaging out will happen anyway at the server side. I make the clients as simple as possible for resilience. In practice oil levels only change quickly if you have had the oil stolen overnight or if a supplier has filled the tank up, so gross deviations can have code exceptions, the rest would be the running average of maybe 20 samples.
BUT it isn't inaccuracy that worries me per se, it's that it may be an indication of underlying timing issues.

In many ways the resilience code will be simple, because it is just normal code, rather than cargo culting a novel ultrasonic device.
 
In fact the code in either case is simple.
It is:  send a 10µs pulse to the unit, wait for the echo pulse start , get the time, wait for the echo pulse end, get the time, subtract the difference.
What appears to be happening is that at short range the echo pulse never starts, or ends before the code is aware of it.

You can investigate further, by recording fail stats, as well as distance stats.
 
Failure is very very rare. I am sampling for test purposes once a second, and its usually an hour or more before it locks up.
I could simply  turn the while loop into a for loop with a counter so that even if I got a null result it wouldn't lock up. Missing one sample is no big deal: just take another!
I am slightly curious as to how  the PICO could miss what is a several hundred microsecond wide pulse.
So far I have managed to get stuff reliable without having to unpick the ARM interrupt pandora's box. I am keen to leave it closed. The LWIP stack was bad enough...:-)
Obviously interrupt on GPIO pin state would be the thing, but it would take some research to find out what the ISR was allowed to do in terms of library code that was re-entrant..
--
Civilization exists by geological consent, subject to change without notice.
  – Will Durant

Date Sujet#  Auteur
23 Mar 24 * Need help with PI PICO...35The Natural Philosopher
23 Mar 24 +* Re: Need help with PI PICO...30Ahem A Rivet's Shot
24 Mar 24 i`* Re: Need help with PI PICO...29The Natural Philosopher
24 Mar 24 i +* Re: Need help with PI PICO...27Ahem A Rivet's Shot
24 Mar 24 i i`* Re: Need help with PI PICO...26The Natural Philosopher
25 Mar 24 i i `* Re: Need help with PI PICO...25Pancho
25 Mar 24 i i  `* Re: Need help with PI PICO...24The Natural Philosopher
26 Mar 24 i i   +- Re: Need help with PI PICO...1The Natural Philosopher
26 Mar 24 i i   +* Re: Need help with PI PICO...6Ahem A Rivet's Shot
26 Mar 24 i i   i`* Re: Need help with PI PICO...5The Natural Philosopher
26 Mar 24 i i   i `* Re: Need help with PI PICO...4David Higton
27 Mar 24 i i   i  `* Re: Need help with PI PICO...3The Natural Philosopher
28 Mar 24 i i   i   `* Re: Need help with PI PICO...2Robert Riches
28 Mar 24 i i   i    `- Re: Need help with PI PICO...1The Natural Philosopher
26 Mar 24 i i   +* Re: Need help with PI PICO...12Pancho
27 Mar 24 i i   i`* Re: Need help with PI PICO...11The Natural Philosopher
27 Mar 24 i i   i +* Re: Need help with PI PICO...2David Higton
27 Mar 24 i i   i i`- Re: Need help with PI PICO...1The Natural Philosopher
29 Mar 24 i i   i `* Re: Need help with PI PICO...8Pancho
29 Mar 24 i i   i  +* Re: Need help with PI PICO...6The Natural Philosopher
29 Mar 24 i i   i  i+* Re: Need help with PI PICO...2Pancho
29 Mar 24 i i   i  ii`- Re: Need help with PI PICO...1The Natural Philosopher
30 Mar 24 i i   i  i`* Re: Need help with PI PICO...3The Natural Philosopher
30 Mar 24 i i   i  i `* Re: Need help with PI PICO...2Pancho
30 Mar 24 i i   i  i  `- Re: Need help with PI PICO...1The Natural Philosopher
29 Mar 24 i i   i  `- Re: Need help with PI PICO...1druck
28 Mar 24 i i   +* Re: Need help with PI PICO...2Björn Lundin
28 Mar 24 i i   i`- Re: Need help with PI PICO...1The Natural Philosopher
29 Mar 24 i i   `* Re: Need help with PI PICO...2Michael Schwingen
29 Mar 24 i i    `- Re: Need help with PI PICO...1The Natural Philosopher
24 Mar 24 i `- Re: Need help with PI PICO...1Michael Schwingen
24 Mar 24 `* Re: Need help with PI PICO...4Theo
24 Mar 24  `* Re: Need help with PI PICO...3The Natural Philosopher
24 Mar 24   +- Re: Need help with PI PICO...1Michael Schwingen
24 Mar 24   `- Re: Need help with PI PICO...1Theo

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal