Imaging solutions with Free Software & Open Hardware

Who's online

There are currently 0 users online.

Subscribe to Wiki Recent Changes feed
Track the most recent changes to the wiki in this feed. MediaWiki 1.28.0
Updated: 46 min 59 sec ago

Using 10359 mux with 10393

Fri, 11/17/2017 - 17:22

← Older revision Revision as of 00:22, 18 November 2017 Line 12: Line 12:  * cable sides as described [[10359#Connect_10353.2C_10359_and_sensors|here]] * cable sides as described [[10359#Connect_10353.2C_10359_and_sensors|here]]  * a mux board can be connected to any sensor port * a mux board can be connected to any sensor port −* up to 4x mux boards at the same time (2- do not require extra power modifications)+* up to 4x mux boards at the same time (up to 4x do not require extra power modifications if 10389 is not connected)  * sensor boards can be connected to any unused ports * sensor boards can be connected to any unused ports     [[File:10359top.jpeg|thumb|200px|Fig.2 10359 mux board (older revision)]] [[File:10359top.jpeg|thumb|200px|Fig.2 10359 mux board (older revision)]]    −* if the number of connected mux boards is 3+ then extra power is needed:  +* if the number of connected mux boards is 4 and 10389+SSD then extra power is needed:      quick mod: see Fig.2   quick mod: see Fig.2    lift pins 3,4 on J1, put teflon tape under them and solder a wire to those lifted pins connected. Then add a MOS transistor or a switch that will apply external 3.3 V to W2 when those J1.3, J1.4 have     lift pins 3,4 on J1, put teflon tape under them and solder a wire to those lifted pins connected. Then add a MOS transistor or a switch that will apply external 3.3 V to W2 when those J1.3, J1.4 have   Oleg

Poky 2.0 manual

Thu, 11/16/2017 - 14:53

‎Setup

← Older revision Revision as of 21:53, 16 November 2017 (One intermediate revision by the same user not shown)Line 81: Line 81:  ==<font color="blue">Setup</font>== ==<font color="blue">Setup</font>==  <font size='2'> <font size='2'> −  git clone https://git.elphel.com/Elphel/elphel393.git+  git clone https://git.elphel.com/Elphel/elphel393.git # or git clone git@git.elphel.com:Elphel/elphel393.git # if ssh public key is uploaded    cd elphel393   cd elphel393    ./setup.py   ./setup.py Line 98: Line 98:    2. run '''bitbake linux-xlnx -c link -f'''   2. run '''bitbake linux-xlnx -c link -f'''  </font> </font> −* if rerun '''setup.py''' updates updates all repositories and reruns other procedures.+* if rerun '''setup.py''' updates all repositories and reruns other procedures.  <font size='2'> <font size='2'>    $ ./setup.py   $ ./setup.py Andrey.filippov

Upgrading Eclipse

Thu, 11/16/2017 - 11:38

← Older revision Revision as of 18:38, 16 November 2017 (4 intermediate revisions by the same user not shown)Line 1: Line 1:  Upgrading Eclipse installation to work with Elphel projects, including VDT plugin that launches another Eclipse application (e.g. from Neon to Oxygen) Upgrading Eclipse installation to work with Elphel projects, including VDT plugin that launches another Eclipse application (e.g. from Neon to Oxygen)  +  +Increase memory sizes in new installation eclipse.ini -make them the same as in previous installation, such as (depending on actual memory available):  + -Xms4G  + -Xmx6G  +  +Copy GTK version '''2''' setting from eclipse.ini for neon to the new one, With the default version '''3''' I'm getting missing files error and at least animated icons do not work) (see also https://bugs.launchpad.net/ubuntu/+source/breeze-gtk/+bug/1604782 , https://bugs.eclipse.org/bugs/show_bug.cgi?id=491855 ):  + --launcher.GTK_version  + 2     '''Always backup your workspace files tree or use copies, such as workspace-neon and workspace-oxygen (start with a copy of workspace-neon).''' '''Always backup your workspace files tree or use copies, such as workspace-neon and workspace-oxygen (start with a copy of workspace-neon).''' Andrey.filippov

Upgrading Eclipse

Thu, 11/16/2017 - 11:29

← Older revision Revision as of 18:29, 16 November 2017 (2 intermediate revisions by the same user not shown)Line 1: Line 1:  Upgrading Eclipse installation to work with Elphel projects, including VDT plugin that launches another Eclipse application (e.g. from Neon to Oxygen) Upgrading Eclipse installation to work with Elphel projects, including VDT plugin that launches another Eclipse application (e.g. from Neon to Oxygen)  +  +Increase memory sizes in new installation eclipse.ini -make them the same as in previous installation, such as (depending on actual memory available):  + -Xms4G  + -Xmx6G  +  +Copy GTK version '''2''' setting from eclipse.ini for neon to the new one, With the default version '''3''' I'm getting missing files error and at least animated icons do not work):  + --launcher.GTK_version  + 2     '''Always backup your workspace files tree or use copies, such as workspace-neon and workspace-oxygen (start with a copy of workspace-neon).''' '''Always backup your workspace files tree or use copies, such as workspace-neon and workspace-oxygen (start with a copy of workspace-neon).''' Andrey.filippov

Upgrading Eclipse

Wed, 11/15/2017 - 20:26

← Older revision Revision as of 03:26, 16 November 2017 (One intermediate revision by the same user not shown)Line 1: Line 1:  Upgrading Eclipse installation to work with Elphel projects, including VDT plugin that launches another Eclipse application (e.g. from Neon to Oxygen) Upgrading Eclipse installation to work with Elphel projects, including VDT plugin that launches another Eclipse application (e.g. from Neon to Oxygen)  +  +Increase memory sizes in new installation eclipse.ini -make them the same as in previous installation, such as (depending on actual memory available):  + -Xms4G  + -Xmx6G  +     '''Always backup your workspace files tree or use copies, such as workspace-neon and workspace-oxygen (start with a copy of workspace-neon).''' '''Always backup your workspace files tree or use copies, such as workspace-neon and workspace-oxygen (start with a copy of workspace-neon).''' Andrey.filippov

Upgrading Eclipse

Wed, 11/15/2017 - 19:30

Created page with "Upgrading Eclipse installation to work with Elphel projects, including VDT plugin that launches another Eclipse application (e.g. from Neon to Oxygen) '''Always backup your w..."

New page

Upgrading Eclipse installation to work with Elphel projects, including VDT plugin that launches another Eclipse application (e.g. from Neon to Oxygen)

'''Always backup your workspace files tree or use copies, such as workspace-neon and workspace-oxygen (start with a copy of workspace-neon).'''

Same for secondary workspaces (runtime-EclipseApplication-neon, runtime-EclipseApplication-oxygen). You may find the path to the secondary workspace for VDT plugin here:
Run -> Run Configurations -> Eclipse Application -> Eclipse Application -> Main (tab) -> Location

That may look like: ${workspace_loc}/../runtime-EclipseApplication-oxygen

First open current (working) version of Eclipse (here: Neon), select
File -> Export -> Install -> Installed Software Items to File
Select: All
Select: Include entries not found in repositories
select location where to save the export file

Run new Eclipse version, '''select new empty workspace, not the working one with your projects'''
File -> Import -> Install -> Install Software Items from File -> Next
Locate exported file
select: Install latest version of selected file
Finish

Then close Eclipse and open it with workspace-oxygen (copied from workspace-neon). Eclipse will worn you that it will update the workspace and there is no way back. Agree, as it is a copy of the workspace-neon, not workspace-neon itself.

You projects should open correctly. Now change location of the secondary workspace (from ...-neon to ...-oxygen) in:
Run -> Run Configurations -> Eclipse Application -> Eclipse Application -> Main (tab) -> Location

Try running that secondary Eclipse (it will take longer first time before it will ask about updating configuration to the new Eclipse version) Andrey.filippov

Using 10359 mux with 10393

Wed, 11/15/2017 - 16:18

‎Firmware image

← Older revision Revision as of 23:18, 15 November 2017 (One intermediate revision by the same user not shown)Line 2: Line 2:     ===Firmware image=== ===Firmware image=== −[https://community.elphel.com/files/393/20171115/ '''20171115'''] or required apps-autocampars version is at least 1.0.46+[https://community.elphel.com/files/393/20171115/ '''20171115'''] or required apps-autocampars version is at least 1.0.47    root@elphel393:~# cat /etc/elphel393/packages/apps-autocampars     root@elphel393:~# cat /etc/elphel393/packages/apps-autocampars   −  1.0.46+  1.0.47     ===Connection=== ===Connection=== Oleg

X393

Wed, 11/15/2017 - 14:58

‎Simulation with Cocotb

← Older revision Revision as of 21:58, 15 November 2017 (3 intermediate revisions by the same user not shown)Line 18: Line 18:  Simulation with cocotb uses client-server model. Simulation with cocotb uses client-server model.    −First you launch Cocotb simulation (double-click on 'Cocotb Python Verification' menu item in the bottom-right panel of VDT perspective. This should launch simulation, and after all the initialization steps are done, simulation will be suspended, waiting for the client to communicate.+[[File:Launch cocotb.png|400px|thumb|right|Figure 1. cocotb simulation initialized]]  +   +First you launch Cocotb simulation (double-click on 'Cocotb Python Verification' menu item in the bottom-right panel of VDT perspective. This should launch simulation, and after all the initialization steps are done, simulation will be suspended, waiting for the client to communicate (Figure 1).     Client is a Python application that may run either in the physical camera, or on a GNU/Linux computer. In that case all hardware-dependent functionality (access to the memory or FPGA registers) is replaced by the interaction with Cocotb simulation (see this blog post [https://blog.elphel.com/2016/07/i-will-not-have-to-learn-systemverilog/]) Client is a Python application that may run either in the physical camera, or on a GNU/Linux computer. In that case all hardware-dependent functionality (access to the memory or FPGA registers) is replaced by the interaction with Cocotb simulation (see this blog post [https://blog.elphel.com/2016/07/i-will-not-have-to-learn-systemverilog/])     Examples of the commands to launch in the client program are available like comment sin the end of the file [https://git.elphel.com/Elphel/x393/blob/master/py393/x393_jpeg.py] and can be copy-pasted from there. Program is ran from the top directory of the cloned x393 project: Examples of the commands to launch in the client program are available like comment sin the end of the file [https://git.elphel.com/Elphel/x393/blob/master/py393/x393_jpeg.py] and can be copy-pasted from there. Program is ran from the top directory of the cloned x393 project:  +[[File:Continue cocotb.png|400px|thumb|right|Figure 2. cocotb simulation after  'measure_all "*DI"' command finished]]    ./py393/test_mcntrl.py @py393/cocoargs  --simulated=localhost:7777   ./py393/test_mcntrl.py @py393/cocoargs  --simulated=localhost:7777     Next lines are the actual commands to be executed, starting with the DDR memory initialization. The whole command block can be copy-pasted simultaneously, and they will start running - that may take a long times (from tens to hundreds of minutes with small but actual image acquisition and compression on all ports). Next lines are the actual commands to be executed, starting with the DDR memory initialization. The whole command block can be copy-pasted simultaneously, and they will start running - that may take a long times (from tens to hundreds of minutes with small but actual image acquisition and compression on all ports). −As soon as the client will start, Cocotb simulation in VDT should come to life again and output commands executed+As soon as the client will start, Cocotb simulation in VDT should come to life again and output executed commands.       measure_all "*DI"   measure_all "*DI"  +  +Console output for the client will look like:  + eyesis@eyesis-SH87R:  + eyesis@eyesis-SH87R:~/git/x393$ ./py393/test_mcntrl.py @py393/cocoargs  --simulated=localhost:7777  + args.simulated =  localhost:7777  + args =  Namespace(commands=[], defines=[[' TARGET_MODE=1']], exceptions=0, interactive=True, localparams=' includes/x393_cur_params_target_gen.vh', parameters=[[' PICKLE="includes/x393_mcntrl.pickle"']], paths=[[' system_defines.vh'], [' includes/x393_parameters.vh includes/x393_cur_params_simulation.vh includes/x393_localparams.vh includes/x393_simulation_parameters.vh']], simulated='localhost:7777', socket_port='', verbose=None)  + +++ paths=['system_defines.vh', 'includes/x393_parameters.vh', 'includes/x393_cur_params_simulation.vh', 'includes/x393_localparams.vh', 'includes/x393_simulation_parameters.vh']  +  +[[File:Finish cocotb.png|400px|thumb|right|Figure 3. cocotb simulation after  'finish' command]]  +...  + [113.368/+113.364] Initialize memory, turn on refresh (used when no calibration is needed)  +    init_ddr3(wait_complete=True, refresh=True, quiet=4, )  + [122.141/+8.773] All Done  + x393 (localhost:7777) +122.141s-->  +  +  +It is possible to view partially simulated waveforms and then enter more commands. In the simplest case just enter "finish" command and then "exit" - restarting simulation after "finish" is not built in the program.  +[[File:Gtkwave cocotb.png|400px|thumb|right|Figure 4. GTKWave viewer after cocotb simulation is finished]]  + x393 (localhost:7777) +122.141s--> finish  + stop-> 0  + x393 (localhost:7777) +0.001s--> exit  + eyesis@eyesis-SH87R:~/git/x393-neon$  +  +"finish" command from the client ends cocotb simulation (Figure 3) and VDT launches GTKWave showing simulation results (Figure 4). Andrey.filippov

File:Gtkwave cocotb.png

Wed, 11/15/2017 - 14:42

Andrey.filippov uploaded File:Gtkwave cocotb.png GTKWave viewer after cocotb simulation finished

New page

== Summary ==
GTKWave viewer after cocotb simulation finished
== Licensing ==
{{GNU FDLv1.3 }} Andrey.filippov

File:Finish cocotb.png

Wed, 11/15/2017 - 14:41

Andrey.filippov uploaded File:Finish cocotb.png VDT+cocotb after simulation finished

New page

== Summary ==
VDT+cocotb after simulation finished
== Licensing ==
{{GNU FDLv1.3 }} Andrey.filippov

File:Continue cocotb.png

Wed, 11/15/2017 - 14:28

Andrey.filippov uploaded File:Continue cocotb.png Screenshot of the running cocotb after client ran several commands

New page

== Summary ==
Screenshot of the running cocotb after client ran several commands
== Licensing ==
{{GNU FDLv1.3 }} Andrey.filippov

File:Launch cocotb.png

Wed, 11/15/2017 - 14:26

Andrey.filippov uploaded File:Launch cocotb.png

New page

== Licensing ==
{{GNU FDLv1.3 }} Andrey.filippov

X393

Wed, 11/15/2017 - 14:25

‎Simulation with Cocotb

← Older revision Revision as of 21:25, 15 November 2017 Line 16: Line 16:  VDT plugin does not use Vivado GUI, in the case of x393 it only uses Vivado synthesis and implementation command line tools. Other projects (x353) for older FPGA devices use Xiinx ISE, it is possible to use Intel/Altera Quartus also. VDT plugin does not use Vivado GUI, in the case of x393 it only uses Vivado synthesis and implementation command line tools. Other projects (x353) for older FPGA devices use Xiinx ISE, it is possible to use Intel/Altera Quartus also.  ==Simulation with Cocotb== ==Simulation with Cocotb==  +Simulation with cocotb uses client-server model.  +  +First you launch Cocotb simulation (double-click on 'Cocotb Python Verification' menu item in the bottom-right panel of VDT perspective. This should launch simulation, and after all the initialization steps are done, simulation will be suspended, waiting for the client to communicate.  +  +Client is a Python application that may run either in the physical camera, or on a GNU/Linux computer. In that case all hardware-dependent functionality (access to the memory or FPGA registers) is replaced by the interaction with Cocotb simulation (see this blog post [https://blog.elphel.com/2016/07/i-will-not-have-to-learn-systemverilog/])  +  +Examples of the commands to launch in the client program are available like comment sin the end of the file [https://git.elphel.com/Elphel/x393/blob/master/py393/x393_jpeg.py] and can be copy-pasted from there. Program is ran from the top directory of the cloned x393 project:  + ./py393/test_mcntrl.py @py393/cocoargs  --simulated=localhost:7777  +  +Next lines are the actual commands to be executed, starting with the DDR memory initialization. The whole command block can be copy-pasted simultaneously, and they will start running - that may take a long times (from tens to hundreds of minutes with small but actual image acquisition and compression on all ports).  +As soon as the client will start, Cocotb simulation in VDT should come to life again and output commands executed  +  + measure_all "*DI" Andrey.filippov

X393

Wed, 11/15/2017 - 13:59

starting page

New page

x393 is a project for the FPGA (Xilinx Zynq 7030) that powers Elphel NC393 camera.

==Code repository==
[https://git.elphel.com/Elphel/x393/]

==Installation instructions==
[https://git.elphel.com/Elphel/x393/blob/master/README.md]

==Introduction==
The project uses Verilog HDL, it is distributed as a project of [[VDT]] plugin for Eclipse IDE. When VDT plugin (and related software) is installed you may launch simulation and implementation tools from this IDE.

Simulation uses Icarus Verilog simulator and Cocotb Python co-simulator (Cocotb still uses Icarus).

Proprietary Implementations tools (x393 project uses only free for download WebPack edition of Xilinx Vivado tools) may be installed on the same computer as the development environment, or on a separate computer - in that case VDP plugin uses ssh+rsync to communicate with teh installed software. Such separation allows to comply with Xilinx WebPack license that requires that computer with Vivado WebPack installation should be connected to the Internet, and at the same time preserve security of the files on your workstation - communication between the two computers is one-way and Vivado can not reach files on the workstation.

VDT plugin does not use Vivado GUI, in the case of x393 it only uses Vivado synthesis and implementation command line tools. Other projects (x353) for older FPGA devices use Xiinx ISE, it is possible to use Intel/Altera Quartus also.
==Simulation with Cocotb== Andrey.filippov

Using 10359 mux with10393

Wed, 11/15/2017 - 13:49

← Older revision Revision as of 20:49, 15 November 2017 (One intermediate revision by the same user not shown)Line 78: Line 78:  [[Category:393]] [[Category:393]]    −==Comments==+==More details==  ===device tree=== ===device tree===  * decompile device tree * decompile device tree Line 89: Line 89:  * compile device tree * compile device tree    ~$ dtc -I dts -O dtb -o devicetree.dtb devicetree.dts   ~$ dtc -I dts -O dtb -o devicetree.dtb devicetree.dts  +  +===if 10389 is connected===  +Go to http://community.elphel.com/bootblock393/ and program 10389 EEPROM  +* Enter camera's IP address in the 1st block (top-left)  +* In the 2nd block:  +** Read AUX  +** Set  + '''Application''' = MT9P006  + '''Application mode''' = as described for 10389-less setup  +** Program AUX  +* Reboot Oleg

Eclipse/ExDT/VDT plugins

Wed, 11/15/2017 - 13:40

marked as legacy, added link to current page

← Older revision Revision as of 20:40, 15 November 2017 Line 1: Line 1:  +{{Legacy}}  +Current page is [[VDT]]  +  == About == == About ==  Eclipse/ExDT (and its special version for Verilog - Eclipse/VDT) is a plugin for Eclipse developed by [http://www.excelsior-usa.com Excelsior,LLC] for Elphel,Inc. Eclipse/ExDT (and its special version for Verilog - Eclipse/VDT) is a plugin for Eclipse developed by [http://www.excelsior-usa.com Excelsior,LLC] for Elphel,Inc. Andrey.filippov

Vdt

Wed, 11/15/2017 - 13:39

Andrey.filippov moved page Vdt to VDT without leaving a redirect

Andrey.filippov

Templete:legacy

Wed, 11/15/2017 - 13:36

Andrey.filippov moved page Templete:legacy to Template:Legacy without leaving a redirect

Andrey.filippov

Using 10359 mux with10393

Wed, 11/15/2017 - 13:35

‎Phase adjustments

← Older revision Revision as of 20:35, 15 November 2017 Line 65: Line 65:  ** inspect image ** inspect image  ** TESTSENSOR=0x10008 - color bars mode, see Fig.3 ** TESTSENSOR=0x10008 - color bars mode, see Fig.3 −** MULTI_PHASE1=0x10000 (this worked for )+** MULTI_PHASE1=0x10000 (this worked for the tested setup)  ** MULTI_PHASE2=0x10000 ** MULTI_PHASE2=0x10000  ** MULTI_PHASE3=0x10050 ** MULTI_PHASE3=0x10050 Oleg

Pages