Author Topic: FNIRSI-1013D "100MHz" tablet oscilloscope  (Read 785312 times)

0 Members and 8 Guests are viewing this topic.

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1375 on: March 03, 2022, 03:07:00 pm »
The VREF voltage depends on the battery charge, so in my scope the battery is not that full and since I have disconnected it quite a bit the connection of the battery is not that good anymore which also causes the voltage to drop, so that is explainable.

And Kean also has an explanation for the other voltage. :)

This is always a problem with SMD components. They are to small for proper markings, making it a guess what has been used.

Offline Gustavo

  • Contributor
  • !
  • Posts: 29
  • Country: co
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1376 on: March 03, 2022, 05:03:32 pm »
Thanks Kean, loud and clear.

Any way, being blind about the jitter with square waves, my scope when switched to DC input coupling shows a downward wave displacement as if the signal had a negative offset, no idea how to correct that and the only tool the scope has is a simple calibration that is no remedy for this uggly issue. Both channels behave the same way so is something common to both inputs, and the refserence is correct. Any idea dear friends?

GUS
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1377 on: March 03, 2022, 08:54:36 pm »
That might have to do with the virtual ground being pulled low by a ground loop somewhere. Look at the analog front end schematics. When in AC mode the capacitor in the input (C99 and C133) filter the DC component. VRF1 is added back in before the op-amp, so the signal swings around that level. When in DC mode the capacitors are shorted out and the external ground comes into play.

It is a really shit design and you have to be aware on how you use the scope.

I'm no expert on analog circuitry so might be wrong, but I do now about the software. Spent almost a year digging through the original code and it has may flaws. The new firmware is better but still has to cope with the short comings of the hardware.

To provide better help it is handy if you specify which software you are running, and how things are setup. What are you measuring, how did you connect things etc.

Offline nrq

  • Newbie
  • Posts: 3
  • Country: de
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1378 on: March 07, 2022, 07:01:24 pm »
@pcprogrammer thanks a lot for your efforts in improving the firmware of this device. I flashed the most recent version today, but for some reason my touch screen is inverted and, most of all, after baseline calibration the X and Y axis for channel 1 is inverted, too. I read your post a few days ago with the link to the post from Nov. 12th, but I honestly am unsure what to do with it. should I flash the attached bin and does that bin file create a backup somewhere that I could upload for reference?

« Last Edit: March 07, 2022, 07:04:45 pm by nrq »
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1379 on: March 07, 2022, 08:41:53 pm »
Hi nrq,

welcome to the forum.

The touchscreen issue is something I can easily resolve by adding settings for it to the separate configuration file for the display adjustment. This way the inversion of X and Y touch can then be set. The firmware can then remain the same for all devices, and by loading the correct configuration file to the SD card the touch will be corrected.

The other problem you write about is probably that the scope is set in X-Y mode. That differs from the original where both channel pointers are on the left. In the new firmware the channel 1 pointer is on the top of the display, since it controls the X direction, where as channel 2 is for the Y direction so its pointer stays on the left.

The setting for this is in the same menu as in the original. Menu -> system settings -> X-Y display mode. It is near the calibration setting, so you might have touched it by accident.

The backup program I referred to is not really needed anymore, but having a backup of the flash and touchscreen config could be handy.  Installing it is done in the same way as the scope software. (It overwrites the scope software) After a reboot the scope makes the backup to the SD card. Here you can see how it works: https://youtu.be/h-tdKPDocHI

I will look into the touchscreen thing tomorrow.

Offline Gustavo

  • Contributor
  • !
  • Posts: 29
  • Country: co
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1380 on: March 07, 2022, 09:47:00 pm »
Hi there friends.

Dear PCP, yesterday I got some timefor my toy and found all FOUR BNC decoupling capacitors short circuited, and as an extra de 150 nF input capacitor for channel one was 0 ohms too. Now the reference 1.25V is present at the BNC connectors thanks to you.
The oscs is  behaving as I gess it did it when was brand new. The square wave jitter is only present above 1Mhz.
Now my main question PCP:
Which are de improvements on your firmware, I´m very curious about to know them in order to proceed with the flash with your help to invert X/Y TP coordinates.

Thanks so much. GUS :-/O
 

Offline nrq

  • Newbie
  • Posts: 3
  • Country: de
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1381 on: March 08, 2022, 06:27:29 am »
Quote
The setting for this is in the same menu as in the original. Menu -> system settings -> X-Y display mode. It is near the calibration setting, so you might have touched it by accident.
Thanks, must've touched that while trying to navigate baseline calibration with inverted touch. :palm:

