Giter Site home page Giter Site logo

kebhr / scratch3-tello Goto Github PK

View Code? Open in Web Editor NEW
77.0 7.0 32.0 104 KB

Let's fly Tello with Scratch 3.0 !

Home Page: https://scratch3-tello.app/

License: Other

JavaScript 99.26% Shell 0.74%
scratch scratch3 tello scratch-extension computer-science-education

scratch3-tello's People

Contributors

aladzhov avatar berserks03 avatar diwowet avatar haldosax avatar kebhr avatar maxvolobuev avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

scratch3-tello's Issues

Open exe without connecting to Tello

Hi, I noticed that in the documentation, The following was bolded:
After connecting to Tello, launch Scratch3-Tello.exe
I was wondering if there is anyway to open the exe without connecting to a Tello. This might be a duplicate of the discussion here. Would love to contribute if there some direction in your mind? Thanks for the excellent project!

Mac version crashes on startup

Using the compiled mac versuin hwere ....


Translated Report (Full Report Below)

Process: Scratch Desktop [8839]
Path: /Applications/Scratch Desktop.app/Contents/MacOS/Scratch Desktop
Identifier: edu.mit.scratch.scratch-desktop
Version: 3.10.4 (3.10.4)
Code Type: X86-64 (Native)
Parent Process: launchd [1]
User ID: 506

Date/Time: 2021-11-12 21:07:46.8852 -0600
OS Version: macOS 12.1 (21C5031d)
Report Version: 12
Bridge OS Version: 6.1 (19P50631c)
Anonymous UUID: 9B4A7380-34AD-19A1-468F-A6CCBA25ABC6

Time Awake Since Boot: 1700 seconds

System Integrity Protection: enabled

Crashed Thread: 0

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: Namespace DYLD, Code 1 Library missing
Library not loaded: @rpath/Electron Framework.framework/Electron Framework
Referenced from: /Applications/Scratch Desktop.app/Contents/MacOS/Scratch Desktop
Reason: tried: '/Applications/Scratch Desktop.app/Contents/MacOS/../Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/Applications/Scratch Desktop.app/Contents/MacOS/../Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/Library/Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/System/Library/Frameworks/Electron Framework.framework/Electron Framework' (no such file)
(terminated at launch; ignore backtrace)

Application Specific Information:
Library not loaded: @rpath/Electron Framework.framework/Electron Framework
Referenced from: /Applications/Scratch Desktop.app/Contents/MacOS/Scratch Desktop
Reason: tried: '/Applications/Scratch Desktop.app/Contents/MacOS/../Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/Applications/Scratch Desktop.app/Contents/MacOS/../Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/Library/Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/System/Library/Frameworks/Electron Framework.framework/Electron Framework' (no such file)

Thread 0 Crashed:
0 dyld 0x10e3b60ce __abort_with_payload + 10
1 dyld 0x10e3cc1cf abort_with_payload_wrapper_internal + 80
2 dyld 0x10e3cc201 abort_with_payload + 9
3 dyld 0x10e37a613 dyld4::halt(char const*) + 375
4 dyld 0x10e37655d dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 3955
5 dyld 0x10e3754b4 start + 388

Thread 0 crashed with X86 Thread State (64-bit):
rax: 0x0000000002000209 rbx: 0x0000000000000000 rcx: 0x00007ff7bc367678 rdx: 0x00007ff7bc367ae0
rdi: 0x0000000000000006 rsi: 0x0000000000000001 rbp: 0x00007ff7bc3676c0 rsp: 0x00007ff7bc367678
r8: 0x00007ff7bc3676e0 r9: 0x0000000000000000 r10: 0x000000000000008c r11: 0x0000000000000246
r12: 0x000000000000008c r13: 0x00007ff7bc367ae0 r14: 0x0000000000000001 r15: 0x0000000000000006
rip: 0x000000010e3b60ce rfl: 0x0000000000000246 cr2: 0x000000010e37ce3c

Logical CPU: 0
Error Code: 0x02000209
Trap Number: 133

Binary Images:
0x10e370000 - 0x10e3dbfff dyld (*) <15411f2c-1dc7-3958-b73d-d85cdf549ec1> /usr/lib/dyld

