Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User interface software #4

Open
4 of 18 tasks
roman-dvorak opened this issue May 2, 2022 · 11 comments
Open
4 of 18 tasks

User interface software #4

roman-dvorak opened this issue May 2, 2022 · 11 comments
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@roman-dvorak
Copy link
Member

roman-dvorak commented May 2, 2022

Pro SPACEDOS03 jako produkt by bylo užitečné mít obslužný SW, který bude plnit několik funkcí a bude zajišťovat dobrou kompatibilitu.

V první iteraci je potřeba zajistit několik vlastností:

  • Co nejvíce multiplatformní
  • Možnost snadné instalace - nejspíše pipy
  • Spolehlivost a kompatibilita s FW
  • Schopnost logovat data
    • Histogramy
    • Jednotlivé eventy
    • Metadata
      • Geografická poloha
      • Vlhkost
      • Teplota
      • Tlak
  • Upload dat na vyhodnocovací server (s databází měření navázanou na uživatelský účet)
  • Zvukově signalizovat tok částic. Například cvakáním. Dneska by to ale zřejmě šlo udělat i sofistikovaněji podle spektra a energie částic.
@kaklik
Copy link
Member

kaklik commented May 2, 2022

Není lepším řešením tohoto problému spíše snap, nebo appimage? Protože tyhle dvě možnosti mají právě zajistit, že aplikace bude mít všechny knihovny vlastní v otestované verzi.

@roman-dvorak
Copy link
Member Author

Pro nahrávání firmware do arduina pomocí pythonu existuje tato knihovna: https://pypi.org/project/arduinobootloader/

@roman-dvorak
Copy link
Member Author

Není lepším řešením tohoto problému spíše snap, nebo appimage? Protože tyhle dvě možnosti mají právě zajistit, že aplikace bude mít všechny knihovny vlastní v otestované verzi.

Tohle by asi měl být další zdroj té aplikace. Snap ani appimage bohužel nefungují na windows. Na druhou stranu existují balíčkovací systémy, které umí vytvořit exe a zabalit tam všechny závislosti (tj. obdoba toho, co dělá snap/appimage)

Možná je otázka, jestli je python3 vhodným jazykem pro potřeby takové aplikace. Jestli by to nemělo být v nějakém Golang, C++ nebo dokonce node.js.

@roman-dvorak roman-dvorak changed the title Obslužný software Obslužná aplikace May 2, 2022
@kaklik kaklik added enhancement New feature or request help wanted Extra attention is needed labels Jan 20, 2023
@slimonslimon
Copy link
Contributor

Co má obslužná aplikace pro PC umět?

@kaklik
Copy link
Member

kaklik commented Jan 20, 2023

Co má obslužná aplikace pro PC umět?

Kromě toho, co tu @roman-dvorak vyjmenoval hned nahoře tak, zřejmě všechno co umí tohle Gamma-MCA. Vidim tak dvě možnosti, jak tento problém s desktop aplikací vyřešit. Buď naučit Gamma-MCA to co nyní leze z LABDOSu (To není žádný standardní a trvalý formát) a nebo LABDOS naučit generovat formát dat, který žere Gamma-MCA. Následně Gamma-MCA rozšířit o ty funkce potřebné pro používání LABDOSu výše.

@kaklik kaklik changed the title Obslužná aplikace User interface software Feb 17, 2023
@kaklik
Copy link
Member

kaklik commented Feb 18, 2023

Tady jsem našel nějakou Node.js knihovnu, která by měla umět nahrávat firmware do Arduina přes bootloader.

Zkoušel jsem použít tu CLI verzi, protože tu webovou nedovedu použít. LABDOS to úspěšně resetuje, ale pak to nepokračuje v nahrávání kódu.

book:~/Downloads/fw_LABDOS_LABDOS_1024$ avrgirl-arduino flash -f LABDOS.ino.hex -a mega -p /dev/ttyUSB0 -v
connected
reset complete.
flash complete. 
Error: stk500 timeout. 200ms
    at Timeout.<anonymous> (/usr/local/lib/node_modules/avrgirl-arduino/node_modules/stk500-v2/lib/parser-v2.js:114:21)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7) {
  code: 'E_TIMEOUT'
}

Myslím si, že je to způsobené tím, že to samo používá bitovou rychlost 115200 ale LABDOS je potřeba nahrávat 57600. Nenašel jsem přepínač, kterým by to šlo snadno přepnout, asi by to bylo nutné upravit někde přímo v kódu.

@slimonslimon
Copy link
Contributor

Z README:

For Windows users

Before using your Arduino with avrgirl-arduino on Windows XP, 7, and 8, you may need to install the Arduino drivers included with the Arduino IDE. You can follow steps 1-4 on this guide to install the Arduino IDE and activate the relevant drivers. After step 4 of the guide (drivers) you will be ready to use your Arduino with avrgirl!

@kaklik
Copy link
Member

kaklik commented Feb 20, 2023

Z README:

For Windows users

Before using your Arduino with avrgirl-arduino on Windows XP, 7, and 8, you may need to install the Arduino drivers included with the Arduino IDE. You can follow steps 1-4 on this guide to install the Arduino IDE and activate the relevant drivers. After step 4 of the guide (drivers) you will be ready to use your Arduino with avrgirl!

Ty drivery na těch odkazen nemůžu přímo najít. Ale znamená to, že to používá WebUSBSerial místo WebUSB? A tím pádem to potřebuje systémové drivery pro seriovou linku?

@slimonslimon
Copy link
Contributor

No zatím jsem to moc nestudoval -omluv můj negativimus- ale první dojem je, že když existuje nějaký command-line, který spustíš na místě kde běží node.js, tedy na straně serveru, tak to bude flashovat zařízení připojené k tomu serveru.

@kaklik
Copy link
Member

kaklik commented Feb 20, 2023

No zatím jsem to moc nestudoval -omluv můj negativimus- ale první dojem je, že když existuje nějaký command-line, který spustíš na místě kde běží node.js, tedy na straně serveru, tak to bude flashovat zařízení připojené k tomu serveru.

Tak tohle by bylo nepříjemný. To mě nenapadlo. Existují ještě i další alternativy, jako třeba tohle espruino, ale tam jsem nedovedl vůbec najít knihovnu, kterou to používá.

@slimonslimon

This comment was marked as resolved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants