Update TODO status, add CAD files and pictures, move USB port to COM18

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
mangavalkandClaude Opus 5.5 committed 2026-10-15 00:36:27 +02:00
1 parent 2b1ac12ed7
commit 4a5f6a8b5d
16 files changed
+655 -7

No files matched your search

+3
View File
@@ -23,3 +23,6 @@ desktop.ini
# Python # Python
__pycache__/ __pycache__/
# Test pictures
Pictures/bitmaps
+6
View File
@@ -1,5 +1,11 @@
{ {
// See http://go.microsoft.com/fwlink/?LinkId=827846
// for the documentation about the extensions.json format
"recommendations": [ "recommendations": [
"platformio.platformio-ide" "platformio.platformio-ide"
],
"unwantedRecommendations": [
"ms-vscode.cpptools-extension-pack",
"pioarduino.pioarduino-ide"
] ]
} }
Binary file not shown.
+639
View File
@@ -0,0 +1,639 @@
ISO-10303-21;
HEADER;
/* Generated by software containing ST-Developer
* from STEP Tools, Inc. (www.steptools.com)
*/
FILE_DESCRIPTION(
/* description */ (''),
/* implementation_level */ '2;1');
FILE_NAME(
/* name */ 'C:/Users/TheCore/Desktop/flipflop clock/acryl scherm.step',
/* time_stamp */ '2022-01-17T11:11:40+01:00',
/* author */ (''),
/* organization */ (''),
/* preprocessor_version */ 'ST-DEVELOPER v18.1',
/* originating_system */ 'Autodesk Translation Framework v10.10.0.1391',
/* authorisation */ '');
FILE_SCHEMA (('AUTOMOTIVE_DESIGN { 1 0 10303 214 3 1 1 }'));
ENDSEC;
DATA;
#10=MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#13),#537);
#11=SHAPE_REPRESENTATION_RELATIONSHIP('SRR','None',#543,#12);
#12=ADVANCED_BREP_SHAPE_REPRESENTATION('',(#14),#536);
#13=STYLED_ITEM('',(#552),#14);
#14=MANIFOLD_SOLID_BREP('screen',#329);
#15=FACE_BOUND('',#60,.T.);
#16=FACE_BOUND('',#61,.T.);
#17=FACE_BOUND('',#62,.T.);
#18=FACE_BOUND('',#65,.T.);
#19=FACE_BOUND('',#66,.T.);
#20=FACE_BOUND('',#67,.T.);
#21=FACE_BOUND('',#70,.T.);
#22=FACE_BOUND('',#71,.T.);
#23=FACE_BOUND('',#72,.T.);
#24=FACE_BOUND('',#75,.T.);
#25=FACE_BOUND('',#76,.T.);
#26=FACE_BOUND('',#77,.T.);
#27=PLANE('',#349);
#28=PLANE('',#350);
#29=PLANE('',#351);
#30=PLANE('',#352);
#31=PLANE('',#353);
#32=PLANE('',#354);
#33=PLANE('',#355);
#34=PLANE('',#356);
#35=PLANE('',#357);
#36=PLANE('',#358);
#37=FACE_OUTER_BOUND('',#53,.T.);
#38=FACE_OUTER_BOUND('',#54,.T.);
#39=FACE_OUTER_BOUND('',#55,.T.);
#40=FACE_OUTER_BOUND('',#56,.T.);
#41=FACE_OUTER_BOUND('',#57,.T.);
#42=FACE_OUTER_BOUND('',#58,.T.);
#43=FACE_OUTER_BOUND('',#59,.T.);
#44=FACE_OUTER_BOUND('',#63,.T.);
#45=FACE_OUTER_BOUND('',#64,.T.);
#46=FACE_OUTER_BOUND('',#68,.T.);
#47=FACE_OUTER_BOUND('',#69,.T.);
#48=FACE_OUTER_BOUND('',#73,.T.);
#49=FACE_OUTER_BOUND('',#74,.T.);
#50=FACE_OUTER_BOUND('',#78,.T.);
#51=FACE_OUTER_BOUND('',#79,.T.);
#52=FACE_OUTER_BOUND('',#80,.T.);
#53=EDGE_LOOP('',(#223,#224,#225,#226));
#54=EDGE_LOOP('',(#227,#228,#229,#230));
#55=EDGE_LOOP('',(#231,#232,#233,#234));
#56=EDGE_LOOP('',(#235,#236,#237,#238));
#57=EDGE_LOOP('',(#239,#240,#241,#242));
#58=EDGE_LOOP('',(#243,#244,#245,#246));
#59=EDGE_LOOP('',(#247,#248,#249,#250));
#60=EDGE_LOOP('',(#251));
#61=EDGE_LOOP('',(#252));
#62=EDGE_LOOP('',(#253));
#63=EDGE_LOOP('',(#254,#255,#256,#257));
#64=EDGE_LOOP('',(#258,#259,#260,#261));
#65=EDGE_LOOP('',(#262));
#66=EDGE_LOOP('',(#263));
#67=EDGE_LOOP('',(#264));
#68=EDGE_LOOP('',(#265,#266,#267,#268));
#69=EDGE_LOOP('',(#269,#270,#271,#272));
#70=EDGE_LOOP('',(#273));
#71=EDGE_LOOP('',(#274));
#72=EDGE_LOOP('',(#275));
#73=EDGE_LOOP('',(#276,#277,#278,#279));
#74=EDGE_LOOP('',(#280,#281,#282,#283));
#75=EDGE_LOOP('',(#284));
#76=EDGE_LOOP('',(#285));
#77=EDGE_LOOP('',(#286));
#78=EDGE_LOOP('',(#287,#288,#289,#290));
#79=EDGE_LOOP('',(#291,#292,#293,#294,#295,#296,#297,#298));
#80=EDGE_LOOP('',(#299,#300,#301,#302,#303,#304,#305,#306));
#81=LINE('',#452,#111);
#82=LINE('',#458,#112);
#83=LINE('',#464,#113);
#84=LINE('',#470,#114);
#85=LINE('',#476,#115);
#86=LINE('',#482,#116);
#87=LINE('',#487,#117);
#88=LINE('',#489,#118);
#89=LINE('',#491,#119);
#90=LINE('',#492,#120);
#91=LINE('',#495,#121);
#92=LINE('',#497,#122);
#93=LINE('',#498,#123);
#94=LINE('',#501,#124);
#95=LINE('',#503,#125);
#96=LINE('',#504,#126);
#97=LINE('',#507,#127);
#98=LINE('',#509,#128);
#99=LINE('',#510,#129);
#100=LINE('',#513,#130);
#101=LINE('',#515,#131);
#102=LINE('',#516,#132);
#103=LINE('',#519,#133);
#104=LINE('',#521,#134);
#105=LINE('',#522,#135);
#106=LINE('',#525,#136);
#107=LINE('',#527,#137);
#108=LINE('',#528,#138);
#109=LINE('',#530,#139);
#110=LINE('',#531,#140);
#111=VECTOR('',#365,2.00000000000003);
#112=VECTOR('',#372,2.00000000000003);
#113=VECTOR('',#379,1.99999999999999);
#114=VECTOR('',#386,1.99999999999999);
#115=VECTOR('',#393,1.99999999999999);
#116=VECTOR('',#400,1.99999999999999);
#117=VECTOR('',#405,10.);
#118=VECTOR('',#406,10.);
#119=VECTOR('',#407,10.);
#120=VECTOR('',#408,10.);
#121=VECTOR('',#411,10.);
#122=VECTOR('',#412,10.);
#123=VECTOR('',#413,10.);
#124=VECTOR('',#416,10.);
#125=VECTOR('',#417,10.);
#126=VECTOR('',#418,10.);
#127=VECTOR('',#421,10.);
#128=VECTOR('',#422,10.);
#129=VECTOR('',#423,10.);
#130=VECTOR('',#426,10.);
#131=VECTOR('',#427,10.);
#132=VECTOR('',#428,10.);
#133=VECTOR('',#431,10.);
#134=VECTOR('',#432,10.);
#135=VECTOR('',#433,10.);
#136=VECTOR('',#436,10.);
#137=VECTOR('',#437,10.);
#138=VECTOR('',#438,10.);
#139=VECTOR('',#441,10.);
#140=VECTOR('',#442,10.);
#141=CIRCLE('',#332,2.00000000000003);
#142=CIRCLE('',#333,2.00000000000003);
#143=CIRCLE('',#335,2.00000000000003);
#144=CIRCLE('',#336,2.00000000000003);
#145=CIRCLE('',#338,1.99999999999999);
#146=CIRCLE('',#339,1.99999999999999);
#147=CIRCLE('',#341,1.99999999999999);
#148=CIRCLE('',#342,1.99999999999999);
#149=CIRCLE('',#344,1.99999999999999);
#150=CIRCLE('',#345,1.99999999999999);
#151=CIRCLE('',#347,1.99999999999999);
#152=CIRCLE('',#348,1.99999999999999);
#153=VERTEX_POINT('',#449);
#154=VERTEX_POINT('',#451);
#155=VERTEX_POINT('',#455);
#156=VERTEX_POINT('',#457);
#157=VERTEX_POINT('',#461);
#158=VERTEX_POINT('',#463);
#159=VERTEX_POINT('',#467);
#160=VERTEX_POINT('',#469);
#161=VERTEX_POINT('',#473);
#162=VERTEX_POINT('',#475);
#163=VERTEX_POINT('',#479);
#164=VERTEX_POINT('',#481);
#165=VERTEX_POINT('',#485);
#166=VERTEX_POINT('',#486);
#167=VERTEX_POINT('',#488);
#168=VERTEX_POINT('',#490);
#169=VERTEX_POINT('',#494);
#170=VERTEX_POINT('',#496);
#171=VERTEX_POINT('',#500);
#172=VERTEX_POINT('',#502);
#173=VERTEX_POINT('',#506);
#174=VERTEX_POINT('',#508);
#175=VERTEX_POINT('',#512);
#176=VERTEX_POINT('',#514);
#177=VERTEX_POINT('',#518);
#178=VERTEX_POINT('',#520);
#179=VERTEX_POINT('',#524);
#180=VERTEX_POINT('',#526);
#181=EDGE_CURVE('',#153,#153,#141,.T.);
#182=EDGE_CURVE('',#153,#154,#81,.T.);
#183=EDGE_CURVE('',#154,#154,#142,.T.);
#184=EDGE_CURVE('',#155,#155,#143,.T.);
#185=EDGE_CURVE('',#155,#156,#82,.T.);
#186=EDGE_CURVE('',#156,#156,#144,.T.);
#187=EDGE_CURVE('',#157,#157,#145,.T.);
#188=EDGE_CURVE('',#157,#158,#83,.T.);
#189=EDGE_CURVE('',#158,#158,#146,.T.);
#190=EDGE_CURVE('',#159,#159,#147,.T.);
#191=EDGE_CURVE('',#159,#160,#84,.T.);
#192=EDGE_CURVE('',#160,#160,#148,.T.);
#193=EDGE_CURVE('',#161,#161,#149,.T.);
#194=EDGE_CURVE('',#161,#162,#85,.T.);
#195=EDGE_CURVE('',#162,#162,#150,.T.);
#196=EDGE_CURVE('',#163,#163,#151,.T.);
#197=EDGE_CURVE('',#163,#164,#86,.T.);
#198=EDGE_CURVE('',#164,#164,#152,.T.);
#199=EDGE_CURVE('',#165,#166,#87,.T.);
#200=EDGE_CURVE('',#167,#166,#88,.T.);
#201=EDGE_CURVE('',#167,#168,#89,.T.);
#202=EDGE_CURVE('',#168,#165,#90,.T.);
#203=EDGE_CURVE('',#166,#169,#91,.T.);
#204=EDGE_CURVE('',#170,#169,#92,.T.);
#205=EDGE_CURVE('',#170,#167,#93,.T.);
#206=EDGE_CURVE('',#169,#171,#94,.T.);
#207=EDGE_CURVE('',#172,#171,#95,.T.);
#208=EDGE_CURVE('',#172,#170,#96,.T.);
#209=EDGE_CURVE('',#171,#173,#97,.T.);
#210=EDGE_CURVE('',#174,#173,#98,.T.);
#211=EDGE_CURVE('',#172,#174,#99,.T.);
#212=EDGE_CURVE('',#173,#175,#100,.T.);
#213=EDGE_CURVE('',#176,#175,#101,.T.);
#214=EDGE_CURVE('',#174,#176,#102,.T.);
#215=EDGE_CURVE('',#175,#177,#103,.T.);
#216=EDGE_CURVE('',#178,#177,#104,.T.);
#217=EDGE_CURVE('',#176,#178,#105,.T.);
#218=EDGE_CURVE('',#177,#179,#106,.T.);
#219=EDGE_CURVE('',#180,#179,#107,.T.);
#220=EDGE_CURVE('',#178,#180,#108,.T.);
#221=EDGE_CURVE('',#179,#165,#109,.T.);
#222=EDGE_CURVE('',#168,#180,#110,.T.);
#223=ORIENTED_EDGE('',*,*,#181,.F.);
#224=ORIENTED_EDGE('',*,*,#182,.T.);
#225=ORIENTED_EDGE('',*,*,#183,.F.);
#226=ORIENTED_EDGE('',*,*,#182,.F.);
#227=ORIENTED_EDGE('',*,*,#184,.F.);
#228=ORIENTED_EDGE('',*,*,#185,.T.);
#229=ORIENTED_EDGE('',*,*,#186,.F.);
#230=ORIENTED_EDGE('',*,*,#185,.F.);
#231=ORIENTED_EDGE('',*,*,#187,.F.);
#232=ORIENTED_EDGE('',*,*,#188,.T.);
#233=ORIENTED_EDGE('',*,*,#189,.F.);
#234=ORIENTED_EDGE('',*,*,#188,.F.);
#235=ORIENTED_EDGE('',*,*,#190,.F.);
#236=ORIENTED_EDGE('',*,*,#191,.T.);
#237=ORIENTED_EDGE('',*,*,#192,.F.);
#238=ORIENTED_EDGE('',*,*,#191,.F.);
#239=ORIENTED_EDGE('',*,*,#193,.F.);
#240=ORIENTED_EDGE('',*,*,#194,.T.);
#241=ORIENTED_EDGE('',*,*,#195,.F.);
#242=ORIENTED_EDGE('',*,*,#194,.F.);
#243=ORIENTED_EDGE('',*,*,#196,.F.);
#244=ORIENTED_EDGE('',*,*,#197,.T.);
#245=ORIENTED_EDGE('',*,*,#198,.F.);
#246=ORIENTED_EDGE('',*,*,#197,.F.);
#247=ORIENTED_EDGE('',*,*,#199,.T.);
#248=ORIENTED_EDGE('',*,*,#200,.F.);
#249=ORIENTED_EDGE('',*,*,#201,.T.);
#250=ORIENTED_EDGE('',*,*,#202,.T.);
#251=ORIENTED_EDGE('',*,*,#183,.T.);
#252=ORIENTED_EDGE('',*,*,#189,.T.);
#253=ORIENTED_EDGE('',*,*,#195,.T.);
#254=ORIENTED_EDGE('',*,*,#203,.T.);
#255=ORIENTED_EDGE('',*,*,#204,.F.);
#256=ORIENTED_EDGE('',*,*,#205,.T.);
#257=ORIENTED_EDGE('',*,*,#200,.T.);
#258=ORIENTED_EDGE('',*,*,#206,.T.);
#259=ORIENTED_EDGE('',*,*,#207,.F.);
#260=ORIENTED_EDGE('',*,*,#208,.T.);
#261=ORIENTED_EDGE('',*,*,#204,.T.);
#262=ORIENTED_EDGE('',*,*,#184,.T.);
#263=ORIENTED_EDGE('',*,*,#190,.T.);
#264=ORIENTED_EDGE('',*,*,#196,.T.);
#265=ORIENTED_EDGE('',*,*,#209,.T.);
#266=ORIENTED_EDGE('',*,*,#210,.F.);
#267=ORIENTED_EDGE('',*,*,#211,.F.);
#268=ORIENTED_EDGE('',*,*,#207,.T.);
#269=ORIENTED_EDGE('',*,*,#212,.T.);
#270=ORIENTED_EDGE('',*,*,#213,.F.);
#271=ORIENTED_EDGE('',*,*,#214,.F.);
#272=ORIENTED_EDGE('',*,*,#210,.T.);
#273=ORIENTED_EDGE('',*,*,#186,.T.);
#274=ORIENTED_EDGE('',*,*,#192,.T.);
#275=ORIENTED_EDGE('',*,*,#198,.T.);
#276=ORIENTED_EDGE('',*,*,#215,.T.);
#277=ORIENTED_EDGE('',*,*,#216,.F.);
#278=ORIENTED_EDGE('',*,*,#217,.F.);
#279=ORIENTED_EDGE('',*,*,#213,.T.);
#280=ORIENTED_EDGE('',*,*,#218,.T.);
#281=ORIENTED_EDGE('',*,*,#219,.F.);
#282=ORIENTED_EDGE('',*,*,#220,.F.);
#283=ORIENTED_EDGE('',*,*,#216,.T.);
#284=ORIENTED_EDGE('',*,*,#181,.T.);
#285=ORIENTED_EDGE('',*,*,#187,.T.);
#286=ORIENTED_EDGE('',*,*,#193,.T.);
#287=ORIENTED_EDGE('',*,*,#221,.T.);
#288=ORIENTED_EDGE('',*,*,#202,.F.);
#289=ORIENTED_EDGE('',*,*,#222,.T.);
#290=ORIENTED_EDGE('',*,*,#219,.T.);
#291=ORIENTED_EDGE('',*,*,#211,.T.);
#292=ORIENTED_EDGE('',*,*,#214,.T.);
#293=ORIENTED_EDGE('',*,*,#217,.T.);
#294=ORIENTED_EDGE('',*,*,#220,.T.);
#295=ORIENTED_EDGE('',*,*,#222,.F.);
#296=ORIENTED_EDGE('',*,*,#201,.F.);
#297=ORIENTED_EDGE('',*,*,#205,.F.);
#298=ORIENTED_EDGE('',*,*,#208,.F.);
#299=ORIENTED_EDGE('',*,*,#212,.F.);
#300=ORIENTED_EDGE('',*,*,#209,.F.);
#301=ORIENTED_EDGE('',*,*,#206,.F.);
#302=ORIENTED_EDGE('',*,*,#203,.F.);
#303=ORIENTED_EDGE('',*,*,#199,.F.);
#304=ORIENTED_EDGE('',*,*,#221,.F.);
#305=ORIENTED_EDGE('',*,*,#218,.F.);
#306=ORIENTED_EDGE('',*,*,#215,.F.);
#307=CYLINDRICAL_SURFACE('',#331,2.00000000000003);
#308=CYLINDRICAL_SURFACE('',#334,2.00000000000003);
#309=CYLINDRICAL_SURFACE('',#337,1.99999999999999);
#310=CYLINDRICAL_SURFACE('',#340,1.99999999999999);
#311=CYLINDRICAL_SURFACE('',#343,1.99999999999999);
#312=CYLINDRICAL_SURFACE('',#346,1.99999999999999);
#313=ADVANCED_FACE('',(#37),#307,.F.);
#314=ADVANCED_FACE('',(#38),#308,.F.);
#315=ADVANCED_FACE('',(#39),#309,.F.);
#316=ADVANCED_FACE('',(#40),#310,.F.);
#317=ADVANCED_FACE('',(#41),#311,.F.);
#318=ADVANCED_FACE('',(#42),#312,.F.);
#319=ADVANCED_FACE('',(#43,#15,#16,#17),#27,.T.);
#320=ADVANCED_FACE('',(#44),#28,.T.);
#321=ADVANCED_FACE('',(#45,#18,#19,#20),#29,.T.);
#322=ADVANCED_FACE('',(#46),#30,.T.);
#323=ADVANCED_FACE('',(#47,#21,#22,#23),#31,.T.);
#324=ADVANCED_FACE('',(#48),#32,.T.);
#325=ADVANCED_FACE('',(#49,#24,#25,#26),#33,.T.);
#326=ADVANCED_FACE('',(#50),#34,.T.);
#327=ADVANCED_FACE('',(#51),#35,.T.);
#328=ADVANCED_FACE('',(#52),#36,.T.);
#329=CLOSED_SHELL('',(#313,#314,#315,#316,#317,#318,#319,#320,#321,#322,
#323,#324,#325,#326,#327,#328));
#330=AXIS2_PLACEMENT_3D('placement',#447,#359,#360);
#331=AXIS2_PLACEMENT_3D('',#448,#361,#362);
#332=AXIS2_PLACEMENT_3D('',#450,#363,#364);
#333=AXIS2_PLACEMENT_3D('',#453,#366,#367);
#334=AXIS2_PLACEMENT_3D('',#454,#368,#369);
#335=AXIS2_PLACEMENT_3D('',#456,#370,#371);
#336=AXIS2_PLACEMENT_3D('',#459,#373,#374);
#337=AXIS2_PLACEMENT_3D('',#460,#375,#376);
#338=AXIS2_PLACEMENT_3D('',#462,#377,#378);
#339=AXIS2_PLACEMENT_3D('',#465,#380,#381);
#340=AXIS2_PLACEMENT_3D('',#466,#382,#383);
#341=AXIS2_PLACEMENT_3D('',#468,#384,#385);
#342=AXIS2_PLACEMENT_3D('',#471,#387,#388);
#343=AXIS2_PLACEMENT_3D('',#472,#389,#390);
#344=AXIS2_PLACEMENT_3D('',#474,#391,#392);
#345=AXIS2_PLACEMENT_3D('',#477,#394,#395);
#346=AXIS2_PLACEMENT_3D('',#478,#396,#397);
#347=AXIS2_PLACEMENT_3D('',#480,#398,#399);
#348=AXIS2_PLACEMENT_3D('',#483,#401,#402);
#349=AXIS2_PLACEMENT_3D('',#484,#403,#404);
#350=AXIS2_PLACEMENT_3D('',#493,#409,#410);
#351=AXIS2_PLACEMENT_3D('',#499,#414,#415);
#352=AXIS2_PLACEMENT_3D('',#505,#419,#420);
#353=AXIS2_PLACEMENT_3D('',#511,#424,#425);
#354=AXIS2_PLACEMENT_3D('',#517,#429,#430);
#355=AXIS2_PLACEMENT_3D('',#523,#434,#435);
#356=AXIS2_PLACEMENT_3D('',#529,#439,#440);
#357=AXIS2_PLACEMENT_3D('',#532,#443,#444);
#358=AXIS2_PLACEMENT_3D('',#533,#445,#446);
#359=DIRECTION('axis',(0.,0.,1.));
#360=DIRECTION('refdir',(1.,0.,0.));
#361=DIRECTION('center_axis',(0.,-1.,0.));
#362=DIRECTION('ref_axis',(-1.,0.,0.));
#363=DIRECTION('center_axis',(0.,-1.,0.));
#364=DIRECTION('ref_axis',(-1.,0.,0.));
#365=DIRECTION('',(0.,-1.,0.));
#366=DIRECTION('center_axis',(0.,1.,-2.52323414687536E-17));
#367=DIRECTION('ref_axis',(-1.,0.,0.));
#368=DIRECTION('center_axis',(0.,-1.,0.));
#369=DIRECTION('ref_axis',(-1.,0.,0.));
#370=DIRECTION('center_axis',(0.,-1.,0.));
#371=DIRECTION('ref_axis',(-1.,0.,0.));
#372=DIRECTION('',(0.,-1.,0.));
#373=DIRECTION('center_axis',(0.,1.,0.));
#374=DIRECTION('ref_axis',(-1.,0.,0.));
#375=DIRECTION('center_axis',(0.,-1.,0.));
#376=DIRECTION('ref_axis',(-1.,0.,0.));
#377=DIRECTION('center_axis',(0.,-1.,0.));
#378=DIRECTION('ref_axis',(-1.,0.,0.));
#379=DIRECTION('',(0.,-1.,0.));
#380=DIRECTION('center_axis',(0.,1.,-2.52323414687536E-17));
#381=DIRECTION('ref_axis',(-1.,0.,0.));
#382=DIRECTION('center_axis',(0.,-1.,0.));
#383=DIRECTION('ref_axis',(-1.,0.,0.));
#384=DIRECTION('center_axis',(0.,-1.,0.));
#385=DIRECTION('ref_axis',(-1.,0.,0.));
#386=DIRECTION('',(0.,-1.,0.));
#387=DIRECTION('center_axis',(0.,1.,0.));
#388=DIRECTION('ref_axis',(-1.,0.,0.));
#389=DIRECTION('center_axis',(0.,-1.,0.));
#390=DIRECTION('ref_axis',(-1.,0.,0.));
#391=DIRECTION('center_axis',(0.,-1.,0.));
#392=DIRECTION('ref_axis',(-1.,0.,0.));
#393=DIRECTION('',(0.,-1.,0.));
#394=DIRECTION('center_axis',(0.,1.,-2.52323414687536E-17));
#395=DIRECTION('ref_axis',(-1.,0.,0.));
#396=DIRECTION('center_axis',(0.,-1.,0.));
#397=DIRECTION('ref_axis',(-1.,0.,0.));
#398=DIRECTION('center_axis',(0.,-1.,0.));
#399=DIRECTION('ref_axis',(-1.,0.,0.));
#400=DIRECTION('',(0.,-1.,0.));
#401=DIRECTION('center_axis',(0.,1.,0.));
#402=DIRECTION('ref_axis',(-1.,0.,0.));
#403=DIRECTION('center_axis',(0.,-1.,2.52323414687536E-17));
#404=DIRECTION('ref_axis',(0.,-2.52323414687536E-17,-1.));
#405=DIRECTION('',(0.,2.52323414687536E-17,1.));
#406=DIRECTION('',(1.,0.,0.));
#407=DIRECTION('',(0.,-2.52323414687536E-17,-1.));
#408=DIRECTION('',(1.,0.,0.));
#409=DIRECTION('center_axis',(0.,-3.52451753849257E-17,1.));
#410=DIRECTION('ref_axis',(0.,-1.,-3.52451753849257E-17));
#411=DIRECTION('',(0.,1.,3.52451753849257E-17));
#412=DIRECTION('',(1.,0.,0.));
#413=DIRECTION('',(0.,-1.,-3.52451753849257E-17));
#414=DIRECTION('center_axis',(0.,1.,0.));
#415=DIRECTION('ref_axis',(0.,0.,1.));
#416=DIRECTION('',(0.,0.,-1.));
#417=DIRECTION('',(1.,0.,0.));
#418=DIRECTION('',(0.,0.,1.));
#419=DIRECTION('center_axis',(0.,0.,-1.));
#420=DIRECTION('ref_axis',(0.,1.,0.));
#421=DIRECTION('',(0.,-1.,0.));
#422=DIRECTION('',(1.,0.,0.));
#423=DIRECTION('',(0.,-1.,0.));
#424=DIRECTION('center_axis',(0.,-1.,0.));
#425=DIRECTION('ref_axis',(0.,0.,-1.));
#426=DIRECTION('',(0.,0.,1.));
#427=DIRECTION('',(1.,0.,0.));
#428=DIRECTION('',(0.,0.,1.));
#429=DIRECTION('center_axis',(0.,0.,-1.));
#430=DIRECTION('ref_axis',(0.,1.,0.));
#431=DIRECTION('',(0.,-1.,0.));
#432=DIRECTION('',(1.,0.,0.));
#433=DIRECTION('',(0.,-1.,0.));
#434=DIRECTION('center_axis',(0.,1.,0.));
#435=DIRECTION('ref_axis',(0.,0.,1.));
#436=DIRECTION('',(0.,0.,-1.));
#437=DIRECTION('',(1.,0.,0.));
#438=DIRECTION('',(0.,0.,-1.));
#439=DIRECTION('center_axis',(0.,2.96059473233375E-15,-1.));
#440=DIRECTION('ref_axis',(0.,1.,2.96059473233375E-15));
#441=DIRECTION('',(0.,-1.,-2.96059473233375E-15));
#442=DIRECTION('',(0.,1.,2.96059473233375E-15));
#443=DIRECTION('center_axis',(-1.,0.,0.));
#444=DIRECTION('ref_axis',(0.,0.,1.));
#445=DIRECTION('center_axis',(1.,0.,0.));
#446=DIRECTION('ref_axis',(0.,0.,-1.));
#447=CARTESIAN_POINT('',(0.,0.,0.));
#448=CARTESIAN_POINT('Origin',(518.,244.,-34.9999999999999));
#449=CARTESIAN_POINT('',(520.,-5.,-34.9999999999999));
#450=CARTESIAN_POINT('Origin',(518.,-5.,-34.9999999999999));
#451=CARTESIAN_POINT('',(520.,-8.00000000000001,-34.9999999999999));
#452=CARTESIAN_POINT('',(520.,244.,-34.9999999999999));
#453=CARTESIAN_POINT('Origin',(518.,-8.00000000000001,-34.9999999999999));
#454=CARTESIAN_POINT('Origin',(518.,244.,-34.9999999999999));
#455=CARTESIAN_POINT('',(520.,244.,-34.9999999999999));
#456=CARTESIAN_POINT('Origin',(518.,244.,-34.9999999999999));
#457=CARTESIAN_POINT('',(520.,241.,-34.9999999999999));
#458=CARTESIAN_POINT('',(520.,244.,-34.9999999999999));
#459=CARTESIAN_POINT('Origin',(518.,241.,-34.9999999999999));
#460=CARTESIAN_POINT('Origin',(141.5,244.,-34.9999999999999));
#461=CARTESIAN_POINT('',(143.5,-5.,-34.9999999999999));
#462=CARTESIAN_POINT('Origin',(141.5,-5.,-34.9999999999999));
#463=CARTESIAN_POINT('',(143.5,-8.00000000000001,-34.9999999999999));
#464=CARTESIAN_POINT('',(143.5,244.,-34.9999999999999));
#465=CARTESIAN_POINT('Origin',(141.5,-8.00000000000001,-34.9999999999999));
#466=CARTESIAN_POINT('Origin',(141.5,244.,-34.9999999999999));
#467=CARTESIAN_POINT('',(143.5,244.,-34.9999999999999));
#468=CARTESIAN_POINT('Origin',(141.5,244.,-34.9999999999999));
#469=CARTESIAN_POINT('',(143.5,241.,-34.9999999999999));
#470=CARTESIAN_POINT('',(143.5,244.,-34.9999999999999));
#471=CARTESIAN_POINT('Origin',(141.5,241.,-34.9999999999999));
#472=CARTESIAN_POINT('Origin',(-235.,244.,-34.9999999999999));
#473=CARTESIAN_POINT('',(-233.,-5.,-34.9999999999999));
#474=CARTESIAN_POINT('Origin',(-235.,-5.,-34.9999999999999));
#475=CARTESIAN_POINT('',(-233.,-8.00000000000001,-34.9999999999999));
#476=CARTESIAN_POINT('',(-233.,244.,-34.9999999999999));
#477=CARTESIAN_POINT('Origin',(-235.,-8.00000000000001,-34.9999999999999));
#478=CARTESIAN_POINT('Origin',(-235.,244.,-34.9999999999999));
#479=CARTESIAN_POINT('',(-233.,244.,-34.9999999999999));
#480=CARTESIAN_POINT('Origin',(-235.,244.,-34.9999999999999));
#481=CARTESIAN_POINT('',(-233.,241.,-34.9999999999999));
#482=CARTESIAN_POINT('',(-233.,244.,-34.9999999999999));
#483=CARTESIAN_POINT('Origin',(-235.,241.,-34.9999999999999));
#484=CARTESIAN_POINT('Origin',(-285.,-8.00000000000001,43.0000000000001));
#485=CARTESIAN_POINT('',(568.,-8.00000000000001,-44.9999999999999));
#486=CARTESIAN_POINT('',(568.,-8.00000000000001,43.0000000000001));
#487=CARTESIAN_POINT('',(568.,-8.00000000000001,21.0000000000001));
#488=CARTESIAN_POINT('',(-285.,-8.00000000000001,43.0000000000001));
#489=CARTESIAN_POINT('',(-285.,-8.00000000000001,43.0000000000001));
#490=CARTESIAN_POINT('',(-285.,-8.00000000000001,-44.9999999999999));
#491=CARTESIAN_POINT('',(-285.,-8.00000000000001,43.0000000000001));
#492=CARTESIAN_POINT('',(-285.,-8.00000000000001,-44.9999999999999));
#493=CARTESIAN_POINT('Origin',(-285.,244.,43.0000000000001));
#494=CARTESIAN_POINT('',(568.,244.,43.0000000000001));
#495=CARTESIAN_POINT('',(568.,181.,43.0000000000001));
#496=CARTESIAN_POINT('',(-285.,244.,43.0000000000001));
#497=CARTESIAN_POINT('',(-285.,244.,43.0000000000001));
#498=CARTESIAN_POINT('',(-285.,244.,43.0000000000001));
#499=CARTESIAN_POINT('Origin',(-285.,244.,-44.9999999999999));
#500=CARTESIAN_POINT('',(568.,244.,-44.9999999999999));
#501=CARTESIAN_POINT('',(568.,244.,-22.9999999999999));
#502=CARTESIAN_POINT('',(-285.,244.,-44.9999999999999));
#503=CARTESIAN_POINT('',(-285.,244.,-44.9999999999999));
#504=CARTESIAN_POINT('',(-285.,244.,-44.9999999999999));
#505=CARTESIAN_POINT('Origin',(-285.,241.,-44.9999999999999));
#506=CARTESIAN_POINT('',(568.,241.,-44.9999999999999));
#507=CARTESIAN_POINT('',(568.,179.5,-44.9999999999999));
#508=CARTESIAN_POINT('',(-285.,241.,-44.9999999999999));
#509=CARTESIAN_POINT('',(-285.,241.,-44.9999999999999));
#510=CARTESIAN_POINT('',(-285.,244.,-44.9999999999999));
#511=CARTESIAN_POINT('Origin',(-285.,241.,40.0000000000001));
#512=CARTESIAN_POINT('',(568.,241.,40.0000000000001));
#513=CARTESIAN_POINT('',(568.,241.,19.5000000000001));
#514=CARTESIAN_POINT('',(-285.,241.,40.0000000000001));
#515=CARTESIAN_POINT('',(-285.,241.,40.0000000000001));
#516=CARTESIAN_POINT('',(-285.,241.,-44.9999999999999));
#517=CARTESIAN_POINT('Origin',(-285.,-5.,40.0000000000001));
#518=CARTESIAN_POINT('',(568.,-5.00000000000001,40.0000000000001));
#519=CARTESIAN_POINT('',(568.,56.4999999999999,40.0000000000001));
#520=CARTESIAN_POINT('',(-285.,-5.00000000000001,40.0000000000001));
#521=CARTESIAN_POINT('',(-285.,-5.00000000000001,40.0000000000001));
#522=CARTESIAN_POINT('',(-285.,241.,40.0000000000001));
#523=CARTESIAN_POINT('Origin',(-285.,-5.00000000000001,-44.9999999999999));
#524=CARTESIAN_POINT('',(568.,-5.00000000000001,-44.9999999999999));
#525=CARTESIAN_POINT('',(568.,-5.,-22.9999999999999));
#526=CARTESIAN_POINT('',(-285.,-5.00000000000001,-44.9999999999999));
#527=CARTESIAN_POINT('',(-285.,-5.00000000000001,-44.9999999999999));
#528=CARTESIAN_POINT('',(-285.,-5.00000000000001,40.0000000000001));
#529=CARTESIAN_POINT('Origin',(-285.,-8.00000000000001,-44.9999999999999));
#530=CARTESIAN_POINT('',(568.,55.,-44.9999999999998));
#531=CARTESIAN_POINT('',(-285.,-8.00000000000001,-44.9999999999999));
#532=CARTESIAN_POINT('Origin',(-285.,118.,-0.999999999999934));
#533=CARTESIAN_POINT('Origin',(568.,118.,-0.99999999999993));
#534=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(0.01),#538,
'DISTANCE_ACCURACY_VALUE',
'Maximum model space distance between geometric entities at asserted c
onnectivities');
#535=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(0.01),#538,
'DISTANCE_ACCURACY_VALUE',
'Maximum model space distance between geometric entities at asserted c
onnectivities');
#536=(
GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#534))
GLOBAL_UNIT_ASSIGNED_CONTEXT((#538,#539,#540))
REPRESENTATION_CONTEXT('','3D')
);
#537=(
GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#535))
GLOBAL_UNIT_ASSIGNED_CONTEXT((#538,#539,#540))
REPRESENTATION_CONTEXT('','3D')
);
#538=(
LENGTH_UNIT()
NAMED_UNIT(*)
SI_UNIT(.MILLI.,.METRE.)
);
#539=(
NAMED_UNIT(*)
PLANE_ANGLE_UNIT()
SI_UNIT($,.RADIAN.)
);
#540=(
NAMED_UNIT(*)
SI_UNIT($,.STERADIAN.)
SOLID_ANGLE_UNIT()
);
#541=SHAPE_DEFINITION_REPRESENTATION(#542,#543);
#542=PRODUCT_DEFINITION_SHAPE('',$,#545);
#543=SHAPE_REPRESENTATION('',(#330),#536);
#544=PRODUCT_DEFINITION_CONTEXT('part definition',#549,'design');
#545=PRODUCT_DEFINITION('Assembly','Assembly v18',#546,#544);
#546=PRODUCT_DEFINITION_FORMATION('',$,#551);
#547=PRODUCT_RELATED_PRODUCT_CATEGORY('Assembly v18','Assembly v18',(#551));
#548=APPLICATION_PROTOCOL_DEFINITION('international standard',
'automotive_design',2009,#549);
#549=APPLICATION_CONTEXT(
'Core Data for Automotive Mechanical Design Process');
#550=PRODUCT_CONTEXT('part definition',#549,'mechanical');
#551=PRODUCT('Assembly','Assembly v18',$,(#550));
#552=PRESENTATION_STYLE_ASSIGNMENT((#557));
#553=PRESENTATION_STYLE_ASSIGNMENT((#558));
#554=PRESENTATION_STYLE_ASSIGNMENT((#559));
#555=PRESENTATION_STYLE_ASSIGNMENT((#560));
#556=PRESENTATION_STYLE_ASSIGNMENT((#561));
#557=SURFACE_STYLE_USAGE(.BOTH.,#562);
#558=SURFACE_STYLE_USAGE(.BOTH.,#563);
#559=SURFACE_STYLE_USAGE(.BOTH.,#564);
#560=SURFACE_STYLE_USAGE(.BOTH.,#565);
#561=SURFACE_STYLE_USAGE(.BOTH.,#566);
#562=SURFACE_SIDE_STYLE('',(#567));
#563=SURFACE_SIDE_STYLE('',(#568));
#564=SURFACE_SIDE_STYLE('',(#569));
#565=SURFACE_SIDE_STYLE('',(#570));
#566=SURFACE_SIDE_STYLE('',(#571));
#567=SURFACE_STYLE_FILL_AREA(#572);
#568=SURFACE_STYLE_FILL_AREA(#573);
#569=SURFACE_STYLE_FILL_AREA(#574);
#570=SURFACE_STYLE_FILL_AREA(#575);
#571=SURFACE_STYLE_FILL_AREA(#576);
#572=FILL_AREA_STYLE('Steel - Satin',(#577));
#573=FILL_AREA_STYLE('Paint - Metallic (Silver)',(#578));
#574=FILL_AREA_STYLE('Paint - Metallic (Red)',(#579));
#575=FILL_AREA_STYLE('Paint - Metallic (Dark Grey)',(#580));
#576=FILL_AREA_STYLE('Paint - Metallic (Black)',(#581));
#577=FILL_AREA_STYLE_COLOUR('Steel - Satin',#582);
#578=FILL_AREA_STYLE_COLOUR('Paint - Metallic (Silver)',#583);
#579=FILL_AREA_STYLE_COLOUR('Paint - Metallic (Red)',#584);
#580=FILL_AREA_STYLE_COLOUR('Paint - Metallic (Dark Grey)',#585);
#581=FILL_AREA_STYLE_COLOUR('Paint - Metallic (Black)',#586);
#582=COLOUR_RGB('Steel - Satin',0.627450980392157,0.627450980392157,0.627450980392157);
#583=COLOUR_RGB('Paint - Metallic (Silver)',0.984313725490196,0.980392156862745,
0.96078431372549);
#584=COLOUR_RGB('Paint - Metallic (Red)',0.768627450980392,0.207843137254902,
0.152941176470588);
#585=COLOUR_RGB('Paint - Metallic (Dark Grey)',0.349019607843137,0.349019607843137,
0.349019607843137);
#586=COLOUR_RGB('Paint - Metallic (Black)',0.0980392156862745,0.0980392156862745,
0.0980392156862745);
ENDSEC;
END-ISO-10303-21;
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 977 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