External Modification Summary:
Calls made by other processes targeting this process:
task_for_pid: 0
thread_create: 0
thread_set_state: 0
Calls made by this process:
task_for_pid: 0
thread_create: 0
thread_set_state: 0
Calls made by all processes on this machine:
task_for_pid: 0
thread_create: 0
thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=800K resident=0K(0%) swapped_out_or_unallocated=800K(100%)
Writable regions: Total=9224K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=9224K(100%)

                            VIRTUAL   REGION 

REGION TYPE SIZE COUNT (non-coalesced)
=========== ======= =======
STACK GUARD 56.0M 1
Stack 8192K 1
VM_ALLOCATE 12K 3
__DATA 32K 3
__DATA_CONST 80K 1
__LINKEDIT 216K 3
__TEXT 596K 2
dyld private memory 1024K 1
=========== ======= =======
TOTAL 65.9M 15


Full Report

{"app_name":"Scratch Desktop","timestamp":"2021-11-12 21:07:46.00 -0600","app_version":"3.10.4","slice_uuid":"596191eb-2c06-339c-917c-d986342c029e","build_version":"3.10.4","platform":1,"bundleID":"edu.mit.scratch.scratch-desktop","share_with_app_devs":1,"is_first_party":0,"bug_type":"309","os_version":"macOS 12.1 (21C5031d)","incident_id":"513CAC25-DDBA-4CCE-AE52-4D0FF2467759","name":"Scratch Desktop"}
{
"uptime" : 1700,
"procLaunch" : "2021-11-12 21:07:44.9062 -0600",
"procRole" : "Background",
"version" : 2,
"userID" : 506,
"deployVersion" : 210,
"modelCode" : "iMacPro1,1",
"procStartAbsTime" : 1698719613452,
"coalitionID" : 2089,
"osVersion" : {
"train" : "macOS 12.1",
"build" : "21C5031d",
"releaseType" : "User"
},
"captureTime" : "2021-11-12 21:07:46.8852 -0600",
"incident" : "513CAC25-DDBA-4CCE-AE52-4D0FF2467759",
"bug_type" : "309",
"pid" : 8839,
"procExitAbsTime" : 1700697116499,
"cpuType" : "X86-64",
"procName" : "Scratch Desktop",
"procPath" : "/Applications/Scratch Desktop.app/Contents/MacOS/Scratch Desktop",
"bundleInfo" : {"CFBundleShortVersionString":"3.10.4","CFBundleVersion":"3.10.4","CFBundleIdentifier":"edu.mit.scratch.scratch-desktop"},
"storeInfo" : {"deviceIdentifierForVendor":"665605F8-4558-5D41-A526-23F69C453296","thirdParty":true},
"parentProc" : "launchd",
"parentPid" : 1,
"coalitionName" : "edu.mit.scratch.scratch-desktop",
"crashReporterKey" : "9B4A7380-34AD-19A1-468F-A6CCBA25ABC6",
"bridgeVersion" : {"build":"19P50631c","train":"6.1"},
"sip" : "enabled",
"isCorpse" : 1,
"exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGABRT"},
"termination" : {"code":1,"flags":518,"namespace":"DYLD","indicator":"Library missing","details":["(terminated at launch; ignore backtrace)"],"reasons":["Library not loaded: @rpath/Electron Framework.framework/Electron Framework","Referenced from: /Applications/Scratch Desktop.app/Contents/MacOS/Scratch Desktop","Reason: tried: '/Applications/Scratch Desktop.app/Contents/MacOS/../Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/Applications/Scratch Desktop.app/Contents/MacOS/../Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/Library/Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/System/Library/Frameworks/Electron Framework.framework/Electron Framework' (no such file)"]},
"asi" : {"dyld":["Library not loaded: @rpath/Electron Framework.framework/Electron Framework","Referenced from: /Applications/Scratch Desktop.app/Contents/MacOS/Scratch Desktop","Reason: tried: '/Applications/Scratch Desktop.app/Contents/MacOS/../Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/Applications/Scratch Desktop.app/Contents/MacOS/../Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/Library/Frameworks/Electron Framework.framework/Electron Framework' (no such file), '/System/Library/Frameworks/Electron Framework.framework/Electron Framework' (no such file)"]},
"extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
"faultingThread" : 0,
"threads" : [{"triggered":true,"id":91233,"threadState":{"r13":{"value":140701991336672},"rax":{"value":33554953},"rflags":{"value":582},"cpu":{"value":0},"r14":{"value":1},"rsi":{"value":1},"r8":{"value":140701991335648},"cr2":{"value":4533505596},"rdx":{"value":140701991336672},"r10":{"value":140},"r9":{"value":0},"r15":{"value":6},"rbx":{"value":0},"trap":{"value":133},"err":{"value":33554953},"r11":{"value":582},"rip":{"value":4533739726,"matchesCrashFrame":1},"rbp":{"value":140701991335616},"rsp":{"value":140701991335544},"r12":{"value":140},"rcx":{"value":140701991335544},"flavor":"x86_THREAD_STATE","rdi":{"value":6}},"frames":[{"imageOffset":286926,"symbol":"__abort_with_payload","symbolLocation":10,"imageIndex":0},{"imageOffset":377295,"symbol":"abort_with_payload_wrapper_internal","symbolLocation":80,"imageIndex":0},{"imageOffset":377345,"symbol":"abort_with_payload","symbolLocation":9,"imageIndex":0},{"imageOffset":42515,"symbol":"dyld4::halt(char const*)","symbolLocation":375,"imageIndex":0},{"imageOffset":25949,"symbol":"dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*)","symbolLocation":3955,"imageIndex":0},{"imageOffset":21684,"symbol":"start","symbolLocation":388,"imageIndex":0}]}],
"usedImages" : [
{
"source" : "P",
"arch" : "x86_64",
"base" : 4533452800,
"size" : 442368,
"uuid" : "15411f2c-1dc7-3958-b73d-d85cdf549ec1",
"path" : "/usr/lib/dyld",
"name" : "dyld"
}
],
"sharedCache" : {
"base" : 140703231553536,
"size" : 15218327552,
"uuid" : "4615d93b-88ac-3433-9374-0d7be43ddd95"
},
"vmSummary" : "ReadOnly portion of Libraries: Total=800K resident=0K(0%) swapped_out_or_unallocated=800K(100%)\nWritable regions: Total=9224K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=9224K(100%)\n\n VIRTUAL REGION \nREGION TYPE SIZE COUNT (non-coalesced) \n=========== ======= ======= \nSTACK GUARD 56.0M 1 \nStack 8192K 1 \nVM_ALLOCATE 12K 3 \n__DATA 32K 3 \n__DATA_CONST 80K 1 \n__LINKEDIT 216K 3 \n__TEXT 596K 2 \ndyld private memory 1024K 1 \n=========== ======= ======= \nTOTAL 65.9M 15 \n",
"legacyInfo" : {
"threadTriggered" : {

}
},
"trialInfo" : {
"rollouts" : [
{
"rolloutId" : "607844aa04477260f58a8077",
"factorPackIds" : {
"SIRI_MORPHUN_ASSETS" : "60ef663fa2f864203caf575c"
},
"deploymentId" : 250000055
},
{
"rolloutId" : "60da5e84ab0ca017dace9abf",
"factorPackIds" : {

  },
  "deploymentId" : 250000007
},
{
  "rolloutId" : "60356660bbe37970735c5624",
  "factorPackIds" : {

  },
  "deploymentId" : 250000013
},
{
  "rolloutId" : "5ffde50ce2aacd000d47a95f",
  "factorPackIds" : {

  },
  "deploymentId" : 250000063
},
{
  "rolloutId" : "5fc94383418129005b4e9ae0",
  "factorPackIds" : {

  },
  "deploymentId" : 250000154
},
{
  "rolloutId" : "602ad4dac86151000cf27e46",
  "factorPackIds" : {

  },
  "deploymentId" : 250000250
},
{
  "rolloutId" : "601d9415f79519000ccd4b69",
  "factorPackIds" : {
    "SIRI_TEXT_TO_SPEECH" : "6184371b8763315b96047a4d"
  },
  "deploymentId" : 250000308
}

],
"experiments" : [

]
}
}

