GPU-Accelerated Arduino Data Logging and Telemetry

Поделиться
HTML-код
  • Опубликовано: 9 июл 2024
  • In this video I share an easy to use program for visualizing data received from an Arduino or any other microcontroller or FPGA. This is an update to the program I released a couple months ago. The video starts off with two demos: an STM32-based balancing robot with accelerometer/gyro/magnetometer readings, and an Arduino Uno with potentiometer/light sensor/thermistor readings. After the demos I cover how to write the Arduino sketch, then go into detail about how to use the program, and finally cover how the source code is laid out in case you want to modify it.
    The data can be visualized as: line charts (time domain), line charts (frequency domain), histograms, and as simple dials/gauges. The Dial visualization also shows some basic statistics: min, max, mean, and standard deviation.
    If you saw the earlier video, here's a summary of changes in this new version:
    - Ported to OpenGL (so it's faster and GPU-accelerated)
    - Rewrote all charts (no longer using JFreeChart)
    - Can rewind/fast-forward by using your scroll wheel.
    - Can zoom in and out by using your scroll wheel while holding Ctrl.
    - Can change display scaling (font sizes and line thickness) by using your scroll wheel while holding Shift.
    - All data is now logged to a "log.csv" file so you can perform more advanced analysis if needed.
    - Individual charts can now be removed by click their "X" icon at the top-right corner.
    - Axis autoscaling is smoother.
    Download the program and source code here:
    farrellf.com/TelemetryViewer/
    github.com/farrellf/Telemetry...
    Telemetry Viewer is free and open source. If you find it useful and want to "buy me a coffee" that would be awesome: paypal.me/farrellfarahbod
    This video is part of a series showing how to build a balancing robot:
    Part 1: Modify RC Servos for Continuous Rotation and External H-Bridge Control
    • Modify RC Servos for C...
    Part 2: Building a Robot Chassis with Brass Square Tube, a Dremel, and Solder
    • Building a Robot Chass...
    Part 3: First Steps with a GY-86 10DOF Sensor: MPU6050, HMC5883L and MS5611
    • First Steps with a GY-...
    Part 4: 6DOF & 9DOF Sensor Fusion with Madgwick's Filter, MPU6050, HMC5883L (GY-86 Module)
    • 6DOF & 9DOF Sensor Fus...
    Part 5: How to Use CC2500 PA LNA 2.4GHz Wireless RF Modules
    • How to Use CC2500 PA L...
    Part 6: [THIS VIDEO] GPU-Accelerated Data Logging and Telemetry
    • GPU-Accelerated Arduin...
    Part 7: How to Tune PID Control Loops Visually
    • How to Visually Tune P...
  • НаукаНаука

Комментарии • 175

  • @consciousenergies
    @consciousenergies 7 лет назад +8

    This is so fantastic! I have been looking for something like this and lack the ability to code my own program. I appreciate all the work you put in and sharing it with everyone!

  • @unnable51
    @unnable51 4 года назад +1

    Wonderful work man! Congratulations !

  • @BinjKomisar11
    @BinjKomisar11 7 лет назад +3

    Thanks for making and sharing this awesome program! Its great, thanks again!

  • @russelldicken9930
    @russelldicken9930 6 лет назад +1

    An excellent piece of work! Thanks for sharing.

  • @Pedenmoeller
    @Pedenmoeller 7 лет назад

    Seriously, this is the most fantastic program I've come across in a long time.. thank you very much for sharing this! great work!

  • @mu3safi
    @mu3safi 7 лет назад +2

    WOW. Very fine and impressive work. Thank you so much for sharing even though I cannot thank you enough, Sir.

  • @barryfitzsimmons8700
    @barryfitzsimmons8700 3 года назад

    Thank you for saving so many people so much work - this is a work of art!!!

  • @RHBTurbochargers
    @RHBTurbochargers 3 года назад +1

    this is great, thank you for creating this software and thank you for spending the time to thoroughly explain it. this is exactly what i needed

  • @Avionics1958
    @Avionics1958 6 лет назад +1

    What a great job you have done!. Thank you for sharing.

  • @nakedbikelife4326
    @nakedbikelife4326 6 лет назад +2

    This saved me a ton of time, thank you!

  • @heinergoldmann2539
    @heinergoldmann2539 7 лет назад +1

    Just awesome program, saves me a lot of time, thanks a lot for sharing!!

  • @aseefk5188
    @aseefk5188 4 года назад +1

    Great work, no word. I appreciate you are sharing to the world. respect the genius

  • @hoatolagbe1
    @hoatolagbe1 7 лет назад +1

    Thank you sir!! This is how to begin innovation - integrated devices that when coupled together and programmed does fantastic jobs like a car that parks itself, drone (postal delivery, food delivery....). Thanks again.

  • @nali1511
    @nali1511 7 лет назад

    This is the most powerful program in open source i have seen !

  • @paulthecurtains2285
    @paulthecurtains2285 7 лет назад +6

    Very impressive. I'd love to see a feature for remote viewing over internet. Thanks for sharing.

  • @centurialinc
    @centurialinc 7 лет назад

    This is the best find yet! You deserve a lot more subscribers. I subed and will be trying to use your work to make some DIY race car telemetry.
    Best Matt

    • @upgrdman
      @upgrdman  7 лет назад

      Thanks for the kind feedback. Good luck!

  • @myroniv
    @myroniv 7 лет назад +1

    Great project, thank you so much for sharing your work, very helpful !

  • @Edgar-fb5dn
    @Edgar-fb5dn 5 лет назад +1

    So Nice Bro!! Thanks for teaching us!!

  • @RiFLeX117
    @RiFLeX117 6 лет назад +1

    simply amazing thank you very much for sharing this!! keep up the good work. greetings from mexico.

  • @discolapy
    @discolapy 4 года назад +1

    Thanks a lot for sharing the code!!! Great job.

  • @MrWatchd0g
    @MrWatchd0g 7 лет назад +1

    Thank you VERY VERY much, magnificent work ! And thank you for sharing !

  • @MrMropi
    @MrMropi 3 года назад +1

    amazing work

  • @baylinbridges3069
    @baylinbridges3069 6 лет назад +1

    Love the program, thank you for sharing!

  • @iacsphysics9321
    @iacsphysics9321 3 года назад

    Highly impressive and helpful

  • @Taran72
    @Taran72 5 лет назад +1

    Awesome! An upgrade!! It's great!!! :)

  • @Leoninmiami
    @Leoninmiami 7 лет назад +1

    Awesome. Simply Awesome!

  • @simaroaerial7237
    @simaroaerial7237 3 года назад +2

    Great job. Flawless video content. Thank you for sharing. From the

  • @henriqueramos444
    @henriqueramos444 7 лет назад +1

    Great job, thank you

  • @JimCoupeTQ
    @JimCoupeTQ 7 лет назад

    Wow... ! just WoW.. thanks im going to test this.

  • @user-sb7tu2ve8h
    @user-sb7tu2ve8h 7 лет назад +1

    Really cool :)

  • @winoline
    @winoline 5 лет назад +1

    Awesome, Thank you very much.

  • @skrame01
    @skrame01 7 лет назад +1

    very good, thanks!

  • @salamalbaradie5946
    @salamalbaradie5946 4 года назад +1

    Thanks for sharing , Its great, Thank you very very much

  • @hariascalgary
    @hariascalgary 3 года назад

    Very neat. Useful and intuitive. Great job.
    Question: The Export feature creates the time stamp column as Unix time. Is there a way to export as regular time?

  • @ConductiveLabs
    @ConductiveLabs 6 лет назад

    Wonderful, wonderful, wonderful!!!! I was wondering if I can edit the info for the data streams in the 'CSV Packet Data Structure' window? As I am using this as a debug tool so my data CSV from my Arduino app keeps changing. And may I say wonderful, wonderful, wonderful again!!!!

  • @sampreetsarkar5469
    @sampreetsarkar5469 7 лет назад

    Hello there, I want to build a GUI for my robot, and your previous video (Graph sensor data using JFreeChart) was the closest I could reach. I love the way you explain the code, and that makes it so easy to build up my own software. I have a slight problem though. I would like to add a window for the ultrasonic sensor monitoring, and I would like to implement the "gauge" panel you are using. Where do I start, and how do I progress? It would be really kind of you to help me.

  • @sobreviviendoalau8499
    @sobreviviendoalau8499 6 лет назад +1

    THAAAAAAAANKSSS!!!!!!!!!!!!!

  • @karenlalayan3700
    @karenlalayan3700 6 лет назад +1

    Bravo

  • @adonfff5049
    @adonfff5049 6 лет назад +1

    FANTASTIC ! Very useful !
    Could you add maximum/minimum/average landmarks (or dotted line) for all graphs please.
    It will be really helpful (it will avoid user to export csv data to get the Maximum/minimum values). Thanks again for your work (from France)

  • @lukievanniekerk4362
    @lukievanniekerk4362 10 месяцев назад +1

    i just whant to thank you. you are awesome. whant to use this in a brake system

  • @skrame01
    @skrame01 7 лет назад

    Hey could you explain how to make the y-axis not constantly autorange but maintain a specified range? Thanks!

  • @ConductiveLabs
    @ConductiveLabs 6 лет назад

    A feature request, a "serial monitor" chart type. Maybe define a special leading character that TelemViewer interprets as 'send to the serial monitor chart as text'. This way I can send debug messages in-between the CSV data stream lines. Also if strings can be sent back to the Arduino it would enable a lot of possibilities. Thanks, Steve

  • @derrickmakhathini2894
    @derrickmakhathini2894 6 лет назад

    Hi. Can this be used to retrieve data from an eddy current sensor used to detect corrosion in an overhead line?

  • @Etheros1
    @Etheros1 6 лет назад

    can i use this and get the same rate of samples from a load cell connected to arduino? Plus would the load cell need an amplifier?

  • @luizabbadia3411
    @luizabbadia3411 7 лет назад

    Thanks for your impressive program.
    If during a rainy day, you decide to put alarms as an improvement, let us know. I swear if I could I would do it,but I am not a java programer

  • @PeterWorkman
    @PeterWorkman 7 лет назад +1

    Dude this is fantastic. What are your plans for its application, beyond tuning the balancing robot's control algo?

    • @upgrdman
      @upgrdman  7 лет назад +4

      Thanks! I've been planning to make a video on how to design a crude delta-sigma ADC with an FPGA, and this program would be a big help. I plan to develop the Frequency Domain chart into something more advanced (adding a waterfall mode, automatic peak markers, etc.) to really demonstrate things nicely. I'd also like to try developing a more complex robot, maybe a hexapod or centipede, and I'm sure this program would help me struggle through the development of motion control algorithms for that. But this tool is primarily meant to be a general purpose thing for development and debugging. I've had several projects in the past where I could have really benefited from something like this, so I decided to make it before getting desperate for it.

  • @nathankevin8121
    @nathankevin8121 7 лет назад

    Wow, it is really useful for what I am planning to do. It has a really simple user interface. Nice job :)
    I have a small query. Will it be possible to plot the values from two different sensors against each other? Like in a scatter plot.
    e.g. If I wanted to plot the potentiometer readings (x axis) vs the light sensor readings (y axis)?

    • @upgrdman
      @upgrdman  7 лет назад +1

      Thanks. Adding a scatter plot is planned, but it might be a couple months before I have time to work on that.

  • @maaz2578
    @maaz2578 3 года назад

    Mate you're most Lit code elaborator i've come across my entire exposure to this domain. What a software . Loved it mate . Just one thing if you can tell the solution to !?
    (video timestamp : 37:50)
    How can we get the calibrated values of the data extracted from the sensor say temperature , humidity as of their own SI unit values (degree , g/kg3) rather than the raw arduino values ?

  • @Will_M600
    @Will_M600 5 лет назад

    +
    upgrdman
    I'm a total noob jumping in at the deep end here, would it be possible to add a GPS log to this? im trying to make a datalogger for a race car

  • @nartymmd
    @nartymmd 4 года назад

    Is there any constrain with data columns quantity? When I try to add 16th data column program fails.

  • @consciousenergies
    @consciousenergies 7 лет назад

    Am I correct in saying serial printing decimals will not work? I can't seem to get the data to appear on to your Java code. I am using onewire digital thermistors DS18b20. Will I need to try to serial print integers to make it work?

    • @upgrdman
      @upgrdman  7 лет назад +1

      Hi. You can use floating point numbers, but you will need to change the firmware accordingly. There's a comment in here from about a week ago covering how to do that.

  • @frasenci
    @frasenci 7 лет назад

    All related videos are great ! I never expected to be capable of stepping into Java programming so easy. Thank you very much for such clean and effective work. I would like to upload such a graph into my own hosted webpage. Could you help ? Thanks again

    • @upgrdman
      @upgrdman  7 лет назад

      Thanks. I plan to add the ability to save a graph as an image, but its not done yet. For now you would need to take a screenshot, crop it, etc.

  • @OfficialDJNoel
    @OfficialDJNoel 6 лет назад

    I know this is a year old but is there any way to have the time instead of the sample count? So i imagine there would be a division number in the bottom right corner saying something like "1µs/div" or something.

  • @yoviesigit5292
    @yoviesigit5292 7 лет назад

    dude i got some case. if i declare sensor 1 until 3 with name a , b and c but in your appllication i didnt declare the sensor with the same. how the app recognize that is sensor i declare the right sensor ?

  • @pit202
    @pit202 7 лет назад

    WOW - this soft is so great , would you add a possibility to setup a fixed scale on the charts ? min and max , etc ?

    • @upgrdman
      @upgrdman  7 лет назад

      Thanks. Yes, fixed scaling and several other features are in the works. An update video will be posted when the new version is ready.

  • @FrequencyBender
    @FrequencyBender 7 лет назад

    Awesome program! Thanks! In another video I saw you exporting graphs as an image. Is that feature only available in the older release? Thanks for sharing!

    • @upgrdman
      @upgrdman  7 лет назад

      Thanks. The TelemetryViewer program has never had that, but I plan to add it in the future.

    • @FrequencyBender
      @FrequencyBender 7 лет назад

      Thank you for replying so quickly! You are right, I tried all 3 of your versions :D, and they are all really cool, but indeed none of them export the charts like you pointed out. I think the export feature I was talking about was one of your other videos (Graph Arduino data with Java and JFrame), that showed you doing some exporting at one point (Still have to follow this tutorial in it's entirety though). Is there a possibility to upload a Pre Compiled or Build version the program you've created in that tutorial, just to play around with the exporting function of it. Looking forward to your new version of the Telemetry viewer too though. It's the best direct, no fuzz input visualizer I've found so far, without having to dive into the code itself. Keep up the awesome work! Thanks again! Cheers!

  • @darrenpyott6291
    @darrenpyott6291 7 лет назад

    Hi, Thank you for posting this tutorial. I'm a newbie to programming but this is perfect for what I'm wanting to do with temperature & voltage monitoring with the Arduino inputs and data logging. I may have missed it on the Video but is there any way of fixing the scale limits on the charts instead of auto scaling. Also is there a feature that is already available or could be added to set alarm values and possible colour change of the dial chart for example, if a reading went above a predefined threshold. Many thanks Darren.

    • @upgrdman
      @upgrdman  7 лет назад +1

      Thanks, glad you liked it. I have plans to add both of those features, and many more, but they're not yet done. If you're desperate for manually scaled charts, it's actually supported in the code, but not yet in the user interface. You could hard code the limits if all of your line charts need the same scale.

  • @chenartahir1865
    @chenartahir1865 3 года назад

    Hi. I would like to measure of 15 sample of MFC for voltage and current for 40 days continuous . How can i build it?

  • @martyn21358
    @martyn21358 6 лет назад

    Fantastic program.
    could you add a way to send serial back to the arduino
    thanks

  • @abhinavkumar3422
    @abhinavkumar3422 7 лет назад

    hey hi there
    i am doing exactly as you showed with potentiometer everything is working wonderfull.
    But i am not getting log CSV file to show this data on Excel.
    Can you please help me with this.
    Thank you

  • @jakoba8984
    @jakoba8984 7 лет назад

    Firstly, nice piece of software, free, usefull. It's just one thing that ive been very annoyed about, and thats auto scaling. But there is a solution. Auto scale snaps to biggest value, so have 2 additional constant signals plotted on graph, little bigger than max value of other signals, so there will be no AUTO scaling! :)

    • @upgrdman
      @upgrdman  7 лет назад +2

      Thanks. I've been working on the next version, and it has manual scaling, plus many new features. Look for the new video within a week or two!

  • @desidavinci7898
    @desidavinci7898 3 года назад

    The best data visualizer i have ever seen. Sir, I have used your great creation. I am facing a problem. I am not able to export the .csv data. I am using windows10. I have no idea, about where am I going wrong. Please help me getting out from this. Do i need to install anything else along with it so that I can export the data from it?

  • @wikipediabutter9137
    @wikipediabutter9137 2 года назад

    Hey!! Your project is very impressive! I'm trying to re-create the application using LORA as the main source of data streaming! I just wanna know what technologies/ tech-stack did you use for the project! Thanks in advance.

    • @upgrdman
      @upgrdman  2 года назад

      Thanks. It's written in Java. OpenGL is used for drawing the charts and Swing is used for the rest of the GUI.

  • @patrickhochleitner7754
    @patrickhochleitner7754 3 года назад +1

    Hi! First off, this is just AMAZING! Perfecly done and so well explained. Thank you so much.
    I'm currenlty working on a more efficient controller for heating resistances and ventilators and I need to log my set point and actual temperature. The problem is : Whenever I declare these values as doubles or float your logger displays weird values like instead of 20°C it shows 15000 or smth. I have to declare them as Integers otherwise it won't work
    Do you know how can I correct this?
    Thanks again!

    • @upgrdman
      @upgrdman  3 года назад +1

      Try looking at what is written to the serial port when you use doubles or floats. You can use a terminal program or something like the Arduino serial monitor. For example: if you are sending three numbers, TelemetryViewer would expect to see lines that look something like "1.234,2.345,3.456" (without the quotes.) So if you have other characters in there or some other formatting issue, that would cause a problem.

    • @patrickhochleitner7754
      @patrickhochleitner7754 3 года назад +1

      @@upgrdman omg that was actually quite obvious ! I’m so sorry!
      Thank you so much! And once again amazing work keep it up ! (For the sake of us all xD)

  • @saneemp
    @saneemp 7 лет назад

    Great job friend, is it possible to use as a oscilloscope with a trigger value

    • @upgrdman
      @upgrdman  7 лет назад

      Thanks. Triggering is not currently supported.

  • @RadioRanger007
    @RadioRanger007 6 лет назад

    First off, I like this a lot!
    I am having trouble with Java 9. Do I need to down rev to Java 8 to get this to work? ( Note: I have a Windows 64 PC.)

    • @upgrdman
      @upgrdman  6 лет назад

      Thanks. I briefly tried Java 9 but it seems that some of the libraries I'm using (JOGL and jSerialComm) have issues with it. For now you would need to use Java 8.

  • @mohamedkhaled-qc7kb
    @mohamedkhaled-qc7kb 6 лет назад

    I want to use sample code for LED with this program how the program knows this led please I want more explain

  • @tamingthecode4979
    @tamingthecode4979 7 лет назад

    sir, how to store values to log??

  • @bgfost2529
    @bgfost2529 4 года назад

    I'd love to run a (much slower) version on a Raspberry Pi,
    Whereas the download immaterially started on a PC where I dont have data to plot, on my Raspberry Pi where I would need it, the download is a compressed directory that expands into many files and directories.
    I have got no clue how to start it.

  • @DenysSene
    @DenysSene 7 лет назад

    great project! Really useful for dashboards. I'll fork your project to add calculated lines and Kalman Filter. Is it ok for you?

    • @upgrdman
      @upgrdman  7 лет назад +1

      Sure, no problem. I've been working on several changes that will make supporting new chart features easier. You might want to wait for that, but it's up to you. I hope to have that finished, plus several other improvements, within a few weeks.

  • @francescop1410
    @francescop1410 7 лет назад

    Incredible, I've searched for something like this for a while, then randomly..
    Thank you very much.
    I'm working on my university thesis, may a use it to graph my 8 microphones?

    • @upgrdman
      @upgrdman  7 лет назад +1

      Thanks. Right now the program can only read data from a serial port, so you would need to sample those microphones with a microcontoller or FPGA. Also, the CSV mode isn't really efficient for that much data. The binary packet mode would be better, but it's not done yet.

    • @francescop1410
      @francescop1410 7 лет назад

      Of course, I'm already using arduino and a 8-channel ADC.(the "may I use" was a request of permission ;) )
      The idea is to build a Direction of Arrival,(DOA) system and I thought that plotting the data would be useful for debugging eccetera.
      Thank you again, I subscribed and I will follow all your works!
      Maybe I'll try to do my own program eventually following your tutorial(I'm studying computer engineering..)

  • @ivansambrana7604
    @ivansambrana7604 7 лет назад +3

    could modify the code to listen for several com ports at the same time?

    • @XLCaudio
      @XLCaudio 6 лет назад

      Any luck with this? I am looking to do the same

  • @imwoody36also
    @imwoody36also 4 года назад +2

    contributed some $ for you

  • @nartymmd
    @nartymmd 4 года назад

    Can I use digital output instead of analog? AWESOME software by the way!

    • @nartymmd
      @nartymmd 4 года назад

      I will answer my self, yes it is possible. :)

  • @ahsanahmad3040
    @ahsanahmad3040 7 лет назад

    question:
    is it normal to have more than 100 error notifications in eclipse regarding "@override" is used?

    • @upgrdman
      @upgrdman  7 лет назад

      No, that isn't normal. What errors are you getting?

    • @ahsanahmad3040
      @ahsanahmad3040 7 лет назад

      I fixed it. I was on 1.8 jdk changed to 1.6 and @override errors went away but the casting/scoping is stilling there

  • @leonardoarevalo4289
    @leonardoarevalo4289 6 лет назад

    ¿Como se instala su programa? Ya lo descargue, lo descomprimí y tengo un monton de archivos que no tengo ni idea

  • @AceL.
    @AceL. 7 лет назад

    Hey! Cool software but i have few issues on initializing it.. when i define the char txt(40) it prints the ASCII 40 which is "(" .
    it compiles but with the following warning "warning: invalid conversion from 'char' to 'char*' [-fpermissive]"
    Im using MadgwickAHRS.h which includes math.h maybe this causes some issue? is there any workaround?

    • @upgrdman
      @upgrdman  7 лет назад +1

      Hi. Array sizes and indices need to be surrounded with brackets, not parenthesis. Like this: txt[40]

    • @AceL.
      @AceL. 7 лет назад

      Alright, it appears to be some issue using sprintf with floats so i made the following change and it works...
      sprintf( txt, "%d,%d,%d", (int)yaw, (int)pitch, (int)roll );
      -Alternatively you can multiply the values * 100 and change 100 LSB to 1 on the Telemetry viewer.-
      Thanks for the help and the fast response! Also, do you mind if i use your software for my Thesis presentation?

    • @upgrdman
      @upgrdman  7 лет назад +1

      Sure, no problem. Regarding sprintf(), you can use %f to print out floating-point numbers. Google "sprintf" for details about how it works and the long list of % format specifiers. Keep in mind that when using %f it may print out the numbers at very high resolution, so you may need to increase the size of your txt[] array to be bigger than 40.

    • @AceL.
      @AceL. 7 лет назад +2

      I read the formatting so many times and i could get only "?" in the serial monitor. It appears that arduino doesnt accept %f - which was my first guess.. after a little bit of searching i found that you have to use dtostrf to convert the double into ASCII. and then use %s as a specifier. Sample code in case anyone else is interested.
      char txt [30];
      char str_roll[10];
      char str_pitch[10];
      dtostrf( roll, 8, 2, str_roll);
      dtostrf( pitch, 8, 2, str_pitch);
      sprintf( txt, "%s, %s", str_roll, str_pitch );
      Serial.println( txt );

  • @johnnicinco
    @johnnicinco 7 лет назад

    Thank you for the great amount of work you must have done to help me visualize my data. I needed this help bad. I used it with a SAM V71 MCU. What else do you have coming?

    • @upgrdman
      @upgrdman  7 лет назад +1

      Glad you liked it. I have a new version in the works, it should be done this weekend. Stay tuned for the next video.

  • @LambertCox
    @LambertCox 7 лет назад

    This programm looked very good. I have a problem. If I use the button Connect ,then the button Disconnect 'does not come. The Reset button does not work.

    • @upgrdman
      @upgrdman  7 лет назад

      That can happen if a connection hangs. Make sure another program is not using that port. You could also try restarting your computer.

    • @LambertCox
      @LambertCox 7 лет назад

      I have used the first version and that works. Version 0.2 does not work if i use the Connect button. Restart and other have no result.

    • @LambertCox
      @LambertCox 7 лет назад

      On my laptop goes the most good. I have one problem. If a make a new chart and i use "Time domain chart" or "Time domain chart (cached)" then the programm closed. With the other then it is good. Maybe you have a solution for it. The video presentation is very good

    • @upgrdman
      @upgrdman  7 лет назад

      How old are your computers? If your video card is very old, it may not support all of the features needed. The line charts use vertex arrays, and the cached one also uses framebuffers. Those OpenGL features may not be supported on very old hardware.

    • @LambertCox
      @LambertCox 7 лет назад +1

      On my Destop worked it now. A friend has help me. The java software geupdated. Then it's works correct.Thank you . The laptop is older. There must I used the first version.

  • @pykid1915
    @pykid1915 2 года назад

    hey can u put a video on how to use this with raspberry pi pico

  • @sargetester99
    @sargetester99 6 лет назад

    Can you view data from more than one arduino at the same time?

    • @upgrdman
      @upgrdman  6 лет назад +1

      Hi. It can only connect to one device at a time. If you just want to visualize data from multiple Arduinos, you could open multiple windows, but each window can only show data from its Arduino.

  • @ahmaddhuhahabibullah5694
    @ahmaddhuhahabibullah5694 6 лет назад

    Hi dude, You've done a great job. But can i have "time" in the x axis instead of sample count? Please let me know if there is a way to do it. Thank you.

    • @upgrdman
      @upgrdman  6 лет назад

      Thanks. That's not currently possible but it is planned for a later version.

    • @ahmaddhuhahabibullah5694
      @ahmaddhuhahabibullah5694 6 лет назад

      Do I allowed to edit the source code for any other purpose? It's not for sale, I'm using it for projects with my colleagues.

  • @DenisHeink
    @DenisHeink 7 лет назад

    Super software. Many Thanks!
    Unfortunately your website does not work. How can I start the program from Github?

  • @BigHeartBreak93
    @BigHeartBreak93 7 лет назад

    Hey im just starting and my sensor is a 9 axis sensor which gives out data in a format like this:
    G: -1.20, 3.39, -2.21 deg/s
    A: 0.42, 0.16, -0.92 g
    M: 0.51, 0.47, 0.56 gauss
    Pitch, Roll: -24.10, 169.87
    Heading: 231.40
    Could you hint/help me in which kind of way i do have to modify the arduino code so that it still works with your software?
    Would be much appreciated :)

    • @BigHeartBreak93
      @BigHeartBreak93 7 лет назад

      I guess what I am asking is: Does the program only work with your code or is it possible to use the data printed out by the serial monitor directly even if the code used to generate the numbers is different.
      In my case i have a sensor (LSM9DS1) which uses I2C (serial computer bus) to transfer multiple data simultaneously across one output. Is it still possible to use your program?
      Thanks in advance.

    • @upgrdman
      @upgrdman  7 лет назад +1

      Hi. You don't have to use my exact code, but the data that gets printed to the serial port needs to be formatted in the same way. CSVs with nothing else.

    • @BigHeartBreak93
      @BigHeartBreak93 7 лет назад +1

      works fine now, thank you so incredibly much :)

    • @rdalemd76
      @rdalemd76 3 месяца назад

      I will give this a try since my data is already in CSV string format.

  • @user-cn7ei5pg1z
    @user-cn7ei5pg1z 7 лет назад

    Unable to write the Erdoino code can You help and raise the link to the program

  • @roshanmahto6158
    @roshanmahto6158 7 лет назад

    hai, any link to download telmetry viewer.jarI am unable to find

  • @MrNebRebew
    @MrNebRebew Год назад

    Will this run on a MAC?

  • @billjames7114
    @billjames7114 7 лет назад

    I downloaded and ran your first version of the Telemetry Viewer and tested it with my Arduino and it worked perfectly, and I really like what you have done.
    Then I downloaded your updated version, v0.2. It downloaded fine and seemed to work at first. I still had my Arduino sending numbers on COM 3 so I filled in the info just as with the earlier version and hit the connect button. As expected, the "Data Structure" window opened and I set everything exactly as I did with the earlier version. When I hit "Done" the window closed as expected. Then I selected an area on the grid for the graph to be displayed, but the graph never came up. I tried using all of the options, but no display, and once the program hung and I had to force it down with the Task Manager.
    Is this something you are aware of and is there a fix for it? I really would like to use your viewer because I am working on a project that requires exactly what you have done here and I have been unable to find anything else that works anywhere near as well as your "Viewer."

    • @upgrdman
      @upgrdman  7 лет назад

      Weird. Not sure why it got hung up. If you created a chart but it never appeared, it might be because no samples had been received. The charts will not try to render if there are no samples to show. (I plan to improve that in later versions.) If that happens again, try resetting your Arduino. That might help if for some reason the Arduino was hung up and not sending data to the PC.
      If the first version is never hanging on you, the only major difference I can think of is that the newer versions use OpenGL. Make sure your graphics drivers are current. Maybe try on a different computer and see if things change.

    • @blackkissi
      @blackkissi 7 лет назад

      I'm having the exact same problem. First off when I start the application, it takes about 30 seconds to open. Once it is open I have the problem that Bill James described. Nothing happens after I try to make a graph
      Data is coming through on the serial. I tried to open up Arduino ide serial monitor to confirm that the microcontroller was sending data in the form (10,11,12)

  • @jeromegalleon1382
    @jeromegalleon1382 5 лет назад

    Can this program can also read voltage, current and power?

    • @upgrdman
      @upgrdman  5 лет назад

      It can if you send those numbers as part of your telemetry.

    • @jeromegalleon1382
      @jeromegalleon1382 5 лет назад

      @@upgrdman thanks, are those collected data will be stored?

  • @kennywhite269
    @kennywhite269 7 лет назад

    Greetings upgrdman, I love the project. I have a question for you. I am using a UDOO NEO ARM embedded linux board. This has a built in arduino uno that is handled by a M4 processor. I was curious if you can recompile your source code to work on ARM processors.
    I am new to java, maybe i could go to you git hub and cross compile my self? I really dont know much about that.
    Any help is greatly appreciated. thank you so much.

    • @kennywhite269
      @kennywhite269 7 лет назад

      Here is my specific error when i run the file in a ubuntu varriant distro off the udoo neo
      udooer@udooneo:~/Desktop$ ./TelemetryViewer_v0.3.jar
      bash: ./TelemetryViewer_v0.3.jar: cannot execute binary file: Exec format error

    • @upgrdman
      @upgrdman  7 лет назад

      You would need to install java, and then use "java - jar file.jar" but it might not work because this software expects a desktop version of OpenGL (it does not support OpenGL ES yet.) You might be able to run TelemetryViewer v0.1 since it did not use OpenGL.

    • @kennywhite269
      @kennywhite269 7 лет назад

      upgrdman I have attached a link to a photo of the error i am having
      imgur.com/a/YwTNX

    • @upgrdman
      @upgrdman  7 лет назад

      That's a problem related to Open GL. I'm guessing your board only supports Open GL ES.

  • @embeddedroom
    @embeddedroom 7 лет назад

    farrellf.com/TelemetryViewer/ is not working for me. It is down ?

  • @nicolasjonasson4820
    @nicolasjonasson4820 2 года назад

    Can it handle 24 bit resolution?

    • @upgrdman
      @upgrdman  2 года назад

      All numbers are converted into float (32-bit) numbers. I'm not sure if that can perfectly represent a 24-bit integer, but it can probably get close.

  • @adonfff5049
    @adonfff5049 6 лет назад

    Hello, it would also be very useful to add "Google Map" to track vehicules (or drones) on a map in your application (search "mission planner Flight Plan" and Ardupilot in Google) .
    For example, the data of the drones are transmitted by serial radio link (57600) and the data format is of type NMEA (GLL), UBX, (you can start with a simple csv file with lat, long, and alt).
    Maybe i can help you if you want ! Thank you

  • @shreeniwasjagdale4932
    @shreeniwasjagdale4932 6 лет назад

    how to install above app in PC ?

    • @upgrdman
      @upgrdman  6 лет назад

      Install Java (JRE) then double-click the .jar file. If you use 32bit graphics drivers, you must use a 32bit JRE. If you use 64bit graphics drivers, you must use a 64bit JRE.

    • @shreeniwasjagdale4932
      @shreeniwasjagdale4932 6 лет назад

      can you pls explain in detail .i am new to this java stuff ?

  • @lucdesmedt7056
    @lucdesmedt7056 5 лет назад

    Hi, Your sofware works fine with Windows10 but generates a fatal error when I tried to run it with UBUNTU 18.04 / I suppose that your magnificent developpement only works with Windows10 ?

    • @upgrdman
      @upgrdman  5 лет назад

      It should run fine in Ubuntu, but I have not tested it recently. Does an error get displayed? If possible, please run the program from the command line with "java -jar file.jar" (replace file.jar with the correct name...) and let me know what errors get printed out.

    • @lucdesmedt7056
      @lucdesmedt7056 5 лет назад

      Hallo again, nice to have a quick response from your side.
      The error message is following :
      Exception in thread "main" java.lang.reflect.InvocationTargetException
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:564)
      at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
      Caused by: java.lang.NoClassDefFoundError: com/jogamp/opengl/GLCapabilitiesImmutable
      at Main.main(Main.java:18)
      ... 5 more
      Caused by: java.lang.ClassNotFoundException: com.jogamp.opengl.GLCapabilitiesImmutable
      at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466)
      at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:566)
      at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
      ... 6 more
      Sinc. Yours,
      Luc

    • @upgrdman
      @upgrdman  5 лет назад

      What version of Java are you using? I've been using Java 8, and I'm guessing that error is caused by a newer version, like 10 or 11. It's been a pain trying to build a Jar file that is compatible with 8 and 11, and I have not found a way to do that yet. The next version may just target Java 11 to makes things easier for people.

    • @lucdesmedt7056
      @lucdesmedt7056 5 лет назад

      Its JAVA 11 ...@@upgrdman. For the moment I'll use Windows10 on my dual boot laptop. Any idea when the next version will be avalable ? By the way, I noticed a small bug too. When saving a configuration with a Histogram graph that has a fixed X-axis, the fixed X-axis becomes floating (autorange) when reloading and running this configuration.
      Greetings,
      Luc

    • @lucdesmedt7056
      @lucdesmedt7056 5 лет назад

      upgrdman, having installed Java 8 on a ubuntu MATE 16.04 OS I have still following error :
      Exception in thread "main" java.lang.reflect.InvocationTargetException
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:498)
      at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
      Caused by: java.awt.HeadlessException
      at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:204)
      at java.awt.Window.(Window.java:536)
      at java.awt.Frame.(Frame.java:420)
      at javax.swing.JFrame.(JFrame.java:233)
      at Main.main(Main.java:14)
      ... 5 more
      Any suggestions ?

  • @jcbritobr
    @jcbritobr 3 года назад

    You are using javafx?

    • @upgrdman
      @upgrdman  3 года назад +1

      I'm using Swing for the normal GUI parts, and JOGL for the graphics parts. No JavaFX.

  • @arpap9073
    @arpap9073 6 лет назад

    Its great.But for me only the first version works

    • @upgrdman
      @upgrdman  6 лет назад

      v0.1 only used the CPU to draw the charts. Newer versions use OpenGL. They should work if you have a modern graphics card and up-to-date drivers.

  • @bramastoadinugroho
    @bramastoadinugroho 7 лет назад

    How to use a float type data to this program?

    • @upgrdman
      @upgrdman  7 лет назад

      Hi. The software works with floats. Just have your microcontroller print floats instead of ints when making the CSVs.

    • @bramastoadinugroho
      @bramastoadinugroho 7 лет назад

      I have print float and send them into the software.
      for example, i send this data : 213.25,11.25,125.15,14.23
      But the program just read 213 ; 11 ; 125 and 14

    • @upgrdman
      @upgrdman  7 лет назад

      User a terminal program to see exactly what your microcontroller is printing out. The software can parse floats, I do that regularly.

    • @bramastoadinugroho
      @bramastoadinugroho 7 лет назад

      I've checked at terminal program. My microcontroller send 213.25,11.35 for example. But the telemetry just read 213 and 11. I'm using %f at sprintf syntax.

    • @upgrdman
      @upgrdman  7 лет назад

      Something doesn't sound right. Can you post a screenshot of the terminal?

  • @user-cn7ei5pg1z
    @user-cn7ei5pg1z 7 лет назад

    char text[40]
    sprintf(text,"%d,%d,%d
    ",sensor1,sensor2,sensor3);
    serial.printIn(text);

  • @nali3832
    @nali3832 7 лет назад

    Does this work with window 10? after I bought window 10, it doesn't work anymore

    • @upgrdman
      @upgrdman  7 лет назад

      Yes, I am using Windows 10 in the video. If you are using 64bit graphics drivers, you will need to use the 64bit JVM. Likewise, if you are using 32bit graphics drivers, you will need the 32bit JVM. If you are still having problems, it might be related to OpenGL compatibility. What video card do you have?

    • @nali1511
      @nali1511 7 лет назад

      Thank you for your reply. I am not sure what video card I have. Basically I just got a new laptop (HP Spectre with window 10). After I download your software/code, the telemetry icon shows as
      internet explore. I am not sure what is missing
      Thanks

    • @nali1511
      @nali1511 7 лет назад

      HP Spectre 360 has graphic card "Intel HD Graphics 620". Is that the video card you asked for?

    • @upgrdman
      @upgrdman  7 лет назад

      You probably don't have Java installed. You'll need that. If your version of Windows is 64bit, be sure to install the 64bit version of Java.

    • @nali1511
      @nali1511 7 лет назад

      I did download Java. I may not install the right one because there are so many ..I have several installed, one called JavaSetup8u131, another called: jdk-8u131-windows-x64. and "jre-8u131-windows-i586-iftw". I am not sure which one do I need to download? Thank you