Стари компютри на HP (Страници 1 2 3 ...5 )| BG Development · За реклама · За контакти |
Помощ Търсене Потребители Календар Правила |
| Здравей! ( Включване | Регистриране ) |
| thrawn | Публикувана на: 26-06-2026, 18:39 |
|
Мнения: 49 Преглеждания: 1437 |
Това звучи като хардуерна синхронизация (при 232). Директното изпращане/получаване на данни не би трябвало да вдига/сваля RTS а освен ако не си го задал в конфигурацията на порта. Ако е активирано, ще се чака CTS за да се изпрати нещо. Това ще изисква и комуникационния кабел да поддържа хардуерната синхронизация. Ако сте сменили кабелът, а комуникацията изисква хардуерна синхронизация ще получаваш точно такива забивания. |
| Форум: Разни · Преглед: #503982 |
| thrawn | Публикувана на: 23-06-2026, 05:46 |
|
Мнения: 49 Преглеждания: 1437 |
Мен такива неща много ме дразнят. Имаш ватиант, преди да попълниш списъкът да провериш всеки порт който ти връща библиотеката дали е свързан физически с устройство (четеш /sys/class/tty/ за всеки обект от списъкът и гледаш неговия тип). |
| Форум: Разни · Преглед: #503972 |
| thrawn | Публикувана на: 22-06-2026, 20:57 |
|
Мнения: 49 Преглеждания: 1437 |
Имаш всичките 32 устройства Библиотеката коиято използваш не е направена коректно и ги извежда директно, без да проверява дали наистина са налични или не. Или я преправи, или си напиши твоя която да извежда коректно списък с наличните портове. |
| Форум: Разни · Преглед: #503969 |
| thrawn | Публикувана на: 21-06-2026, 14:48 |
|
Мнения: 49 Преглеждания: 1437 |
Е то е това де. Тези флашове са само за този чип. Когато му подадеш команда, той си пише в паметта (ако има такава) иначе използва фабричните записи от ROM паметта си. Това няма отношение към контролера на устройството. При контролерите с вграден usb (примерът на ici от предната страница) всичко се прави на ниво приложение (тогава всички подобни идентификатори заемат място в паметта на контролера, освен ако умишлено не се постави външна памет в която да се трупат такива неща). От тук вече е въпрос на желание да се включат команди за промяна на идентификаторите. В много устройства има скрити jtag или uart портове по платките които се използват за дебъгване и препрограмиране. Също тка има трикове с бут лодерите на контролерите които позволяват да ги стртираш в "сервизен режим" в който евентуално да пипаш на места недостъпни за писане от основното приложение. --- На това ниво съм любител, така че, ако има неточности, хората които се занимават с това ще ме поправят. |
| Форум: Разни · Преглед: #503964 |
| thrawn | Публикувана на: 21-06-2026, 14:29 |
|
Мнения: 49 Преглеждания: 1437 |
Представи си, че имаш две еднакви устройства (без серирн номер) когато ги включиш излизат на COM5 и COM6. По някое време се рестартират но второто се включва първо. Операционната сисрема му дава COM5. След това се включва другото и получава COM6. Така и двата порта са там и двете устройства си работят но са си сменили местата. Обикновено, серийните портове не се държат отворени, постоянно, така че, подобно събитие няма как да бъде отчетено. В някои случаи е все едно кое от двете ще обработи командата но има устройства при които е критично командата да се подаде на точно определено устройство (в моя случай, това са фискални устройства и пос терминали които отчитат потоци на пари - те ще се запишат като оборот на грешна фирма или по-лошо, парите ще отидат в грешна сметка). Иначе, производителите могат да сменят идентификациите (при ftdi май се ползваше външен flash за това. А това вдига цената на продуктът (не само с цената на компонента но и разходи за асемблиране) затова ги зарязват с идентификациите по подразбиране). Серийните номера пък изискват отделно флашване на всяко устройство, което също усложнява производството. Технически няма проблем производителите да предвидят опция за програмиране на идентификатори от потребителя, но обикновенно, това се праеи през сервизни интерфейси до които обикновените потребители нямат достъп. |
| Форум: Разни · Преглед: #503962 |
| thrawn | Публикувана на: 21-06-2026, 11:02 |
|
Мнения: 49 Преглеждания: 1437 |
Имах в предвид как ги подавате/приемате на чисто хардуерно ниво. Ама горе нали пусна извадка как ги обработваш. Но третирането им като команда, практически ги обезсмисля. |
| Форум: Разни · Преглед: #503959 |
| thrawn | Публикувана на: 21-06-2026, 08:34 |
|
Мнения: 49 Преглеждания: 1437 |
Точно това щях да питам, как реализирате хардуерната синхронизация по usb (макар, че в последните години почти не съм виждал устройства които да я използват)... |
| Форум: Разни · Преглед: #503957 |
| thrawn | Публикувана на: 20-06-2026, 11:55 |
|
Мнения: 49 Преглеждания: 1437 |
Не знам как ги определяш тия времена... За комуникацията с машините на датекс (и изобщо всичко ползващо същия протокол) имаш фиксирано време за отговор до 60 ms. За да е сигурно, че устройството е прихванало пакетът трябва да го изпратиш поне 2-3 пъти, за да обявиш че го няма. Това праеи общ минимален таймаут от 180 ms. Добави времето за изпращане на пакетът отиваш на 200 ms. Лично аз задавам таймаут на 200 ms. на всяка команда (и 3 повторения). Та лесно можеш да стигнеш до секуда че и повече |
| Форум: Разни · Преглед: #503953 |
| thrawn | Публикувана на: 20-06-2026, 10:23 |
|
Мнения: 49 Преглеждания: 1437 |
Има някакъв резон да се напраеи така, но забавянето няма да е 100 ms. А повече, защото трябва да саканираш всички портове и да изчакаш таймаутите на грешните портове. Като цяло, аз не бих (и не) го направил така. Просто си мапвам устройствата както ми трябват а в последатвие проверката дали устройството е там или не се свежда до проста проверка дали файлът го има ими не. В windows обаче не става толкова лесно. Но като цяло гледам да не поддържам системи с windows. |
| Форум: Разни · Преглед: #503951 |
| thrawn | Публикувана на: 20-06-2026, 08:04 |
|
Мнения: 49 Преглеждания: 1437 |
Да де, но се случва. Ето, на предната страница линкнах инфо на апарат на датекс (без сериен номер само vid/pid). Апаратът има режим за самоизключване (да пести батерия). Ако закачиш два такива и пуснеш приложение което ги управлява то ще работи коректно. Но ако те се изключат и ги включиш отново (без да спираш приложението), как би разбрал на кой порт кой апарат е (при твоята идея с детектване на устрийството)? Точно за това трябва да имаш механизъм който да ти гарантира, че това устрийство излиза сами и единствено на този порт. Тоя проблем съм виждал да се решава от колеги с различни usb to rs адаптери. |
| Форум: Разни · Преглед: #503949 |
| thrawn | Публикувана на: 17-06-2026, 12:53 |
|
Мнения: 49 Преглеждания: 1437 |
И това не е много ОК, защото отнема време (а трябва да го правиш преди всяка команда, защото тези устройства могат да изчезнат и да се появят по-всяко време). Като цяло, под linux имаш някакво поле за действие докато в windows нещата са си на самотек. |
| Форум: Разни · Преглед: #503947 |
| thrawn | Публикувана на: 17-06-2026, 11:23 | ||||
|
Мнения: 49 Преглеждания: 1437 |
Кое е чудесно? Имам на бюрото два pinpad-а с ftdi - idVendor = 0403, idProduct = 6001, без сериен номер. Невъзможно е да се определи кой от тях на кой порт излиза. Имам и mdb контролер пак с ftdi и пак с оригиналната идентификация на чипа (добре, че китайците слагат серийни номера). DEVICE и VENDOR ID -тата се използват за идентифициране на производител и модел на устройство - от всички еднакви модели на един производител са с един и същи идентификатори (да не говорим, че масово се запазват идентификаторите на използваните чипове или се правят някакви тъпотии като това Bus 001 Device 095: ID fff0:0100 Datecs Datecs Serial) Та ако разчиташ само на тези идентификатори никога няма да се оправиш с имената на портовете. Затова се използват серийните номера (или друга характеристика на устройството) по която да можеш да го идентифицираш уникално за да му зададеш постоянно име Това е машината с която работя в момента
Тази специфика прави работата с всички подобни устройства много неприята и за това, както вече казах, се предпочита чист rs ---
Ето как се решава проблемът с фиксирането на имената под linux. В краен случай може да се прибегне и до филтриране по usb портове... |
||||
| Форум: Разни · Преглед: #503945 |
| thrawn | Публикувана на: 17-06-2026, 10:07 |
|
Мнения: 49 Преглеждания: 1437 |
vendor и product id-тата не са уникални. Точно тук е мотиката. А евтините устройства нямат уникален сериен номер. |
| Форум: Разни · Преглед: #503943 |
| thrawn | Публикувана на: 15-06-2026, 09:33 |
|
Мнения: 49 Преглеждания: 1437 |
Под linux портовете се номерират по ред на разпознаване на устройствата. Независмо с какви идентификатори си, като боднеш платката тя ще излезе като ttyUSB/ACM0, следващата ще е 1 и т.н. За да фиксираш портовете се използва udev правила за създаване на символни връзки с фиксирано име към обектът които е създал драйвера за това устройство (като там вече можеш да филтрираш по сериен номер и т.н.) |
| Форум: Разни · Преглед: #503932 |
| thrawn | Публикувана на: 15-06-2026, 08:50 |
|
Мнения: 49 Преглеждания: 1437 |
Ключовия момент е в ако-то. Има доста хардуер без сериен номер, така, че се разчита само на девайс и вендор ид-тата. Да, ако се постараеш да купиш качествен(марков) адаптер, в него ще си има и сериен номер но хората предпочитат сигурността (никой не обича да намества разместени портове посред нощ). Иначе, когато ползвам такива адаптери под linux винаги задавам udev линкове, защото там номерирането е по ред и няма как да го промениш. |
| Форум: Разни · Преглед: #503930 |
| thrawn | Публикувана на: 15-06-2026, 08:37 |
|
Мнения: 49 Преглеждания: 1437 |
Основния проблем е с драйверите (под windows) и системата зя номериране на портовете. Вторичен проблем се явява надеждността (usb то се изключва лесно). Дължината на трасетата също указва влияние. Като цяло, при индустриялните конфигурации (и в частност при pos системите) се предпочита чист rs. Усб тата са краен вариант (обикновено, при лаптопи или ако вземе че изгори ttl конвертора на платката). |
| Форум: Разни · Преглед: #503928 |
| thrawn | Публикувана на: 15-06-2026, 05:25 |
|
Мнения: 49 Преглеждания: 1437 |
Тези компютри са "ценни" само ако имат серийни портове. Много вървят за пос системи. А сега им е сезона (началото на лятото се отварят мното заведения по морето). |
| Форум: Разни · Преглед: #503924 |
| thrawn | Публикувана на: 02-05-2026, 06:36 |
|
Мнения: 33 Преглеждания: 59508 |
В крайна сметка нещата се свеждат наистина до това. Но саимя процес по подновяване е малко по-сложен, тъй като изисква да докажеш, че домейнът е под твой контрол. Но си има скриптове които го правят - даже има разписан протокол за тази цел ACME (да не се бърка с името на емблематичната комапния Между другото, сега обърнах внимание, че тук не се използва безплатен серификат (поне не знам sectigo да предлагат такъв) но като цяло автоматизацията по подновяването на сертификатите им е същата. |
| Форум: За Форума · Преглед: #503811 |
| thrawn | Публикувана на: 29-04-2026, 12:57 |
|
Мнения: 33 Преглеждания: 59508 |
Е то задължително пускаш скрипт който обновява сертификатът. На мен проблемът ми е, че спряха известията ако видят, че сертификатът изтича и не се поднови. Но все пак, услугата е безплатна. На който не му харесва ... |
| Форум: За Форума · Преглед: #503807 |
| thrawn | Публикувана на: 21-04-2026, 08:19 |
|
Мнения: 33 Преглеждания: 59508 |
Последните дни явно е епидемия около мен с тия експирясали сертификати... |
| Форум: За Форума · Преглед: #503798 |
| thrawn | Публикувана на: 13-04-2026, 10:34 |
|
Мнения: 12 Преглеждания: 1941 |
DNS е мрежа от сървъри. Когато добавиш/редактираш нещо в един той казва на тези около него за промяната. Те казват на твзи около тях, те на тези около тях... това е процес на "спам" за обновяване на зони (това е тая "минута" за която говориш главните и подчинените съевъри се спамят взаимно). Отделно, самите сървъри кешират записи (рутерът ти, доставчикът ти, неговия доатавчик...). Така ти може да смениш адреса на сайтът но сървърите които са кеширали стария няма да си направят трудът да проверят за промяна в зоната или докато кеша не изтече или докато не получат нотификация за обновяване. Отделно, има кеширане и на ниво ОС. Това са неща които не зависят от теб (е, можеш да посочиш време за което да ти се кешеират записите - например, ако си играеш с настройки на зоната сваляш времето на минимум, но пък това вдига натоварването на dns сървърите). Затова промените в DNS записите се виждат бавно в глобален мащаб и се правят горните изпълнения за да не се чудят клиентите какво става). Пак казвам, това не е фатално. Дори да не си предприел нищо, просто го знай като информация и ако получиш оплакване от клиент за странно поведение или необработена заявка (ако не си махнал статия хост) да си на ясно как да реагираш. |
| Форум: Разни · Преглед: #503787 |
| thrawn | Публикувана на: 13-04-2026, 09:04 |
|
Мнения: 12 Преглеждания: 1941 |
За решено, решено е. Само ти обръщам вномание, че в близките един два дни може да има клиенти които ще отварят стария хост (заради стари dns записи). Затова е хубаво там да спреш достъпът за писане в базата данни (за да не могат клиенти да качват информация която няма да се обработва реално). А ако си изтрил всичко, сложи просто една стаична стеаница, че се извършва профилактика. Така ако някой попадне там, ще види нея вместо 404. А когато dns-ът му се обнови, по магичен начин ще види новия хост. Всичко това няма никакво отношение към финкциите в сайтът. Просто така работи DNS мрежата. Но дори и да не направиш нищи, е все тая. |
| Форум: Разни · Преглед: #503785 |
| thrawn | Публикувана на: 13-04-2026, 05:55 |
|
Мнения: 12 Преглеждания: 1941 |
Имай в предвид, че актуализяцията на dns сървърите може да отнеме няколко дни. Когато се прави такава миграция е хубаво да се остави стария хост активен (в режим read only) за да могат потребителите които попадат на него да виждат все пак някаква функционалност (или поне съобщение, че се извършва профилактика или някаква такава глупост). Чак когато мине седмица (за да си сигурен, че всички dns сървъри са се актуализирали) затриваш статия хост. |
| Форум: Разни · Преглед: #503783 |
| thrawn | Публикувана на: 12-04-2026, 17:30 |
|
Мнения: 12 Преглеждания: 1941 |
Браузерите имат опция да се изключи рестрикцията за http така че, ако е само за теб - просто виж как се спира на браузерът който използваш. Ако ти се занимава повече - можеш да си направиш плъгин в който ще можеш да заобиколиш ограничението (пак ще работи само за теб). Трети вариант е да използваш download мениджер (например wget или дори curl). Можеш дори да регистрираш собствен пртокол така, че файловете да се свалят директно с твое приложение или скрипт. Основния проблем са клиентите (ако са браузери), защото те не са под твой контрол. Така че, всичко горе е просто замитане на проблемът. Единственото смислено решение е да мигрираш или към план който позволява криптиране или направо сменяй хоста. |
| Форум: Разни · Преглед: #503781 |
| thrawn | Публикувана на: 12-04-2026, 16:01 |
|
Мнения: 12 Преглеждания: 1941 |
Проблемът му, най-вероятно е, че става дума за споделен хост (работи на един сървър) а сертификатите включвт име на хост. Това прави невъзможно да се ползва един общ сертификат за всички клиенти (заради имената) а в безплатните акаунти не им дават достъп до конфигурацията на виртуалните хостове. |
| Форум: Разни · Преглед: #503779 |
Отворена тема (има нови мнения)
Отворена тема (няма нови мнения)
Гореща тема (има нови мнения)
Гореща тема (няма нови мнения)
Анкета (има нови гласували)
Анкета (няма нови гласували)
Заключена тема
Преместена тема