src/eric7/Documentation/Source/eric7.MicroPython.Devices.RP2040Devices.html

branch
mpy_network
changeset 9799
a79430a8811d
parent 9765
6378da868bb0
child 9840
d41ee69fa69b
equal deleted inserted replaced
9798:4402d76c5fa9 9799:a79430a8811d
78 <tr> 78 <tr>
79 <td><a href="#RP2040Device.__flashPython">__flashPython</a></td> 79 <td><a href="#RP2040Device.__flashPython">__flashPython</a></td>
80 <td>Private slot to flash a MicroPython firmware to the device.</td> 80 <td>Private slot to flash a MicroPython firmware to the device.</td>
81 </tr> 81 </tr>
82 <tr> 82 <tr>
83 <td><a href="#RP2040Device.__setCountry">__setCountry</a></td>
84 <td>Private slot to configure the country of the connected RP2040 device.</td>
85 </tr>
86 <tr>
83 <td><a href="#RP2040Device.__showFirmwareVersions">__showFirmwareVersions</a></td> 87 <td><a href="#RP2040Device.__showFirmwareVersions">__showFirmwareVersions</a></td>
84 <td>Private slot to show the firmware version of the connected device and the available firmware version.</td> 88 <td>Private slot to show the firmware version of the connected device and the available firmware version.</td>
85 </tr> 89 </tr>
86 <tr> 90 <tr>
87 <td><a href="#RP2040Device._getSetTimeCode">_getSetTimeCode</a></td> 91 <td><a href="#RP2040Device._getSetTimeCode">_getSetTimeCode</a></td>
90 <tr> 94 <tr>
91 <td><a href="#RP2040Device.addDeviceMenuEntries">addDeviceMenuEntries</a></td> 95 <td><a href="#RP2040Device.addDeviceMenuEntries">addDeviceMenuEntries</a></td>
92 <td>Public method to add device specific entries to the given menu.</td> 96 <td>Public method to add device specific entries to the given menu.</td>
93 </tr> 97 </tr>
94 <tr> 98 <tr>
99 <td><a href="#RP2040Device.addDeviceWifiEntries">addDeviceWifiEntries</a></td>
100 <td>Public method to add device specific entries to the given menu.</td>
101 </tr>
102 <tr>
95 <td><a href="#RP2040Device.canRunScript">canRunScript</a></td> 103 <td><a href="#RP2040Device.canRunScript">canRunScript</a></td>
96 <td>Public method to determine, if a script can be executed.</td> 104 <td>Public method to determine, if a script can be executed.</td>
97 </tr> 105 </tr>
98 <tr> 106 <tr>
99 <td><a href="#RP2040Device.canStartFileManager">canStartFileManager</a></td> 107 <td><a href="#RP2040Device.canStartFileManager">canStartFileManager</a></td>
106 <tr> 114 <tr>
107 <td><a href="#RP2040Device.canStartRepl">canStartRepl</a></td> 115 <td><a href="#RP2040Device.canStartRepl">canStartRepl</a></td>
108 <td>Public method to determine, if a REPL can be started.</td> 116 <td>Public method to determine, if a REPL can be started.</td>
109 </tr> 117 </tr>
110 <tr> 118 <tr>
119 <td><a href="#RP2040Device.checkInternet">checkInternet</a></td>
120 <td>Public method to check, if the internet can be reached.</td>
121 </tr>
122 <tr>
123 <td><a href="#RP2040Device.connectWifi">connectWifi</a></td>
124 <td>Public method to connect a device to a WiFi network.</td>
125 </tr>
126 <tr>
127 <td><a href="#RP2040Device.deactivateInterface">deactivateInterface</a></td>
128 <td>Public method to deactivate a given WiFi interface of the connected device.</td>
129 </tr>
130 <tr>
111 <td><a href="#RP2040Device.deviceName">deviceName</a></td> 131 <td><a href="#RP2040Device.deviceName">deviceName</a></td>
112 <td>Public method to get the name of the device.</td> 132 <td>Public method to get the name of the device.</td>
113 </tr> 133 </tr>
114 <tr> 134 <tr>
135 <td><a href="#RP2040Device.disconnectWifi">disconnectWifi</a></td>
136 <td>Public method to disconnect a device from the WiFi network.</td>
137 </tr>
138 <tr>
115 <td><a href="#RP2040Device.forceInterrupt">forceInterrupt</a></td> 139 <td><a href="#RP2040Device.forceInterrupt">forceInterrupt</a></td>
116 <td>Public method to determine the need for an interrupt when opening the serial connection.</td> 140 <td>Public method to determine the need for an interrupt when opening the serial connection.</td>
117 </tr> 141 </tr>
118 <tr> 142 <tr>
143 <td><a href="#RP2040Device.getConnectedClients">getConnectedClients</a></td>
144 <td>Public method to get a list of connected clients.</td>
145 </tr>
146 <tr>
119 <td><a href="#RP2040Device.getDocumentationUrl">getDocumentationUrl</a></td> 147 <td><a href="#RP2040Device.getDocumentationUrl">getDocumentationUrl</a></td>
120 <td>Public method to get the device documentation URL.</td> 148 <td>Public method to get the device documentation URL.</td>
121 </tr> 149 </tr>
122 <tr> 150 <tr>
123 <td><a href="#RP2040Device.getDownloadMenuEntries">getDownloadMenuEntries</a></td> 151 <td><a href="#RP2040Device.getDownloadMenuEntries">getDownloadMenuEntries</a></td>
124 <td>Public method to retrieve the entries for the downloads menu.</td> 152 <td>Public method to retrieve the entries for the downloads menu.</td>
125 </tr> 153 </tr>
126 <tr> 154 <tr>
155 <td><a href="#RP2040Device.getWifiData">getWifiData</a></td>
156 <td>Public method to get data related to the current WiFi status.</td>
157 </tr>
158 <tr>
127 <td><a href="#RP2040Device.hasFlashMenuEntry">hasFlashMenuEntry</a></td> 159 <td><a href="#RP2040Device.hasFlashMenuEntry">hasFlashMenuEntry</a></td>
128 <td>Public method to check, if the device has its own flash menu entry.</td> 160 <td>Public method to check, if the device has its own flash menu entry.</td>
129 </tr> 161 </tr>
130 <tr> 162 <tr>
163 <td><a href="#RP2040Device.hasWifi">hasWifi</a></td>
164 <td>Public method to check the availability of WiFi.</td>
165 </tr>
166 <tr>
167 <td><a href="#RP2040Device.removeCredentials">removeCredentials</a></td>
168 <td>Public method to remove the saved credentials from the connected device.</td>
169 </tr>
170 <tr>
131 <td><a href="#RP2040Device.runScript">runScript</a></td> 171 <td><a href="#RP2040Device.runScript">runScript</a></td>
132 <td>Public method to run the given Python script.</td> 172 <td>Public method to run the given Python script.</td>
133 </tr> 173 </tr>
134 <tr> 174 <tr>
175 <td><a href="#RP2040Device.scanNetworks">scanNetworks</a></td>
176 <td>Public method to scan for available WiFi networks.</td>
177 </tr>
178 <tr>
135 <td><a href="#RP2040Device.setButtons">setButtons</a></td> 179 <td><a href="#RP2040Device.setButtons">setButtons</a></td>
136 <td>Public method to enable the supported action buttons.</td> 180 <td>Public method to enable the supported action buttons.</td>
181 </tr>
182 <tr>
183 <td><a href="#RP2040Device.startAccessPoint">startAccessPoint</a></td>
184 <td>Public method to start the access point interface.</td>
185 </tr>
186 <tr>
187 <td><a href="#RP2040Device.stopAccessPoint">stopAccessPoint</a></td>
188 <td>Public method to stop the access point interface.</td>
189 </tr>
190 <tr>
191 <td><a href="#RP2040Device.writeCredentials">writeCredentials</a></td>
192 <td>Public method to write the given credentials to the connected device and modify the start script to connect automatically.</td>
137 </tr> 193 </tr>
138 </table> 194 </table>
139 <h3>Static Methods</h3> 195 <h3>Static Methods</h3>
140 196
141 <table> 197 <table>
197 <b>__flashPython</b>(<i></i>) 253 <b>__flashPython</b>(<i></i>)
198 254
199 <p> 255 <p>
200 Private slot to flash a MicroPython firmware to the device. 256 Private slot to flash a MicroPython firmware to the device.
201 </p> 257 </p>
258 <a NAME="RP2040Device.__setCountry" ID="RP2040Device.__setCountry"></a>
259 <h4>RP2040Device.__setCountry</h4>
260 <b>__setCountry</b>(<i></i>)
261
262 <p>
263 Private slot to configure the country of the connected RP2040 device.
264 </p>
265 <p>
266 The country is the two letter country code.
267 </p>
202 <a NAME="RP2040Device.__showFirmwareVersions" ID="RP2040Device.__showFirmwareVersions"></a> 268 <a NAME="RP2040Device.__showFirmwareVersions" ID="RP2040Device.__showFirmwareVersions"></a>
203 <h4>RP2040Device.__showFirmwareVersions</h4> 269 <h4>RP2040Device.__showFirmwareVersions</h4>
204 <b>__showFirmwareVersions</b>(<i></i>) 270 <b>__showFirmwareVersions</b>(<i></i>)
205 271
206 <p> 272 <p>
242 <dt><i>menu</i> (QMenu)</dt> 308 <dt><i>menu</i> (QMenu)</dt>
243 <dd> 309 <dd>
244 reference to the context menu 310 reference to the context menu
245 </dd> 311 </dd>
246 </dl> 312 </dl>
313 <a NAME="RP2040Device.addDeviceWifiEntries" ID="RP2040Device.addDeviceWifiEntries"></a>
314 <h4>RP2040Device.addDeviceWifiEntries</h4>
315 <b>addDeviceWifiEntries</b>(<i>menu</i>)
316
317 <p>
318 Public method to add device specific entries to the given menu.
319 </p>
320 <dl>
321
322 <dt><i>menu</i> (QMenu)</dt>
323 <dd>
324 reference to the context menu
325 </dd>
326 </dl>
247 <a NAME="RP2040Device.canRunScript" ID="RP2040Device.canRunScript"></a> 327 <a NAME="RP2040Device.canRunScript" ID="RP2040Device.canRunScript"></a>
248 <h4>RP2040Device.canRunScript</h4> 328 <h4>RP2040Device.canRunScript</h4>
249 <b>canRunScript</b>(<i></i>) 329 <b>canRunScript</b>(<i></i>)
250 330
251 <p> 331 <p>
322 <dt>Return Type:</dt> 402 <dt>Return Type:</dt>
323 <dd> 403 <dd>
324 tuple of (bool, str) 404 tuple of (bool, str)
325 </dd> 405 </dd>
326 </dl> 406 </dl>
407 <a NAME="RP2040Device.checkInternet" ID="RP2040Device.checkInternet"></a>
408 <h4>RP2040Device.checkInternet</h4>
409 <b>checkInternet</b>(<i></i>)
410
411 <p>
412 Public method to check, if the internet can be reached.
413 </p>
414 <dl>
415 <dt>Return:</dt>
416 <dd>
417 tuple containing a flag indicating reachability and an error string
418 </dd>
419 </dl>
420 <dl>
421 <dt>Return Type:</dt>
422 <dd>
423 tuple of (bool, str)
424 </dd>
425 </dl>
426 <a NAME="RP2040Device.connectWifi" ID="RP2040Device.connectWifi"></a>
427 <h4>RP2040Device.connectWifi</h4>
428 <b>connectWifi</b>(<i>ssid, password</i>)
429
430 <p>
431 Public method to connect a device to a WiFi network.
432 </p>
433 <dl>
434
435 <dt><i>ssid</i> (str)</dt>
436 <dd>
437 name (SSID) of the WiFi network
438 </dd>
439 <dt><i>password</i> (str)</dt>
440 <dd>
441 password needed to connect
442 </dd>
443 </dl>
444 <dl>
445 <dt>Return:</dt>
446 <dd>
447 tuple containing the connection status and an error string
448 </dd>
449 </dl>
450 <dl>
451 <dt>Return Type:</dt>
452 <dd>
453 tuple of (bool, str)
454 </dd>
455 </dl>
456 <a NAME="RP2040Device.deactivateInterface" ID="RP2040Device.deactivateInterface"></a>
457 <h4>RP2040Device.deactivateInterface</h4>
458 <b>deactivateInterface</b>(<i>interface</i>)
459
460 <p>
461 Public method to deactivate a given WiFi interface of the connected device.
462 </p>
463 <dl>
464
465 <dt><i>interface</i> (str)</dt>
466 <dd>
467 designation of the interface to be deactivated (one of 'AP'
468 or 'STA')
469 </dd>
470 </dl>
471 <dl>
472 <dt>Return:</dt>
473 <dd>
474 tuple containg a flag indicating success and an error message
475 </dd>
476 </dl>
477 <dl>
478 <dt>Return Type:</dt>
479 <dd>
480 tuple of (bool, str)
481 </dd>
482 </dl>
483 <dl>
484
485 <dt>Raises <b>ValueError</b>:</dt>
486 <dd>
487 raised to indicate a wrong value for the interface type
488 </dd>
489 </dl>
327 <a NAME="RP2040Device.deviceName" ID="RP2040Device.deviceName"></a> 490 <a NAME="RP2040Device.deviceName" ID="RP2040Device.deviceName"></a>
328 <h4>RP2040Device.deviceName</h4> 491 <h4>RP2040Device.deviceName</h4>
329 <b>deviceName</b>(<i></i>) 492 <b>deviceName</b>(<i></i>)
330 493
331 <p> 494 <p>
341 <dt>Return Type:</dt> 504 <dt>Return Type:</dt>
342 <dd> 505 <dd>
343 str 506 str
344 </dd> 507 </dd>
345 </dl> 508 </dl>
509 <a NAME="RP2040Device.disconnectWifi" ID="RP2040Device.disconnectWifi"></a>
510 <h4>RP2040Device.disconnectWifi</h4>
511 <b>disconnectWifi</b>(<i></i>)
512
513 <p>
514 Public method to disconnect a device from the WiFi network.
515 </p>
516 <dl>
517 <dt>Return:</dt>
518 <dd>
519 tuple containing a flag indicating success and an error string
520 </dd>
521 </dl>
522 <dl>
523 <dt>Return Type:</dt>
524 <dd>
525 tuple of (bool, str)
526 </dd>
527 </dl>
346 <a NAME="RP2040Device.forceInterrupt" ID="RP2040Device.forceInterrupt"></a> 528 <a NAME="RP2040Device.forceInterrupt" ID="RP2040Device.forceInterrupt"></a>
347 <h4>RP2040Device.forceInterrupt</h4> 529 <h4>RP2040Device.forceInterrupt</h4>
348 <b>forceInterrupt</b>(<i></i>) 530 <b>forceInterrupt</b>(<i></i>)
349 531
350 <p> 532 <p>
361 <dt>Return Type:</dt> 543 <dt>Return Type:</dt>
362 <dd> 544 <dd>
363 bool 545 bool
364 </dd> 546 </dd>
365 </dl> 547 </dl>
548 <a NAME="RP2040Device.getConnectedClients" ID="RP2040Device.getConnectedClients"></a>
549 <h4>RP2040Device.getConnectedClients</h4>
550 <b>getConnectedClients</b>(<i></i>)
551
552 <p>
553 Public method to get a list of connected clients.
554 </p>
555 <dl>
556 <dt>Return:</dt>
557 <dd>
558 a tuple containing a list of tuples containing the client MAC-Address
559 and the RSSI (if supported and available) and an error message
560 </dd>
561 </dl>
562 <dl>
563 <dt>Return Type:</dt>
564 <dd>
565 tuple of ([(bytes, int)], str)
566 </dd>
567 </dl>
366 <a NAME="RP2040Device.getDocumentationUrl" ID="RP2040Device.getDocumentationUrl"></a> 568 <a NAME="RP2040Device.getDocumentationUrl" ID="RP2040Device.getDocumentationUrl"></a>
367 <h4>RP2040Device.getDocumentationUrl</h4> 569 <h4>RP2040Device.getDocumentationUrl</h4>
368 <b>getDocumentationUrl</b>(<i></i>) 570 <b>getDocumentationUrl</b>(<i></i>)
369 571
370 <p> 572 <p>
400 <dt>Return Type:</dt> 602 <dt>Return Type:</dt>
401 <dd> 603 <dd>
402 list of tuple of (str, str) 604 list of tuple of (str, str)
403 </dd> 605 </dd>
404 </dl> 606 </dl>
607 <a NAME="RP2040Device.getWifiData" ID="RP2040Device.getWifiData"></a>
608 <h4>RP2040Device.getWifiData</h4>
609 <b>getWifiData</b>(<i></i>)
610
611 <p>
612 Public method to get data related to the current WiFi status.
613 </p>
614 <dl>
615 <dt>Return:</dt>
616 <dd>
617 tuple of three dictionaries containing the WiFi status data
618 for the WiFi client, access point and overall data
619 </dd>
620 </dl>
621 <dl>
622 <dt>Return Type:</dt>
623 <dd>
624 tuple of (dict, dict, dict)
625 </dd>
626 </dl>
627 <dl>
628
629 <dt>Raises <b>OSError</b>:</dt>
630 <dd>
631 raised to indicate an issue with the device
632 </dd>
633 </dl>
405 <a NAME="RP2040Device.hasFlashMenuEntry" ID="RP2040Device.hasFlashMenuEntry"></a> 634 <a NAME="RP2040Device.hasFlashMenuEntry" ID="RP2040Device.hasFlashMenuEntry"></a>
406 <h4>RP2040Device.hasFlashMenuEntry</h4> 635 <h4>RP2040Device.hasFlashMenuEntry</h4>
407 <b>hasFlashMenuEntry</b>(<i></i>) 636 <b>hasFlashMenuEntry</b>(<i></i>)
408 637
409 <p> 638 <p>
419 <dt>Return Type:</dt> 648 <dt>Return Type:</dt>
420 <dd> 649 <dd>
421 bool 650 bool
422 </dd> 651 </dd>
423 </dl> 652 </dl>
653 <a NAME="RP2040Device.hasWifi" ID="RP2040Device.hasWifi"></a>
654 <h4>RP2040Device.hasWifi</h4>
655 <b>hasWifi</b>(<i></i>)
656
657 <p>
658 Public method to check the availability of WiFi.
659 </p>
660 <dl>
661 <dt>Return:</dt>
662 <dd>
663 tuple containing a flag indicating the availability of WiFi
664 and the WiFi type (picow or pimoroni)
665 </dd>
666 </dl>
667 <dl>
668 <dt>Return Type:</dt>
669 <dd>
670 tuple of (bool, str)
671 </dd>
672 </dl>
673 <dl>
674
675 <dt>Raises <b>OSError</b>:</dt>
676 <dd>
677 raised to indicate an issue with the device
678 </dd>
679 </dl>
680 <a NAME="RP2040Device.removeCredentials" ID="RP2040Device.removeCredentials"></a>
681 <h4>RP2040Device.removeCredentials</h4>
682 <b>removeCredentials</b>(<i></i>)
683
684 <p>
685 Public method to remove the saved credentials from the connected device.
686 </p>
687 <dl>
688 <dt>Return:</dt>
689 <dd>
690 tuple containing a flag indicating success and an error message
691 </dd>
692 </dl>
693 <dl>
694 <dt>Return Type:</dt>
695 <dd>
696 tuple of (bool, str)
697 </dd>
698 </dl>
424 <a NAME="RP2040Device.runScript" ID="RP2040Device.runScript"></a> 699 <a NAME="RP2040Device.runScript" ID="RP2040Device.runScript"></a>
425 <h4>RP2040Device.runScript</h4> 700 <h4>RP2040Device.runScript</h4>
426 <b>runScript</b>(<i>script</i>) 701 <b>runScript</b>(<i>script</i>)
427 702
428 <p> 703 <p>
433 <dt><i>script</i> (str)</dt> 708 <dt><i>script</i> (str)</dt>
434 <dd> 709 <dd>
435 script to be executed 710 script to be executed
436 </dd> 711 </dd>
437 </dl> 712 </dl>
713 <a NAME="RP2040Device.scanNetworks" ID="RP2040Device.scanNetworks"></a>
714 <h4>RP2040Device.scanNetworks</h4>
715 <b>scanNetworks</b>(<i></i>)
716
717 <p>
718 Public method to scan for available WiFi networks.
719 </p>
720 <dl>
721 <dt>Return:</dt>
722 <dd>
723 tuple containing the list of available networks as a tuple of 'Name',
724 'MAC-Address', 'channel', 'RSSI' and 'security' and an error string
725 </dd>
726 </dl>
727 <dl>
728 <dt>Return Type:</dt>
729 <dd>
730 tuple of (list of tuple of (str, str, int, int, str), str)
731 </dd>
732 </dl>
438 <a NAME="RP2040Device.setButtons" ID="RP2040Device.setButtons"></a> 733 <a NAME="RP2040Device.setButtons" ID="RP2040Device.setButtons"></a>
439 <h4>RP2040Device.setButtons</h4> 734 <h4>RP2040Device.setButtons</h4>
440 <b>setButtons</b>(<i></i>) 735 <b>setButtons</b>(<i></i>)
441 736
442 <p> 737 <p>
443 Public method to enable the supported action buttons. 738 Public method to enable the supported action buttons.
444 </p> 739 </p>
740 <a NAME="RP2040Device.startAccessPoint" ID="RP2040Device.startAccessPoint"></a>
741 <h4>RP2040Device.startAccessPoint</h4>
742 <b>startAccessPoint</b>(<i>ssid, security=None, password=None, ifconfig=None</i>)
743
744 <p>
745 Public method to start the access point interface.
746 </p>
747 <dl>
748
749 <dt><i>ssid</i> (str)</dt>
750 <dd>
751 SSID of the access point
752 </dd>
753 <dt><i>security</i> (int (optional))</dt>
754 <dd>
755 security method (defaults to None)
756 </dd>
757 <dt><i>password</i> (str (optional))</dt>
758 <dd>
759 password (defaults to None)
760 </dd>
761 <dt><i>ifconfig</i> (tuple of (str, str, str, str))</dt>
762 <dd>
763 IPv4 configuration for the access point if not default
764 (IPv4 address, netmask, gateway address, DNS server address)
765 </dd>
766 </dl>
767 <dl>
768 <dt>Return:</dt>
769 <dd>
770 tuple containing a flag indicating success and an error message
771 </dd>
772 </dl>
773 <dl>
774 <dt>Return Type:</dt>
775 <dd>
776 tuple of (bool, str)
777 </dd>
778 </dl>
779 <a NAME="RP2040Device.stopAccessPoint" ID="RP2040Device.stopAccessPoint"></a>
780 <h4>RP2040Device.stopAccessPoint</h4>
781 <b>stopAccessPoint</b>(<i></i>)
782
783 <p>
784 Public method to stop the access point interface.
785 </p>
786 <dl>
787 <dt>Return:</dt>
788 <dd>
789 tuple containg a flag indicating success and an error message
790 </dd>
791 </dl>
792 <dl>
793 <dt>Return Type:</dt>
794 <dd>
795 tuple of (bool, str)
796 </dd>
797 </dl>
798 <a NAME="RP2040Device.writeCredentials" ID="RP2040Device.writeCredentials"></a>
799 <h4>RP2040Device.writeCredentials</h4>
800 <b>writeCredentials</b>(<i>ssid, password</i>)
801
802 <p>
803 Public method to write the given credentials to the connected device and modify
804 the start script to connect automatically.
805 </p>
806 <dl>
807
808 <dt><i>ssid</i> (str)</dt>
809 <dd>
810 SSID of the network to connect to
811 </dd>
812 <dt><i>password</i> (str)</dt>
813 <dd>
814 password needed to authenticate
815 </dd>
816 </dl>
817 <dl>
818 <dt>Return:</dt>
819 <dd>
820 tuple containing a flag indicating success and an error message
821 </dd>
822 </dl>
823 <dl>
824 <dt>Return Type:</dt>
825 <dd>
826 tuple of (bool, str)
827 </dd>
828 </dl>
445 <div align="right"><a href="#top">Up</a></div> 829 <div align="right"><a href="#top">Up</a></div>
446 <hr /> 830 <hr />
447 <hr /> 831 <hr />
448 <a NAME="createDevice" ID="createDevice"></a> 832 <a NAME="createDevice" ID="createDevice"></a>
449 <h2>createDevice</h2> 833 <h2>createDevice</h2>

eric ide

mercurial