diff --git a/chuck_poi_stepping.py b/chuck_poi_stepping.py index a5cf09a..b8e88d8 100644 --- a/chuck_poi_stepping.py +++ b/chuck_poi_stepping.py @@ -1,5 +1,4 @@ from sentio_prober_control.Sentio.ProberSentio import * -from sentio_prober_control.Communication.CommunicatorTcpIp import CommunicatorTcpIp # # This example will demonstrate how to navigate the chuck with a point of interest list (POI) @@ -92,7 +91,7 @@ def set_poi(prober): def main(): try: - prober = SentioProber(CommunicatorTcpIp.create("127.0.0.1:35555")) + prober = SentioProber.create_prober("tcpip", "127.0.0.1:35555") check_preconditions(prober) set_poi(prober) @@ -123,10 +122,13 @@ def main(): prober.map.step_next_die() if prober.map.end_of_route(): break + + prober.local_mode() except Exception as e: print("\n#### Error ##################################") print("{0}".format(e)) + prober.local_mode() if __name__ == "__main__": diff --git a/map_setup.py b/map_setup.py index 5ac0c39..27d3858 100644 --- a/map_setup.py +++ b/map_setup.py @@ -1,17 +1,12 @@ from sentio_prober_control.Sentio.ProberSentio import * -from sentio_prober_control.Communication.CommunicatorTcpIp import CommunicatorTcpIp -from sentio_prober_control.Communication.CommunicatorGpib import CommunicatorGpib def main(): try: - - # Setup GPIB Communication -# prober = SentioProber(CommunicatorGpib.create(GpibCardVendor.Adlink, "GPIB0:20")) - - # Setup TCPIP Communication - prober = SentioProber(CommunicatorTcpIp.create("127.0.0.1:35555")) + # Create prober object + prober = SentioProber.create_prober("tcpip", "127.0.0.1:35555") + #prober = SentioProber.create_prober("gpib", GpibCardVendor.Adlink, "GPIB0:20") prober.select_module(Module.Wafermap) @@ -52,6 +47,8 @@ def main(): print(f"Street Size: {map.get_street_size()}") print(f"present dies: {map.get_num_dies(DieNumber.Present)}") print(f"Selected dies: {map.get_num_dies(DieNumber.Selected)}") + + prober.local_mode() except Exception as e: print("\n#### Error ##################################") print(f"{e}") diff --git a/map_setup_rect.py b/map_setup_rect.py index ef56fce..63d2e67 100644 --- a/map_setup_rect.py +++ b/map_setup_rect.py @@ -1,16 +1,11 @@ -from sentio_prober_control.Communication.CommunicatorGpib import CommunicatorGpib from sentio_prober_control.Sentio.ProberSentio import * -from sentio_prober_control.Communication.CommunicatorTcpIp import CommunicatorTcpIp def main(): try: - # Setup GPIB Communication -# prober = SentioProber(CommunicatorGpib.create(GpibCardVendor.Adlink, "GPIB0:20")) - - # Setup TCPIP Communication - prober = SentioProber(CommunicatorTcpIp.create("127.0.0.1:35555")) + # create the prober object + prober = SentioProber.create_prober("tcpip" , "127.0.0.1:35555") prober.select_module(Module.Wafermap) @@ -33,6 +28,7 @@ def main(): map.die.remove(0,rows-1) map.die.remove(cols-1, rows-1) + prober.local_mode() except Exception as e: print("\n#### Error ##################################") print("{0}".format(e)) diff --git a/map_stepping.py b/map_stepping.py index 20a79b5..d3355cc 100644 --- a/map_stepping.py +++ b/map_stepping.py @@ -1,16 +1,10 @@ from sentio_prober_control.Sentio.ProberSentio import * -from sentio_prober_control.Communication.CommunicatorGpib import * -from sentio_prober_control.Communication.CommunicatorTcpIp import * def main(): try: - # Setup GPIB Communication -# prober = SentioProber(CommunicatorGpib.create(GpibCardVendor.Adlink, "GPIB0:20")) - - # Setup TCPIP Communication - prober = SentioProber(CommunicatorTcpIp.create("127.0.0.1:35555")) + prober = SentioProber.create_prober("tcpip", "127.0.0.1:35555") x, y, z, t = prober.move_chuck_site(ChuckSite.Wafer) print("absolute chuck position is x={0}; y={1}; z={2}; theta={3}°".format(x, y, z, t)) @@ -23,8 +17,6 @@ def main(): if not hasContact: raise Exception("Contact must be set for stepping!") - - prober.select_module(Module.Wafermap) # setup a wafermap @@ -43,6 +35,22 @@ def main(): prober.map.path.select_dies(TestSelection.All) prober.map.path.set_routing(RoutingStartPoint.UpperRight, RoutingPriority.ColBiDir) + # remove 4 dies in the center + prober.map.die.remove(0,0) + prober.map.die.remove(-1,0) + prober.map.die.remove(-1,-1) + prober.map.die.remove(0,-1) + + # add die on top of the wafer to the map and the test path + prober.map.die.add(-3, 5) + prober.map.die.select(-3, 5) + + # unselect the last column of dies + prober.map.die.unselect(-6, 1) + prober.map.die.unselect(-6, 0) + prober.map.die.unselect(-6, -1) + prober.map.die.unselect(-6, -2) + # # Stepping Version 1: Use the EndOfRoutException as the abort criteria # @@ -73,6 +81,8 @@ def main(): prober.map.bins.set_bin(bin_value, col, row) print(f'Last Die {col}, {row} (Site: {site})') break + + prober.local_mode() except Exception as e: print("\n#### Error ##################################")