EDIT: otherwise it seems to mostly work fine with the new firmwar. Looking forward to try the inverted touch settings when it's available. :)
« Last Edit: March 08, 2022, 06:52:43 am by nrq »
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1382 on: March 08, 2022, 06:46:14 am »
In order to cope with the inverted touch panels out in the field I added settings to the display configuration file. To keep it simple I did not include them in the checksum and just added them to the end just after the checksum. By default these where 0xFF, so left that for the normal operation. Making the bytes zero enables the swapping of the coordinate.

The first byte after the checksum is for the X coordinate and the second one for the Y coordinate. This way it is possible to cater for all options.

So for the scopes out there that have inverted touch when the new firmware is used, load the attached configuration file to sector 710 on the SD card and your problem should be solved. (At least if both X and Y are inverted :-DD)

The firmware repository is updated to reflect this new setup. Added a file to explain the configuration file and a versions.txt file to reflect the changes in the firmware versions.

To load the configuration file look at the below command. Make sure the "of=" part reflects the correct device on your system. Don't forget to un-mount it first.

Code: [Select]
sudo dd if=standard_display_tp_xy_swap_config_sector.bin.txt of=/dev/sdc bs=1024 seek=355

The new firmware version to work with this is v0.004
« Last Edit: March 08, 2022, 06:48:05 am by pcprogrammer »
 

Offline nrq

  • Newbie
  • Posts: 3
  • Country: de
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1383 on: March 08, 2022, 07:03:53 am »
Works perfectly now. For me only X-axis was inverted, I swapped the Y config value back to 0xFF and now touch works. Looking forward to playing around a bit more over the next few days.
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1384 on: March 08, 2022, 07:47:19 am »
Dear PCP, yesterday I got some timefor my toy and found all FOUR BNC decoupling capacitors short circuited, and as an extra de 150 nF input capacitor for channel one was 0 ohms too. Now the reference 1.25V is present at the BNC connectors thanks to you.

Well that makes you wonder what has happened to that scope :o

Which are de improvements on your firmware, I´m very curious about to know them in order to proceed with the flash with your help to invert X/Y TP coordinates.

As you can read in the previous post the touch has now been resolved with a configuration file.

Apparently FNIRSI made several versions of the firmware to cater for the different hardware out there. Seems to be the earlier models that have the touch panel either configured differently or have a different touch panel driver IC. Funny thing is that the whole new firmware quest arose from a defective and then when replaced inverted touch panel :-DD

To summarize the improvements:

1) Solved the hanging scope after USB disconnect
  A lot of the times the original firmware freezes when something has been read or written from/to the SD card via the USB connection and is then disconnected.
  It took quite a bit of time to tackle this part of the software due to the lack of documentation for the F1C100s and me being new to SD card and USB mass storage software.

2) Improved the handling of the acquisition data.
  The original firmware is sluggish in acquiring and processing the sample data. It also did not make full use of the available data. Furthermore it uses a "special IC" to do unnecessary tasks.
  The communication between the F1C100s and this IC is prone to error causing data corruption in the sample data.
  In the new firmware this "special IC" is no longer used and the full sample data is available. This means 3000 samples for all time base ranges instead of 1500 or even only 750 samples.
  The refresh rate is much higher in the new firmware.
  There is still room for improvement in the display part, to make it look smoother in the 100ns - 5ns/div range.

3) Fixed several issues with the picture and waveform saving and viewing part of the code.
  This part of the code is rewritten to make it more robust. The reverse engineered original code is crap, as is the whole original code. At some point I stopped reversing it because I could not bare the frustration of it anymore.
  The code can still be found in the hack repository. That is already cleaner then the original but unfinished. The whole story about this starts on page 20 or so of this thread.

4) Modified the acquisition speed versus time per division setup.
  Added a new menu that allows the selection of both the acquisition speed and the time per division setting. This gives flexibility in zooming in time.

5) Modified the measurement displaying
  In the original firmware the measurements are displayed based on the order of being enabled. This can lead to channel 2 measurements being in between channel 1 measurements.
  In the new firmware channel 1 measurements are on the left and channel 2 on the right. Also the menu has been corrected to reflect this.
  Funny side note: I viewed Dave's review of the scope video a couple of days ago and he rant's about this weirdness in the measurements menu :-DD

These are the main changes. And with it being fully open source it is possible to make it your own.