+4 -4
View File
@@ -305,23 +305,23 @@ The serial protocol is described in [src/nano/README.md](src/nano/README.md).
## TODO ## TODO
- [ ] **Install the recovery app** (one-time USB flash, see - [X] **Install the recovery app** (one-time USB flash, see
[One-time installation](#one-time-installation-usb)). Until then the ESP32 runs the old [One-time installation](#one-time-installation-usb)). Until then the ESP32 runs the old
flash layout: the clock firmware works, but without the recovery app; the Home flash layout: the clock firmware works, but without the recovery app; the Home
Assistant sensor shows "no recovery app". Assistant sensor shows "no recovery app".
- [ ] **Test the web UI on the real hardware**: live view, uploading and drawing a bitmap, - [X] **Test the web UI on the real hardware**: live view, uploading and drawing a bitmap,
live mode, choosing a page, settings, Home Assistant settings (restart). live mode, choosing a page, settings, Home Assistant settings (restart).
- [ ] **Test the recovery app on the real hardware**: the Home Assistant button, the setup - [ ] **Test the recovery app on the real hardware**: the Home Assistant button, the setup
WiFi with a wrong WiFi password, 3 quick power cycles, and an OTA upload into it. WiFi with a wrong WiFi password, 3 quick power cycles, and an OTA upload into it.
- [ ] **Rewire the Nano link to UART2.** The firmware now uses `Serial2` (GPIO 16/17) - [X] **Rewire the Nano link to UART2.** The firmware now uses `Serial2` (GPIO 16/17)
instead of `Serial` (GPIO 1/3). Move the ESP32 TX wire from GPIO 1 to **GPIO 17** before instead of `Serial` (GPIO 1/3). Move the ESP32 TX wire from GPIO 1 to **GPIO 17** before
you flash this firmware, or the display gets no data. See you flash this firmware, or the display gets no data. See
[Wiring between ESP32 and Nano](#wiring-between-esp32-and-nano). [Wiring between ESP32 and Nano](#wiring-between-esp32-and-nano).
- [ ] **Add the reply wire:** Nano D1 (TX) → voltage divider → ESP32 GPIO 16 (RX2). With it, - [ ] **Add the reply wire:** Nano D1 (TX) → voltage divider → ESP32 GPIO 16 (RX2). With it,
the ESP sends the first frame as soon as the Nano is ready, instead of after 3 s, and the ESP sends the first frame as soon as the Nano is ready, instead of after 3 s, and
the Nano can be flashed over WiFi (`nano_ota`). the Nano can be flashed over WiFi (`nano_ota`).
- [ ] **Test flashing over WiFi on the real hardware.** The uploader is tested against a - [X] **Test flashing over WiFi on the real hardware.** The uploader is tested against a
simulated bootloader, not yet against the real Nano. Check especially that the old simulated bootloader, not yet against the real Nano. Check especially that the old
bootloader starts after the relay power cycle. bootloader starts after the relay power cycle.
- [ ] **Check the boot timing.** Build the Nano with `MEASURE_REFRESH` to see how long a - [ ] **Check the boot timing.** Build the Nano with `MEASURE_REFRESH` to see how long a
+3 -3
View File
@@ -59,7 +59,7 @@ platform = espressif32
board = esp32doit-devkit-v1 board = esp32doit-devkit-v1
; factory = recovery app, ota_0 / ota_1 = clock firmware (see partitions.csv) ; factory = recovery app, ota_0 / ota_1 = clock firmware (see partitions.csv)
board_build.partitions = partitions.csv board_build.partitions = partitions.csv
monitor_port = COM11 monitor_port = COM18
[env:esp32] [env:esp32]
extends = esp32_common extends = esp32_common
@@ -81,7 +81,7 @@ upload_port = 10.1.1.198
[env:esp32_usb] [env:esp32_usb]
extends = env:esp32 extends = env:esp32
upload_protocol = esptool upload_protocol = esptool
upload_port = COM11 upload_port = COM18
board_upload.offset_address = 0x110000 board_upload.offset_address = 0x110000
; --------------------------------------------------------------------------- ; ---------------------------------------------------------------------------
@@ -101,7 +101,7 @@ build_src_filter =
; ESPSERIAL: status messages are sent to the Nano like in the clock firmware ; ESPSERIAL: status messages are sent to the Nano like in the clock firmware
build_flags = -D ESPSERIAL -I src/esp32 build_flags = -D ESPSERIAL -I src/esp32
upload_protocol = esptool upload_protocol = esptool
upload_port = COM11 upload_port = COM18
; --------------------------------------------------------------------------- ; ---------------------------------------------------------------------------
; Unit tests on the PC (pio test -e test_nano -e test_esp32) ; Unit tests on the PC (pio test -e test_nano -e test_esp32)