node

sir i have this code run in my code my code in add extension tello3 drone in not solve earror node dgrame in telloprocessor please tell me solution about this earror quickly

Not working

Hello!
I tried to run Scratch Tello in three different computers, but with no success.
I also ran the clear command queue and also didn't work.
Could you give me any suggestion?

functional?

Hey @kebhr

I am so excited to see this repo. I would love to get students up and running with Tello and Scratch 3. Is the current build functional (sorry, I didn't see any details in the readme/etc.)?

Thanks much.
Andy

Repeating tello commands if tello fails to execute them

Dear Kanta Ebihara

Thank you for publishing your Scratch3 tello extension. It must have been a lot of work to figure out how to control the tello drone from scratch.

I use your scratch tello extension to teach programming at a primary school in the Netherlands. During the coding workshops, kids have to program some maneuvers or try to find and land on a mission pad automatically.

Sometimes my tello drones fails to perform a command at the first time. However, when I send the same command again a few seconds later, it is performed as expected. I have found a nice idea in this python library (https://github.com/damiafuentes/DJITelloPy): commands are repeated if tello fails the execute them.

I have tried to add repeating of tello commands to the scratch3 tello extension. Similar to the scratch "Wait X sec" block, the tello blocks are also waiting until tello confirms a command with "ok". If tello does not reply within 7-10sec or answers with an error message, then the command is sent again to the drone. The code makes use of the scratch util.yield() function, which ensures that the scratch even loop keeps on calling the code of the tello block, until it succeeds.

I thought, you might find the code interesting. Feel free to download it here:
scratch3_tello.zip

Please do not hesitate to reply if you have any comment or question on the code.

Best regards,
Andreas Zolnay

wrong behaviour

when I execute takeoff Tello takes off and starts drifting to the back right.
and it won't receive any other command.
then after some seconds, it starts blinking red and loose connection to scratch

How to get Scratch3-Tello with the Lego Boost estension

hi
I have an issue : i need to set up training for engineer with a combination of tello and a lego boost. I ahve seen that scratch3 includes the lego boost extension (but not the tello one) while the scratch desktop (based on scratch3) does not include the lego boost extension.
Is it normal? do I have to do something the get both extension ?
Thanks in advance for your answer. My objective is to set up a business cse with a recognition drone and a recovery car controlled by the same application.

Installation issues on Ubuntu

I'm a teacher in an association and I learn to code to children on Tello drone.

I have compile scratch3-tello on Ubuntu 21.04 on a raspberry pi and also on Lubuntu 20.04.3 on PC.
The result of this compilation is OK on the 2 platforms.
But when I launch scratch3-tello with "npm start", I obtain this 2 debug windows, same error messages in the console :
Capture d’écran du 2021-09-22 19-51-31
But I still can command Tello with Scratch.

And making the package with "npm run dist:dir" doesn't work :
Capture d’écran du 2021-09-22 20-04-47

The version of node and npm are the same in the 2 platforms :
Capture d’écran du 2021-09-22 20-16-19

Thanks for this good job kebhr

reconnect to tello without restarting scratch

Great to see that you developed this extension for the Tello for Scratch 3.0. However, I am looking for a way to have Scratch reconnect to the drone without having to restart the application every time. The connection is lost quite often with the batteries only supplying about 10 minutes of flying time (max).

Is there a way of doing this? Maybe by running a separate script in the background?

Drone command buffer acts weird

I can't say for sure if this is an issue with the drone itself or the version of the scratch 3 tello I am using, but putting fairly simple code like when I press right arrow, move some amount of distance to the right results in unintended outcomes. It takes off fine and I can press right arrow and it moves right, however because I pressed right for more than 1 frame and the drone takes more than 1 frame to move it just executes that command over and over and over and over until it hits a wall or it runs out of commands that have built up in the queue. I've tried using clear command queue but that seems to cause it to ignore a lot of commands. Perhaps it is an issue with how I am coding it and the scratch code has to be more complex, but all I really want to achieve as as follows: a pretty intuitive keyboard control that when you use arrow keys it moves the direction you press until you let go and is then able to respond to you pressing another direction pretty quickly. If that isn't possible due to limitations in the drone, then I understand.

about tello Extension plug-in problem

すみません、あなたが開発したtelloプラグインを見て、とても好きです。

しかし、使っているうちに、telloの状態値が正常に戻らないことが分かりました。このプラグインにビデオ伝送機能を追加できますか?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.