I have moved on to other projects to learn new things. At the moment I'm working on a arbitrary wave generator with the FA201 FPGA board and a Lichee nano. This will also be open sourced in the Liche nano repository I setup: https://github.com/pecostm32/Lichee_Nano

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1385 on: March 08, 2022, 07:51:31 am »
Works perfectly now. For me only X-axis was inverted, I swapped the Y config value back to 0xFF and now touch works. Looking forward to playing around a bit more over the next few days.

Then it is a good thing I made it with separate settings :)

Have fun with it.

Offline Gustavo

  • Contributor
  • !
  • Posts: 29
  • Country: co
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1386 on: March 08, 2022, 02:39:16 pm »
Thanks so much in CAPITAL letters.
 

Offline Gustavo

  • Contributor
  • !
  • Posts: 29
  • Country: co
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1387 on: March 08, 2022, 02:43:03 pm »
Ok, derar PCP. As you already know I´m far from being a computer expert. Please let me know where can I find the *.bin with the x/y TP correction, I´m anxious having the scope updated.

Thanks again and again and hope your new project run well!
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1388 on: March 08, 2022, 02:49:49 pm »
Hi Gus,

the files you need are in attached to this message: https://www.eevblog.com/forum/testgear/fnirsi-1013d-100mhz-tablet-oscilloscope/msg4049428/#msg4049428

Since the forum does not allow .bin extensions .txt is added to the name.

Depending on what is inverted in the touch on your scope you might have to edit the "standard_display_tp_xy_swap_config_sector.bin.txt" file. The bytes in question are the 29th and 30th. They are set to 0x00 for inverting the touch. The 29th one is for X.

Success,

Peter

Offline saki68

  • Newbie
  • Posts: 4
  • Country: cs
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1389 on: March 08, 2022, 11:51:39 pm »
Hello,
First of all, congratulations on your great efforts, especially the  pcrogrammer member :clap: :-+
I noticed that when inserting new firmware (V0.002, V0.003, V0.004) when switching trigger mode to single or normal, the oscilloscope freezes after a couple of touch commands and must turn off after which we have to switch trigger mode to auto to used normally.
This does not happen with the original firmware, it is an older scope with 25Q16 flash.

Trigger mode is not overly necessary, but just to see if something can be fixed in one of the following firmware .
 

Offline Gustavo

  • Contributor
  • !
  • Posts: 29
  • Country: co
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1390 on: March 09, 2022, 12:16:35 am »
Hello dear PCP, four hours and a half trying to send the .bin file to the scope and no way. I´m using a 4GB SD instead of the 8GB you are using,
 it´s the only one variable, does it matter?

Thanks so much
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1391 on: March 09, 2022, 06:19:39 am »
Hello dear PCP, four hours and a half trying to send the .bin file to the scope and no way. I´m using a 4GB SD instead of the 8GB you are using,
 it´s the only one variable, does it matter?

Thanks so much

I thought you had it running before, so a bit strange you are not able to load it anymore. The card size should not make a difference, but it might be that the card is broken. I have some cards that don't allow me to load them in the scope, but seem to be working in an USB card reader/writer.

Try it with another card if possible, or use an USB card reader/writer if you have one.

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1392 on: March 09, 2022, 06:30:51 am »
Hello,
First of all, congratulations on your great efforts, especially the  pcrogrammer member :clap: :-+
I noticed that when inserting new firmware (V0.002, V0.003, V0.004) when switching trigger mode to single or normal, the oscilloscope freezes after a couple of touch commands and must turn off after which we have to switch trigger mode to auto to used normally.
This does not happen with the original firmware, it is an older scope with 25Q16 flash.

Trigger mode is not overly necessary, but just to see if something can be fixed in one of the following firmware .

Hi saki68,

welcome to the forum.

You are the first to report this, so hard to say if it is specific to your device, or specific to the older devices.

Which FPGA is used in your scope? The Altera Cyclone IV or the Anlogic one. The latter has the markings removed.

I played a bit with mine to see what happens, and I did notice it hanging when I tried auto set with normal enabled, but not on other touch commands. Have to do more tests with signals connected to investigate this.

Offline saki68

  • Newbie
  • Posts: 4
  • Country: cs
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1393 on: March 09, 2022, 08:17:11 am »
In my case the FPGA is Altera Cyclone IV .
And yes, this happens when the trigger switches to single or normal mode and then presses AUTO SET, whether we have a signal at the input or not.
With the original firmware, when this is done and the AUTO SET trigger mode is pressed, it automatically switches to auto mode.
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1394 on: March 09, 2022, 08:56:30 am »
Hi saki68,

