Now that I have my Pi based weather station[1] in operation and mounted up on the peak of my garage roof ...
… I need to do something with the data it provides. Sadly the code reading the sensors is in Python (for now!) but it sends it as MQTT packets to a mac-mini running the broker. I’m working with Craig on an MQTT client (very early state on http://www.squeaksource.com/@gWFeIvLx-rTHKE2R/Gtrt3pje) to read it but then what?
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs? What kind of graphs are good for weather data? Should there be chocolate? I guess I ought to store some amount of collected data so maybe it’s time I got to grips with Magma. I’m interested in all ideas that might lead somewhere fun with this. With those ESP8266 wi-fi enabled sorta-arduino things so cheap and easy to set up there must be a gazillion interesting things that could be monitored and analyzed and graphed and indeed actuated in response; let’s not forget that MQTT works both ways.
How about a rain sensor sending a message that its raining (duh) which gets collected and turned into a message to your car to close the sunroof before the velvet seat covers (with painted portrait of Elvis, natch) get wet? Or a strain gauge on your security fence alerting you that something heavier than 20 pounds has climbed over so the remote gatling needs hotting up?
tim [1] Pi model A+ with gpio attached interface board for rain bucket, wind speed/direction, outdoor temp/humidity, indoor temp, RTC and USB attached Ethernet interface to POE adaptor. WiFi wasn’t practical due to metal roof. Besides, POE means I can hard-reboot by pulling a plug in my server room :-)
-- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: IIB: Ignore Inquiry and Branch anyway
On Tue, Dec 20, 2016 at 05:36:16PM -0800, tim Rowledge wrote:
Now that I have my Pi based weather station[1] in operation and mounted up on the peak of my garage roof ...
Sounds like fun :-)
??? I need to do something with the data it provides. Sadly the code reading the sensors is in Python (for now!) but it sends it as MQTT packets to a mac-mini running the broker. I???m working with Craig on an MQTT client (very early state on http://www.squeaksource.com/@gWFeIvLx-rTHKE2R/Gtrt3pje) to read it but then what?
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs? What kind of graphs are good for weather data? Should there be chocolate? I guess I ought to store some amount of collected data so maybe it???s time I got to grips with Magma. I???m interested in all ideas that might lead somewhere fun with this. With those ESP8266 wi-fi enabled sorta-arduino things so cheap and easy to set up there must be a gazillion interesting things that could be monitored and analyzed and graphed and indeed actuated in response; let???s not forget that MQTT works both ways.
We had some very suitable graph drawing packages about 10 or 15 years ago, so I pulled out some old images that I was working on back then to have a look. I remember being able to interact directly with the graphs, and open inspectors on the points on the graph to look at the data, that sort of thing.
Unfortunately I find to my considerable dismay that I cannot run those images any mmore. I suspect a few too many numbered primitive updates in the intervening years, yuk. Might be time to move to SqueakJS.
Dave
How about a rain sensor sending a message that its raining (duh) which gets collected and turned into a message to your car to close the sunroof before the velvet seat covers (with painted portrait of Elvis, natch) get wet? Or a strain gauge on your security fence alerting you that something heavier than 20 pounds has climbed over so the remote gatling needs hotting up?
tim [1] Pi model A+ with gpio attached interface board for rain bucket, wind speed/direction, outdoor temp/humidity, indoor temp, RTC and USB attached Ethernet interface to POE adaptor. WiFi wasn???t practical due to metal roof. Besides, POE means I can hard-reboot by pulling a plug in my server room :-)
-- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: IIB: Ignore Inquiry and Branch anyway
On Tue, Dec 20, 2016 at 09:47:39PM -0500, David T. Lewis wrote:
On Tue, Dec 20, 2016 at 05:36:16PM -0800, tim Rowledge wrote:
Now that I have my Pi based weather station[1] in operation and mounted up on the peak of my garage roof ...
Sounds like fun :-)
??? I need to do something with the data it provides. Sadly the code reading the sensors is in Python (for now!) but it sends it as MQTT packets to a mac-mini running the broker. I???m working with Craig on an MQTT client (very early state on http://www.squeaksource.com/@gWFeIvLx-rTHKE2R/Gtrt3pje) to read it but then what?
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs? What kind of graphs are good for weather data? Should there be chocolate? I guess I ought to store some amount of collected data so maybe it???s time I got to grips with Magma. I???m interested in all ideas that might lead somewhere fun with this. With those ESP8266 wi-fi enabled sorta-arduino things so cheap and easy to set up there must be a gazillion interesting things that could be monitored and analyzed and graphed and indeed actuated in response; let???s not forget that MQTT works both ways.
We had some very suitable graph drawing packages about 10 or 15 years ago, so I pulled out some old images that I was working on back then to have a look. I remember being able to interact directly with the graphs, and open inspectors on the points on the graph to look at the data, that sort of thing.
Indeed I was thinking of PlotMorph, as Bernhard Pieber suggested in his reply.
Unfortunately I find to my considerable dismay that I cannot run those images any mmore. I suspect a few too many numbered primitive updates in the intervening years, yuk. Might be time to move to SqueakJS.
Following up on this, the backward compatibility for interpreter VM supporting old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt to align the primitive table closer to Cog/Spur:
VMMaker 4.15.9
Various refactorings for stack/context interpreters.
VMMaker tool allow selection of context or stack interpreter (stack is not yet functional, requires struct code generation).
Add some FilePlugin updates from oscog, excluding those with platforms code dependencies (primitiveDirectoryEntry, primitiveDirectoryDelimitor).
Retire some old primitives in Interpreter class>>initializePrimitiveTable to align with oscog.
I confirmed that the prior version does still run my older images from 10 or 15 years ago. For the record, that version of the code can be checked out and compiled with:
$ svn co -3749 http://squeakvm.org/svn/squeak/trunk/platforms $ svn co -r3749 http://squeakvm.org/svn/squeak/trunk/src $ mkdir build; cd build $ cp ../platforms/unix/cmake/Makefile.example Makefile $ make $ sudo make install
I'm trying to think of a suitable way to initialize the primitive table at runtime, such that a wider range of images can be supported. But I guess that discussion belongs on vm-dev.
Dave
Is there a specific oldest image which current VMs are expected to run?
On 12/21/16 11:38 AM, David T. Lewis wrote:
Following up on this, the backward compatibility for interpreter VM supporting old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt to align the primitive table closer to Cog/Spur:
On Wed, Dec 21, 2016 at 05:15:29PM -0500, Bob Arning wrote:
Is there a specific oldest image which current VMs are expected to run?
A current interpreter VM should run a Squeak 3.2 image, although with some problems. It should be able to run images from the Squeak 3.6 and 3.8 era without problems. And it should run anything else up to but not including Spur.
Dave
On 12/21/16 11:38 AM, David T. Lewis wrote:
Following up on this, the backward compatibility for interpreter VM supporting old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt to align the primitive table closer to Cog/Spur:
Is the current interpreter VM (for the mac) one of the ones on http://www.squeakvm.org/mac/? I'm not clear how to parse the names of things into what they can or cannot do.
On 12/21/16 5:56 PM, David T. Lewis wrote:
On Wed, Dec 21, 2016 at 05:15:29PM -0500, Bob Arning wrote:
Is there a specific oldest image which current VMs are expected to run?
A current interpreter VM should run a Squeak 3.2 image, although with some problems. It should be able to run images from the Squeak 3.6 and 3.8 era without problems. And it should run anything else up to but not including Spur.
Dave
On 12/21/16 11:38 AM, David T. Lewis wrote:
Following up on this, the backward compatibility for interpreter VM supporting old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt to align the primitive table closer to Cog/Spur:
I am referring specifically to an interpreter VM that you might build from the latest updated sources according to this recipe:
http://wiki.squeak.org/squeak/6354
That is not very helpful if you are on a Mac, sorry for that. I think that it may work on Mac if you have the X11 support installed, but I am not in a position to verify it.
The squeakvm.org site is getting out of date, although Ian Piumarta said in private email that he would welcome constructive input to bring it up to date, and possibly to update the interpreter VM builds if there is some general interest in doing so.
Dave
On Wed, Dec 21, 2016 at 06:17:55PM -0500, Bob Arning wrote:
Is the current interpreter VM (for the mac) one of the ones on http://www.squeakvm.org/mac/? I'm not clear how to parse the names of things into what they can or cannot do.
On 12/21/16 5:56 PM, David T. Lewis wrote:
On Wed, Dec 21, 2016 at 05:15:29PM -0500, Bob Arning wrote:
Is there a specific oldest image which current VMs are expected to run?
A current interpreter VM should run a Squeak 3.2 image, although with some problems. It should be able to run images from the Squeak 3.6 and 3.8 era without problems. And it should run anything else up to but not including Spur.
Dave
On 12/21/16 11:38 AM, David T. Lewis wrote:
Following up on this, the backward compatibility for interpreter VM supporting old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt to align the primitive table closer to Cog/Spur:
On Wed, Dec 21, 2016 at 06:53:42PM -0500, David T. Lewis wrote:
On Wed, Dec 21, 2016 at 06:17:55PM -0500, Bob Arning wrote:
On 12/21/16 5:56 PM, David T. Lewis wrote:
On Wed, Dec 21, 2016 at 05:15:29PM -0500, Bob Arning wrote:
On 12/21/16 11:38 AM, David T. Lewis wrote:
Following up on this, the backward compatibility for interpreter VM supporting old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt to align the primitive table closer to Cog/Spur:
Is there a specific oldest image which current VMs are expected to run?
A current interpreter VM should run a Squeak 3.2 image, although with some problems. It should be able to run images from the Squeak 3.6 and 3.8 era without problems. And it should run anything else up to but not including Spur.
Is the current interpreter VM (for the mac) one of the ones on http://www.squeakvm.org/mac/? I'm not clear how to parse the names of things into what they can or cannot do.
I am referring specifically to an interpreter VM that you might build from the latest updated sources according to this recipe:
http://wiki.squeak.org/squeak/6354
That is not very helpful if you are on a Mac, sorry for that. I think that it may work on Mac if you have the X11 support installed, but I am not in a position to verify it.
The squeakvm.org site is getting out of date, although Ian Piumarta said in private email that he would welcome constructive input to bring it up to date, and possibly to update the interpreter VM builds if there is some general interest in doing so.
Since my reply above from last month, the interpreter VM has been updated based on logic borrowed from the SqueakJS VM, and it can now run images back to Squeak 1.13 and up to Squeak 4.6. The caveats are that you have to compile it yourself (see above) and it has only been tested on Linux.
"PluckedSound backFugue play" now works nicely in Squeak 1.13 on Ubuntu, so that is an encouraging sign. It might work on OS X with X11 installed, but I have not tried.
The interpreter VM cannot run the newer Spur images, although SqueakJS is able to do so. I do not anticipate that the interpreter VM will support Spur images, since the Cog/Spur VMs already do this very well.
Dave
On Thu, Jan 5, 2017 at 4:04 AM, David T. Lewis lewis@mail.msen.com wrote:
Since my reply above from last month, the interpreter VM has been updated based on logic borrowed from the SqueakJS VM, and it can now run images back to Squeak 1.13 and up to Squeak 4.6. The caveats are that you have to compile it yourself (see above) and it has only been tested on Linux.
Awesome!
"PluckedSound backFugue play" now works nicely in Squeak 1.13 on Ubuntu, so that is an encouraging sign.
When I try this in SqueakJS the sound seems very high-pitched. Is this the case in your VM, too? Maybe it used a different sample rate back then?
- Bert -
On Fri, Jan 06, 2017 at 03:19:33PM +0100, Bert Freudenberg wrote:
On Thu, Jan 5, 2017 at 4:04 AM, David T. Lewis lewis@mail.msen.com wrote:
Since my reply above from last month, the interpreter VM has been updated based on logic borrowed from the SqueakJS VM, and it can now run images back to Squeak 1.13 and up to Squeak 4.6. The caveats are that you have to compile it yourself (see above) and it has only been tested on Linux.
Awesome!
"PluckedSound backFugue play" now works nicely in Squeak 1.13 on Ubuntu, so that is an encouraging sign.
When I try this in SqueakJS the sound seems very high-pitched. Is this the case in your VM, too? Maybe it used a different sample rate back then?
The pitch and durations sound the same to me. I tried running the fugue on a 1.13 image and a 4.6 image at the same time. It produces an audio experience that Bach could never have anticipated, but the pitches are the same and the dueling Squeaks end their performances at about the same time.
This is Linux pulse audio on a laptop with tiny speakers.
Dave
On 06-01-2017, at 6:55 AM, David T. Lewis lewis@mail.msen.com wrote:
This is Linux pulse audio on a laptop with tiny speakers.
So PA with the older vm is generally OK? Maybe that might help us work out why it is a problem with cog/spur/threadedHB.
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Science adjusts its views based on what is observed. Faith denies observation so belief can be preserved
On 06-01-2017, at 6:55 AM, David T. Lewis lewis@mail.msen.com wrote:
This is Linux pulse audio on a laptop with tiny speakers.
So PA with the older vm is generally OK? Maybe that might help us work out why it is a problem with cog/spur/threadedHB.
tim
It seems fine to me, although I can't say that I exercised it very heavily. I just loaded the libpulse-dev libraries about a day or two ago for the first time in I don't remember when, but it worked fine as soon as I tried it.
You might try running without the threaded heartbeat and see if the symptoms change.
Dave
On Fri, Jan 06, 2017 at 09:55:28AM -0500, David T. Lewis wrote:
On Fri, Jan 06, 2017 at 03:19:33PM +0100, Bert Freudenberg wrote:
On Thu, Jan 5, 2017 at 4:04 AM, David T. Lewis lewis@mail.msen.com wrote:
Since my reply above from last month, the interpreter VM has been updated based on logic borrowed from the SqueakJS VM, and it can now run images back to Squeak 1.13 and up to Squeak 4.6. The caveats are that you have to compile it yourself (see above) and it has only been tested on Linux.
Awesome!
"PluckedSound backFugue play" now works nicely in Squeak 1.13 on Ubuntu, so that is an encouraging sign.
When I try this in SqueakJS the sound seems very high-pitched. Is this the case in your VM, too? Maybe it used a different sample rate back then?
The pitch and durations sound the same to me. I tried running the fugue on a 1.13 image and a 4.6 image at the same time. It produces an audio experience that Bach could never have anticipated, but the pitches are the same and the dueling Squeaks end their performances at about the same time.
This is Linux pulse audio on a laptop with tiny speakers.
Bert,
I have to apologize, the information I gave you above is wrong. I was running the bachFugue on a Squeak 1.31 image, not a Squeak 1.13u image.
I confirm your high pitch symptoms for Squeak 1.13u on SqueakJS, but I am not able to test 1.13u on the interpreter VM. It runs and browsers work, but I cannot evaluate an expression in a workspace. This seems to be the case for images earlier than Squeak 1.31 so something is still broken for the interpreter VM for Squeak 1.23 and earlier. The issue seems to be related to something that changed between Squeak 1.23 and Squeak 1.31.
Sound issues aside, if you want to do any serious work on a Squeak 1.13u image I still recommend using SqueakJS :-)
Sorry for the misinformation.
Dave
On Sat, Jan 7, 2017 at 12:58 AM, David T. Lewis lewis@mail.msen.com wrote:
I confirm your high pitch symptoms for Squeak 1.13u on SqueakJS, but I am not able to test 1.13u on the interpreter VM. It runs and browsers work, but I cannot evaluate an expression in a workspace. This seems to be the case for images earlier than Squeak 1.31 so something is still broken for the interpreter VM for Squeak 1.23 and earlier. The issue seems to be related to something that changed between Squeak 1.23 and Squeak 1.31.
Sound issues aside, if you want to do any serious work on a Squeak 1.13u image I still recommend using SqueakJS :-)
Some of the early images are missing UnixFileDirectory so SqueakJS has a mode for emulating Mac file names: https://github.com/bertfreudenberg/SqueakJS/search?q=emulateMac
But "1.13u" should be one of Ian's images which include this class so I'm not so sure what changed between that and 1.31 ...
- Bert -
On Tue, Jan 10, 2017 at 11:59:18AM +0100, Bert Freudenberg wrote:
On Sat, Jan 7, 2017 at 12:58 AM, David T. Lewis lewis@mail.msen.com wrote:
I confirm your high pitch symptoms for Squeak 1.13u on SqueakJS, but I am not able to test 1.13u on the interpreter VM. It runs and browsers work, but I cannot evaluate an expression in a workspace. This seems to be the case for images earlier than Squeak 1.31 so something is still broken for the interpreter VM for Squeak 1.23 and earlier. The issue seems to be related to something that changed between Squeak 1.23 and Squeak 1.31.
Sound issues aside, if you want to do any serious work on a Squeak 1.13u image I still recommend using SqueakJS :-)
Some of the early images are missing UnixFileDirectory so SqueakJS has a mode for emulating Mac file names: https://github.com/bertfreudenberg/SqueakJS/search?q=emulateMac
But "1.13u" should be one of Ian's images which include this class so I'm not so sure what changed between that and 1.31 ...
Thanks Bert. It appears to be something related to MethodContext. Since it is VM related, I initially guessed that it might be something related to the method cache, but I was able to disable that in the VM and the symptoms did not change. I'm thinking now that it might be a failure in primitive 61 when trying to copy a MethodContext, this based on the debugger stack (although I cannot actually display anything useful in the debugger).
I'll report back if I end up figuring it out, meanwhile any and all historical clues are appreciated :-)
Dave
On Tue, Jan 10, 2017 at 3:13 PM, David T. Lewis lewis@mail.msen.com wrote:
Thanks Bert. It appears to be something related to MethodContext. Since it is VM related, I initially guessed that it might be something related to the method cache, but I was able to disable that in the VM and the symptoms did not change. I'm thinking now that it might be a failure in primitive 61 when trying to copy a MethodContext, this based on the debugger stack (although I cannot actually display anything useful in the debugger).
I'll report back if I end up figuring it out, meanwhile any and all historical clues are appreciated :-)
Ah, slowly all the hacks I had to put in are coming back to me ;)
Some early images fill the context stack before advancing its stack pointer. I have a flag to allow that, it's pretty certainly used in primitive 61. Normally the VM does not allow access beyond the SP because there is garbage there (stack pops do not nil out the context slot):
https://github.com/bertfreudenberg/SqueakJS/search?q=allowAccessBeyondSP
But since the regular VM does not allow it, no image (except the really old ones) ever does it, so I just leave the flag enabled whenever "oldPrims" is in effect ;) Would be better if we could come up with a better way to identify these images.
- Bert -
On Wed, Jan 11, 2017 at 05:10:24PM +0100, Bert Freudenberg wrote:
On Tue, Jan 10, 2017 at 3:13 PM, David T. Lewis lewis@mail.msen.com wrote:
Thanks Bert. It appears to be something related to MethodContext. Since it is VM related, I initially guessed that it might be something related to the method cache, but I was able to disable that in the VM and the symptoms did not change. I'm thinking now that it might be a failure in primitive 61 when trying to copy a MethodContext, this based on the debugger stack (although I cannot actually display anything useful in the debugger).
I'll report back if I end up figuring it out, meanwhile any and all historical clues are appreciated :-)
Ah, slowly all the hacks I had to put in are coming back to me ;)
Some early images fill the context stack before advancing its stack pointer. I have a flag to allow that, it's pretty certainly used in primitive 61. Normally the VM does not allow access beyond the SP because there is garbage there (stack pops do not nil out the context slot):
https://github.com/bertfreudenberg/SqueakJS/search?q=allowAccessBeyondSP
But since the regular VM does not allow it, no image (except the really old ones) ever does it, so I just leave the flag enabled whenever "oldPrims" is in effect ;) Would be better if we could come up with a better way to identify these images.
Brilliant, thanks Bert.
I see several places where we check "fmt = 3 and: [self isContextHeader: hdr]", including in #stObject:at:put: which is probably the immediate cause of the failure that I was seeing. And #stSizeOf: does this:
(fmt = 3 and: [self isContextHeader: hdr]) ifTrue: [stSize := self fetchStackPointerOf: array] ifFalse: [stSize := totalLength - fixedFields].
I'll try playing with it this weekend and see if I can get it working for the older images.
But I have to ask ... how in the world did you figure this out?
:-)
Dave
On Wed, Jan 11, 2017 at 09:03:53PM -0500, David T. Lewis wrote:
On Wed, Jan 11, 2017 at 05:10:24PM +0100, Bert Freudenberg wrote:
On Tue, Jan 10, 2017 at 3:13 PM, David T. Lewis lewis@mail.msen.com wrote:
Thanks Bert. It appears to be something related to MethodContext. Since it is VM related, I initially guessed that it might be something related to the method cache, but I was able to disable that in the VM and the symptoms did not change. I'm thinking now that it might be a failure in primitive 61 when trying to copy a MethodContext, this based on the debugger stack (although I cannot actually display anything useful in the debugger).
I'll report back if I end up figuring it out, meanwhile any and all historical clues are appreciated :-)
Ah, slowly all the hacks I had to put in are coming back to me ;)
Some early images fill the context stack before advancing its stack pointer. I have a flag to allow that, it's pretty certainly used in primitive 61. Normally the VM does not allow access beyond the SP because there is garbage there (stack pops do not nil out the context slot):
https://github.com/bertfreudenberg/SqueakJS/search?q=allowAccessBeyondSP
But since the regular VM does not allow it, no image (except the really old ones) ever does it, so I just leave the flag enabled whenever "oldPrims" is in effect ;) Would be better if we could come up with a better way to identify these images.
Brilliant, thanks Bert.
I see several places where we check "fmt = 3 and: [self isContextHeader: hdr]", including in #stObject:at:put: which is probably the immediate cause of the failure that I was seeing. And #stSizeOf: does this:
(fmt = 3 and: [self isContextHeader: hdr]) ifTrue: [stSize := self fetchStackPointerOf: array] ifFalse: [stSize := totalLength - fixedFields].
I'll try playing with it this weekend and see if I can get it working for the older images.
But I have to ask ... how in the world did you figure this out?
:-)
Indeed, disabling the stack pointer check in #stObject:at:put: results in a VM that now works with the old Squeak1.13u.image.
Dave
On Thu, Jan 12, 2017 at 12:56 PM, David T. Lewis lewis@mail.msen.com wrote:
On Wed, Jan 11, 2017 at 09:03:53PM -0500, David T. Lewis wrote:
On Wed, Jan 11, 2017 at 05:10:24PM +0100, Bert Freudenberg wrote:
Some early images fill the context stack before advancing its stack pointer. I have a flag to allow that, it's pretty certainly used in primitive 61.
Brilliant, thanks Bert.
I see several places where we check "fmt = 3 and: [self isContextHeader:
hdr]",
including in #stObject:at:put: which is probably the immediate cause of
the
failure that I was seeing. And #stSizeOf: does this:
(fmt = 3 and: [self isContextHeader: hdr]) ifTrue: [stSize := self fetchStackPointerOf: array] ifFalse: [stSize := totalLength - fixedFields].
I'll try playing with it this weekend and see if I can get it working
for the
older images.
But I have to ask ... how in the world did you figure this out?
Well, debugging the startup code is actually quite comfortable using my VM debugger (https://lively-web.org/users/bert/squeak.html). It shows the call stack, current frame, and byte code, and lets you set a break point, and single-step through the code. Someone should make a similar UI for the Squeak VM Simulator :)
So what I did is pause the VM when the startup didn't finish, look up the call stack to see where things went wrong, set a break point for that method, run again, and then single-step to where it goes wrong.
At least I think that's what I did, because right now I can't get it to malfunction even when I disable the flag ... where exactly did it break for you?
:-)
Indeed, disabling the stack pointer check in #stObject:at:put: results in a VM that now works with the old Squeak1.13u.image
Yay! :)
- Bert -
But I have to ask ... how in the world did you figure this out?
Well, debugging the startup code is actually quite comfortable using my VM debugger (https://lively-web.org/users/bert/squeak.html). It shows the call stack, current frame, and byte code, and lets you set a break point, and single-step through the code. Someone should make a similar UI for the Squeak VM Simulator :)
So what I did is pause the VM when the startup didn't finish, look up the call stack to see where things went wrong, set a break point for that method, run again, and then single-step to where it goes wrong.
At least I think that's what I did, because right now I can't get it to malfunction even when I disable the flag ... where exactly did it break for you?
The image runs and browsers work normally. But open a workspace and evaluate "2 + 2" and you will see the error.
Dave
The link in http://www.squeakvm.org/mac/ http://www.squeakvm.org/mac/:
Squeak 4.2.5beta1U http://www.squeakvm.org/mac/release/Squeak%204.2.5beta1U.zipis for the last original Mac interpreter, this can only open the old images (no closures), there is a 4.2.5b2 version in:
http://squeakvm.org/~lewis/MacOS-test-Javier/ http://squeakvm.org/~lewis/MacOS-test-Javier/
with I recompiled for David Lewis with the then (Sep/2014) updated VMMaker, this version can open the old images and also the Cog images.
On 21 Dec 2016, at 18:17, Bob Arning arning315@comcast.net wrote:
Is the current interpreter VM (for the mac) one of the ones on http://www.squeakvm.org/mac/ http://www.squeakvm.org/mac/? I'm not clear how to parse the names of things into what they can or cannot do.
On 12/21/16 5:56 PM, David T. Lewis wrote:
On Wed, Dec 21, 2016 at 05:15:29PM -0500, Bob Arning wrote:
Is there a specific oldest image which current VMs are expected to run?
A current interpreter VM should run a Squeak 3.2 image, although with some problems. It should be able to run images from the Squeak 3.6 and 3.8 era without problems. And it should run anything else up to but not including Spur.
Dave
On 12/21/16 11:38 AM, David T. Lewis wrote:
Following up on this, the backward compatibility for interpreter VM supporting old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt to align the primitive table closer to Cog/Spur:
Thanks Javier,
We need to get the squeakvm.org/mac/ page updated to fix the dead links, delete the incorrect "lastest builds" references, and to point to your 4.2.5b2 package as the most up to date version for the Carbon VMs.
Dave
On Wed, Dec 21, 2016 at 06:58:07PM -0500, Javier Diaz-Reinoso wrote:
The link in http://www.squeakvm.org/mac/ http://www.squeakvm.org/mac/:
Squeak 4.2.5beta1U http://www.squeakvm.org/mac/release/Squeak%204.2.5beta1U.zipis for the last original Mac interpreter, this can only open the old images (no closures), there is a 4.2.5b2 version in:
http://squeakvm.org/~lewis/MacOS-test-Javier/ http://squeakvm.org/~lewis/MacOS-test-Javier/
with I recompiled for David Lewis with the then (Sep/2014) updated VMMaker, this version can open the old images and also the Cog images.
On 21 Dec 2016, at 18:17, Bob Arning arning315@comcast.net wrote:
Is the current interpreter VM (for the mac) one of the ones on http://www.squeakvm.org/mac/ http://www.squeakvm.org/mac/? I'm not clear how to parse the names of things into what they can or cannot do.
On 12/21/16 5:56 PM, David T. Lewis wrote:
On Wed, Dec 21, 2016 at 05:15:29PM -0500, Bob Arning wrote:
Is there a specific oldest image which current VMs are expected to run?
A current interpreter VM should run a Squeak 3.2 image, although with some problems. It should be able to run images from the Squeak 3.6 and 3.8 era without problems. And it should run anything else up to but not including Spur.
Dave
On 12/21/16 11:38 AM, David T. Lewis wrote:
Following up on this, the backward compatibility for interpreter VM supporting old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt to align the primitive table closer to Cog/Spur:
On Wed, Dec 21, 2016 at 05:15:29PM -0500, Bob Arning wrote:
Is there a specific oldest image which current VMs are expected to run?
Here is a summary of what I get when running a range of historical images on an interpreter VM on Linux. This is verified only on Linux with the unix VM and probably does not apply to other platforms. It requires recompiling the VM to get a current version (http://wiki.squeak.org/squeak/6354).
Year Image Status
1996 Squeak1.1.image Does not work, white screen.
1996 Squeak1.13u.image Runs well, but cannot resize main window, and "AbstractSound bachFugue play" locks up the image
1996 Squeak1.16u.image Runs well, but cannot resize main window, and "PluckedSound bachFugue play" locks up the image
1996 Squeak1.17u.image Runs well, but cannot resize main window, and "PluckedSound bachFugue play" locks up the image
1996 Squeak1.18.image Runs well, but cannot resize main window, and "PluckedSound bachFugue play" locks up the image
1997 Squeak1.22.image Runs well, but cannot resize main window, and "PluckedSound bachFugue play" locks up the image
1997 Squeak1.23.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works, sound not as good as later images
1997 Squeak1.23up.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works, sound not as good as later images
1998 Squeak1.31.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works well
1998 Squeak2.0.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works well
1998 Squeak2.1.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works well
1998 Squeak2.3.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works well
1999 Squeak2.4c.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works well
1999 Squeak2.5.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works well
1999 Squeak2.6.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works well
2000 Squeak2.7.image Runs well, but cannot resize main window. "PluckedSound bachFugue play" works well
2000 Squeak2.8.image Runs well, main window resize crashes VM, "PluckedSound bachFugue play" works well
2001 Squeak3.0.image Runs well, main window resize OK, sound OK.
2015 Squeak4.6-15102.image Runs well
2017 status:
Runs any V3 image. No Spur support, cannot run trunk. Necessary primitives have been added such that "trunk level" V3 works (system reporter reports for "trunk level" V3 images below).
32 bit image / 64 bit VM:
Image ----- /home/lewis/squeak/Squeak4.6/squeak.122.image Squeak6.0alpha latest update: #16892 Current Change Set: Follow Trunk on V3 Image format 6504 (32 bit)
Virtual Machine --------------- /usr/local/lib/squeak/4.16.3-3748/squeakvm Squeak4.5 of 10 December 2015 [latest update: #1195] Unix built on Jan 13 2017 19:03:05 Compiler: 4.9.2 platform sources revision 3748 VMMaker versionString 4.16.3
64 bit image / 64 bit VM:
Image ----- /home/lewis/squeak/Squeak4.6/squeak.122-64.image Squeak6.0alpha latest update: #16892 Current Change Set: Follow Trunk on V3 Image format 68002 (64 bit)
Virtual Machine --------------- /usr/local/lib/squeak/4.16.3-3748_64bit/squeakvm64 Squeak4.5 of 10 December 2015 [latest update: #1195] Unix built on Jan 13 2017 19:03:42 Compiler: 4.9.2 platform sources revision 3748 VMMaker versionString 4.16.3
-Dave
On 21.12.2016, at 02:36, tim Rowledge tim@rowledge.org wrote:
Now that I have my Pi based weather station[1] in operation and mounted up on the peak of my garage roof ... <IMG_0305.jpeg><IMG_0306.jpeg> … I need to do something with the data it provides. Sadly the code reading the sensors is in Python (for now!) but it sends it as MQTT packets to a mac-mini running the broker. I’m working with Craig on an MQTT client (very early state on http://www.squeaksource.com/@gWFeIvLx-rTHKE2R/Gtrt3pje) to read it but then what?
BWT: those squeaksource @-links go away very fast, can you give the project name?
Best regards -Tobias
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs? What kind of graphs are good for weather data? Should there be chocolate? I guess I ought to store some amount of collected data so maybe it’s time I got to grips with Magma. I’m interested in all ideas that might lead somewhere fun with this. With those ESP8266 wi-fi enabled sorta-arduino things so cheap and easy to set up there must be a gazillion interesting things that could be monitored and analyzed and graphed and indeed actuated in response; let’s not forget that MQTT works both ways.
How about a rain sensor sending a message that its raining (duh) which gets collected and turned into a message to your car to close the sunroof before the velvet seat covers (with painted portrait of Elvis, natch) get wet? Or a strain gauge on your security fence alerting you that something heavier than 20 pounds has climbed over so the remote gatling needs hotting up?
tim [1] Pi model A+ with gpio attached interface board for rain bucket, wind speed/direction, outdoor temp/humidity, indoor temp, RTC and USB attached Ethernet interface to POE adaptor. WiFi wasn’t practical due to metal roof. Besides, POE means I can hard-reboot by pulling a plug in my server room :-)
-- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: IIB: Ignore Inquiry and Branch anyway
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs?
I'm answering this just for the record, because I think it's overkill, but there is extensive graphing capability in muO.
For example, the one-liner
(NFunction histogram: #(5 10 15 26 12 30 10 20 25 3) origin: 0 delta: 1) display
produces the attached display.
Stef
On Wed, Dec 21, 2016 at 11:04:00AM +0100, St??phane Rollandin wrote:
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs?
I'm answering this just for the record, because I think it's overkill, but there is extensive graphing capability in muO.
For example, the one-liner
(NFunction histogram: #(5 10 15 26 12 30 10 20 25 3) origin: 0 delta: 1) display
produces the attached display.
Good graphics /and/ great audio output in a weather station? Cool! :-)
Dave
On Wed, Dec 21, 2016 at 9:36 AM, tim Rowledge tim@rowledge.org wrote:
Now that I have my Pi based weather station[1] in operation and mounted up on the peak of my garage roof ... … I need to do something with the data it provides. Sadly the code reading the sensors is in Python (for now!) but it sends it as MQTT packets to a mac-mini running the broker. I’m working with Craig on an MQTT client (very early state on http://www.squeaksource.com/@gWFeIvLx-rTHKE2R/Gtrt3pje) to read it but then what?
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs?
What kind of graphs are good for weather data? Should there be chocolate? I guess I ought to store some amount of collected data so maybe it’s time I got to grips with Magma. I’m interested in all ideas that might lead somewhere fun with this. With those ESP8266 wi-fi enabled sorta-arduino things so cheap and easy to set up there must be a gazillion interesting things that could be monitored and analyzed and graphed and indeed actuated in response; let’s not forget that MQTT works both ways.
How about a rain sensor sending a message that its raining (duh) which gets collected and turned into a message to your car to close the sunroof before the velvet seat covers (with painted portrait of Elvis, natch) get wet? Or a strain gauge on your security fence alerting you that something heavier than 20 pounds has climbed over so the remote gatling needs hotting up?
tim [1] Pi model A+ with gpio attached interface board for rain bucket, wind speed/direction, outdoor temp/humidity, indoor temp, RTC and USB attached Ethernet interface to POE adaptor. WiFi wasn’t practical due to metal roof. Besides, POE means I can hard-reboot by pulling a plug in my server room :-)
Probably too tied to Pharo for you, but worth noting Roassal has a good charting engine... https://dl.dropboxusercontent.com/u/31543901/AgileVisualization/Grapher/0203...
Maybe parts can be ported to Squeak, but its fairly tied to Athens/Cario graphics backend of Pharo so I don't know how feasible that is. The easiest way to check it out would be via Moose... http://www.moosetechnology.org/#install
cheers -ben
Maybe good, old PlotMorph suffices? http://www.squeaksource.com/PlotMorph.html
Cheers, Bernhard
Am 21.12.2016 um 02:36 schrieb tim Rowledge tim@rowledge.org:
Now that I have my Pi based weather station[1] in operation and mounted up on the peak of my garage roof ... <IMG_0305.jpeg><IMG_0306.jpeg> … I need to do something with the data it provides. Sadly the code reading the sensors is in Python (for now!) but it sends it as MQTT packets to a mac-mini running the broker. I’m working with Craig on an MQTT client (very early state on http://www.squeaksource.com/@gWFeIvLx-rTHKE2R/Gtrt3pje) to read it but then what?
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs? What kind of graphs are good for weather data? Should there be chocolate? I guess I ought to store some amount of collected data so maybe it’s time I got to grips with Magma. I’m interested in all ideas that might lead somewhere fun with this. With those ESP8266 wi-fi enabled sorta-arduino things so cheap and easy to set up there must be a gazillion interesting things that could be monitored and analyzed and graphed and indeed actuated in response; let’s not forget that MQTT works both ways.
How about a rain sensor sending a message that its raining (duh) which gets collected and turned into a message to your car to close the sunroof before the velvet seat covers (with painted portrait of Elvis, natch) get wet? Or a strain gauge on your security fence alerting you that something heavier than 20 pounds has climbed over so the remote gatling needs hotting up?
tim [1] Pi model A+ with gpio attached interface board for rain bucket, wind speed/direction, outdoor temp/humidity, indoor temp, RTC and USB attached Ethernet interface to POE adaptor. WiFi wasn’t practical due to metal roof. Besides, POE means I can hard-reboot by pulling a plug in my server room :-)
-- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: IIB: Ignore Inquiry and Branch anyway
There is even documentation including screenshots on our wiki: http://wiki.squeak.org/squeak/2626
Bernhard
Am 21.12.2016 um 16:08 schrieb Bernhard Pieber bernhard@pieber.com:
Maybe good, old PlotMorph suffices? http://www.squeaksource.com/PlotMorph.html
Cheers, Bernhard
Am 21.12.2016 um 02:36 schrieb tim Rowledge tim@rowledge.org:
Now that I have my Pi based weather station[1] in operation and mounted up on the peak of my garage roof ... <IMG_0305.jpeg><IMG_0306.jpeg> … I need to do something with the data it provides. Sadly the code reading the sensors is in Python (for now!) but it sends it as MQTT packets to a mac-mini running the broker. I’m working with Craig on an MQTT client (very early state on http://www.squeaksource.com/@gWFeIvLx-rTHKE2R/Gtrt3pje) to read it but then what?
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs? What kind of graphs are good for weather data? Should there be chocolate? I guess I ought to store some amount of collected data so maybe it’s time I got to grips with Magma. I’m interested in all ideas that might lead somewhere fun with this. With those ESP8266 wi-fi enabled sorta-arduino things so cheap and easy to set up there must be a gazillion interesting things that could be monitored and analyzed and graphed and indeed actuated in response; let’s not forget that MQTT works both ways.
How about a rain sensor sending a message that its raining (duh) which gets collected and turned into a message to your car to close the sunroof before the velvet seat covers (with painted portrait of Elvis, natch) get wet? Or a strain gauge on your security fence alerting you that something heavier than 20 pounds has climbed over so the remote gatling needs hotting up?
tim [1] Pi model A+ with gpio attached interface board for rain bucket, wind speed/direction, outdoor temp/humidity, indoor temp, RTC and USB attached Ethernet interface to POE adaptor. WiFi wasn’t practical due to metal roof. Besides, POE means I can hard-reboot by pulling a plug in my server room :-)
-- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: IIB: Ignore Inquiry and Branch anyway
There is a thread about MQTT in the "Pharo World" that you might find interesting
http://forum.world.st/MQTT-for-Pharo-tt4927759.html http://forum.world.st/MQTT-for-Pharo-tt4927759.html
and here is a link to the project
http://smalltalkhub.com/#!/~SvenVanCaekenberghe/MQTT/
Cheers Kiril
-- View this message in context: http://forum.world.st/Graphing-weather-data-tp4927701p4927926.html Sent from the Squeak - Dev mailing list archive at Nabble.com.
Yes, thanks Kiril. Frank Shearer mentioned it to me yesterday as well and I’ve taken a look. It’s a decent start but there is quite a bit still to work out. I prefer my hierarchy for the different types of packet as well, but that’s simply personal taste.
On 22-12-2016, at 7:25 AM, ksi simeonov@gmx.net wrote:
There is a thread about MQTT in the "Pharo World" that you might find interesting
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: DNPG: Do Not Pass Go
On 22-12-2016, at 7:25 AM, ksi simeonov@gmx.net wrote:
There is a thread about MQTT in the "Pharo World" that you might find interesting
Ah, sigh. I tried to reply to this thread via forum.world.st but it looks like it refuses to pass it on. I simply don’t have time to sit on the pharo email list as well as all the other stuff - so hopefully it is readable to anyone else visiting and Sven will see it anyway.
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: FCE: Fill Core with Epoxy
Are there any current projects that will work in squeak5.1/spur that can draw nice graphs?
I did a ton of work to Diego Gomez Deck's PlotMorph, which runs in trunk.
http://www.squeaksource.com/PlotMorph/
You should use Magma for any Squeak data project. Its by far the safest way to keep your objects.
On 24-12-2016, at 2:37 PM, Chris Muller asqueaker@gmail.com wrote: http://www.squeaksource.com/PlotMorph/
Looks good, the PlotMorph class>test# examples look nice, the StackedPlotMorph example fails because of missing PlotMorph class>example# methods and as with almost all our code, could do with some explanations & comments.
You should use Magma for any Squeak data project. Its by far the safest way to keep your objects.
I look forward to trying it.
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Gargoyle (n.), Popeye’s olive-flavored mouthwash.
Hey Tim
On 25.12.2016, at 00:23, tim Rowledge tim@rowledge.org wrote:
On 24-12-2016, at 2:37 PM, Chris Muller asqueaker@gmail.com wrote: http://www.squeaksource.com/PlotMorph/
Looks good, the PlotMorph class>test# examples look nice, the StackedPlotMorph example fails because of missing PlotMorph class>example# methods and as with almost all our code, could do with some explanations & comments.
What about putting that into trunk or so?
Best regards -Tobias
You should use Magma for any Squeak data project. Its by far the safest way to keep your objects.
I look forward to trying it.
tim
tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Gargoyle (n.), Popeye’s olive-flavored mouthwash.
+1 for adding it to MorphicExtras
--Hannes
On 6/20/17, Tobias Pape Das.Linux@gmx.de wrote:
Hey Tim
On 25.12.2016, at 00:23, tim Rowledge tim@rowledge.org wrote:
On 24-12-2016, at 2:37 PM, Chris Muller asqueaker@gmail.com wrote: http://www.squeaksource.com/PlotMorph/
Looks good, the PlotMorph class>test# examples look nice, the StackedPlotMorph example fails because of missing PlotMorph class>example# methods and as with almost all our code, could do with some explanations & comments.
What about putting that into trunk or so?
Best regards -Tobias
You should use Magma for any Squeak data project. Its by far the safest way to keep your objects.
I look forward to trying it.
tim
tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Gargoyle (n.), Popeye’s olive-flavored mouthwash.
On 29-06-2017, at 2:11 PM, H. Hirzel hannes.hirzel@gmail.com wrote:
+1 for adding it to MorphicExtras
You should now find it as of MorphicExtras-tpr.208.mcz
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Oxymorons: Airline Food
squeak-dev@lists.squeakfoundation.org