Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 21:13

    dependabot-preview[bot] on gradle

    (compare)

  • 21:13
    dependabot-preview[bot] closed #679
  • 21:13
    dependabot-preview[bot] commented #679
  • 21:13
    dependabot-preview[bot] labeled #689
  • 21:13
    dependabot-preview[bot] opened #689
  • 21:13

    dependabot-preview[bot] on gradle

    Bump core from 1.8.2 to 1.10.0 … (compare)

  • 01:59
    cynthi8 ready_for_review #677
  • 01:59
    cynthi8 edited #677
  • 01:49
    cynthi8 synchronize #677
  • 01:24
    cynthi8 opened #677
  • 01:23
    cynthi8 edited #676
  • 01:23
    cynthi8 edited #676
  • 01:22
    cynthi8 edited #676
  • 01:01
    cynthi8 synchronize #676
  • Mar 01 10:37
    bessman synchronize #173
  • Feb 28 19:52
    bessman edited #173
  • Feb 28 19:49
    bessman commented #170
  • Feb 28 19:45
    bessman edited #173
  • Feb 28 19:44
    bessman opened #173
  • Feb 28 09:14
    bessman commented #170
Daniel Maslowski
@orangecms

I found this flow chart for the firmware:
https://github.com/CloudyPadmal/pslab-firmware/blob/pslab-v2.0/PSLabFirmwareFlowChart

And converted it to SVG:
https://metaspora.org/pslab-flowchart.svg

It is quite huge though

Daniel Maslowski
@orangecms
It was a hassle with Electron, but I finally managed to get the thing to work. We now have asar bundling reenabled, and release builds manage to locate the Python scripts correctly. Now the CI server just needs to play along and we will finally have a working binary release - .deb, .rpm, and .tar.xz for Linux. That was a :roller_coaster:
nielek2
@nielek2
great!
Daniel Maslowski
@orangecms
Thank you for volunteering to try it out. :D
I just downloaded the tar.xz and ran it - it works \o/ :tada:
That was quite some motivation++ lol :D
nielek2
@nielek2
the tar.xz also runs on my computer
Daniel Maslowski
@orangecms
Does it also detect the board?
nielek2
@nielek2
yes
Daniel Maslowski
@orangecms
Woohoo! \o/ (the tricky part was really the Python script path lookup, heh) awesome :)
nielek2
@nielek2
the file doesn't offer to run from the gui, when i double-click it
Daniel Maslowski
@orangecms
Now the basics are there for further releases. I need to dive a bit into the Docker thingies to figure out where to dig out the Windows build and we can publish that as well.
Someone already wrote in the venv issue that they could work on it. Maybe that will get us a full bundle.
nielek2
@nielek2
execute bit is set though
Daniel Maslowski
@orangecms
Hmm can you describe that a bit further? Did you navigate to the directory with a file manager like Nautilus or something?
nielek2
@nielek2
yes starting it from the terminal works but double-clicking in nemo does not - asks what program to open it with...
"unknown file type"
Daniel Maslowski
@orangecms
Which file did you try? The pslab is an ELF (executable linkable format) binary. That should just work (tm)... :thought_balloon:
$ file pslab-2.4.0/pslab                                                                                               Sat 31 Oct 2020 08:07:58 PM UTC
pslab-2.4.0/pslab: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=ebb360e3c3f594213ec97bf809c969835f21f00a, stripped
looks okay
nielek2
@nielek2
yes pslab
Daniel Maslowski
@orangecms
My girlfriend is volunteering to try it out. I think the .deb and .rpm packages actually generate .desktop files so that you can see the app in an app launcher / menu and launch from there.
Do other binaries run when you double-click them in Nemo?
nielek2
@nielek2
yes
Daniel Maslowski
@orangecms
looks like linuxmint/nemo#2385
nielek2
@nielek2
file --mime-type pslab pslab: application/x-sharedlib
Daniel Maslowski
@orangecms

yup:

$  file --mime-type pslab-2.4.0/pslab                                                                                   Sat 31 Oct 2020 08:15:19 PM UTC
pslab-2.4.0/pslab: application/x-sharedlib

Nemo expects application/x-executable. I'll need to check if electron-builder offers that option. Thank you!

Maybe the upgrade to Electron 10 will fix it. That is a bit out of scope for us. Otherwise, I would ask people to prefer the .deb/.rpm packages if they have distros built upon those, or just run from a command line. For distros where packages can be submitted easily - like Arch -, I can simply add a .desktop file there.
Alexander Bessman
@bessman
The .deb installs, runs, and connects to the device, but none of the instruments seem to work.
Is PSL supposed to be bundled? I can't find it.
nielek2
@nielek2
tried measuring resistance in multimeter mode and it seems to work fine in the in the tar.xz, but i had PSL installed before
Daniel Maslowski
@orangecms
It's not bundled yet, no.
Maybe there is something like a debug build option. One issue I have otherwise is that all the output is omitted, so I was completely in the dark regarding what might be going wrong regarding the path lookup for the Python scripts.
There is https://www.electron.build/#debug but that is only for build time investigation from what I can tell.
Daniel Maslowski
@orangecms
Okay, this works:
env ELECTRON_ENV=development ./pslab-2.4.0/pslab --remote-debugging-port=8315
Then open http://localhost:8315/ and follow the link to linker.html - that's the process that spawns the Python shell underneath. And then you can investigate errors there and should see the stdout/stderr output.
this is an example from not being able to connect without PSLab plugged in, and it should also output any other errors with interfacing with the Python library etc
Daniel Maslowski
@orangecms
I have opened, extended and closed a couple of issues. A bunch of things have been achieved. :) I will get back to my PR for the proximity sensor next week and also look into ways to display sensor data
Mario Behling
@mariobehling
Awesome!
Daniel Maslowski
@orangecms
The "just upgrade Electron" thing is a little more work than anticipated. There is quite some things going on in their future roadmap, so we might need to rework architectural bits. Don't worry though, there are always options and about every app relies on the core interfaces they are about to change.
With contributions towards testing and venv, we can gain stability around the integration. If IPC (inter process communication) turns put to be too complicated, we can always switch to TCP based RPC, like many other apps also do. Python can handle websockets for subscriptions, which we could use for continuous data flows like reading from sensors.
Daniel Maslowski
@orangecms
Is anyone still tracking the development of the original SEELablet / ExpEYES projects?
https://expeyes.in/ / https://github.com/csparkresearch looks like there is still much going on there.
The made another board named kuttyPy, based on ATMEGA32: https://github.com/csparkresearch/KuttyPy-GUI
Mario Behling
@mariobehling
Last time I checked there was not much going on, but I see there were some updates. Nice. Do you think we could make use of anything here? Though he does not release the hardware. Cannot see it.
Daniel Maslowski
@orangecms
Not sure, I haven't checked anyway, just saw that the last commit in this repo was from 11 days ago. :)
There are quite some docs, and this looks quite nice: https://github.com/csparkresearch/KuttyPy-GUI/tree/master/docs/firmware
Daniel Maslowski
@orangecms
We could wire up PSL with Pulseview: https://sigrok.org/wiki/Protocol_decoder_API#Backend_library
Then we don't need to care much about the logic analyzer GUI in our Electron app, in other words, we wouldn't need to reinvent the wheel. What do you think?
Mario Behling
@mariobehling
Nice, need to discuss pros and cons.
I opened this issue a long time ago using my phone (and I am a slow phone typer). So basically just noted down some bullet points back then as a reminder fossasia/pslab-hardware#74