then it is clear. I have the same problem here, which means the FPGA needs to be set in AUTO mode before the auto set is done. Again a bit of Chinese logic :o The FPGA has a command of which I assumed it to be disable the trigger logic and just acquire one buffer full of samples. Guess it is not then. This shows I did not test this functionality in normal mode :-[

Will fix it by adding a bit of code to switch back to AUTO mode in the auto set function.

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1395 on: March 09, 2022, 09:42:05 am »
Fixed this problem and also added some initialization to fill in the signal part of the screen. I noticed that in absence of a trigger and set to NORMAL or SINGLE mode it would remain black on power up.

The changes can be found in the repository.

Offline saki68

  • Newbie
  • Posts: 4
  • Country: cs
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1396 on: March 09, 2022, 09:59:45 am »
Yes, I noticed that too, I forgot to write  :palm:...
I'll try a new firmware soon so I'll let you know.
 
The following users thanked this post: pcprogrammer

Offline Gustavo

  • Contributor
  • !
  • Posts: 29
  • Country: co
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1397 on: March 10, 2022, 01:07:14 am »
Hello everybody-

Dear PCP, you are right, I got the 1013d reprogrammed just one time copying the firmware .bin from windows 10 to de SD using an adaptor, something that has no explanation for me, any way the question is a different one.

As per your instructions, the SD Card must have the following files in it:

1. fnirsi_1013d_sd_card_bootloader.bin
2. fnirsi_startup_screen.bin
3. fnirsi_1013d_v0.004.bin

For the #3 file, I´m using:
sudo dd if=fnirsi_1013d_v0.004.bin of=/dev/sdb1 bs=1024 seek=8

(I got the dd instruction to load the x/y coordinates switch that I gess must be done after loading file #3, am I right?)

Now my respetful question: how should I load #1 and #2 files?  :-//

For sure you are getting tired about my ignorance in this linux matters  :palm:

Thanks and thanks, GUS

BTW, this afternoon I bought a 8Gb SD just to kill my last variable and used an sd/USB adaptor in order to conect the sd directly at one raspberry PI3 USB port.
« Last Edit: March 10, 2022, 01:09:05 am by Gustavo »
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 3991
  • Country: nl
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1398 on: March 10, 2022, 05:14:42 am »
Hi Gus,

you are wrong. The instructions you refer to are for building the firmware. The final firmware package holds code from the three source projects.

For your scope two things are needed on the SD card:

1) The firmware package. (fnirsi_1013d_v0.005.bin is the latest posted a couple of messages back)
2) The display and touch panel configuration file.

On the SD card these need to be on fixed locations for it to work. The firmware needs to be loaded starting on sector 16 and the configuration file needs to be loaded to sector 710.

So "sudo dd if=fnirsi_1013d_v0.005.bin of=/dev/sdb1 bs=1024 seek=8" is for the firmware and "sudo dd if=standard_display_tp_xy_swap_config_sector.bin of=/dev/sdb1 bs=1024 seek=355" is for the configuration file.

A SD card sector is 512 bytes. The dd instruction bs=1024 tells it to use blocks of 1024 bytes. The seek=8 instruction tells it to skip the first 8 blocks. 8 * 1024 = 8192 ==> 8192 / 512 = 16 ==> meaning the firmware gets written starting from sector 16.

Once you have the scope working with the correct configuration for your touch panel and a new version of the firmware is released you only have to update the firmware.

For dd to work properly it is necessary to un-mount the SD card, even when directly connected to the Raspberry PI. So when you are performing the above actions you have to use "sudo umount /dev/sdb1" first.

Offline RogueSS

  • Newbie
  • Posts: 1
  • Country: za
Re: FNIRSI-1013D "100MHz" tablet oscilloscope
« Reply #1399 on: March 10, 2022, 06:20:32 am »
Hi Everyone,

New to this forum.
Firstly, I would like to acknowledge my appreciation for the work done by pcprogrammer and everyone else on improving this piece of equipment.

Came across this forum topic when I realized the FFT on this scope was rather lacking.
So I thought that having access to the .CSV data would allow me to process it on a pc using a python script.
Unfortunately the scope does not give you access to .CSV data.

So my first question I guess is the following: Is the plan to add this sort functionality(Access to .CSV file via usb) in the future?

I will be honest in saying that I have not attempted load this new firmware yet. (Afraid I will brick/damage scope, Significant amount of justification was involved to justify this purchase to my better half  :scared: )
Therefore I don't know what functionality have been added so far in terms of MATHS functions.
Will basic maths functions be added: -,+,/,x?

Thanks
RogueSS
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf