Đồng hồ thông minh hỗ trợ JavaScript có nguồn mở

Nó có thể được xây dựng bằng cách sử dụng phần cứng ngoài kệ, nhưng phần sụn của đồng hồ thông minh hỗ trợ JavaScript này hoàn toàn là nguồn mở và có thể hack được.

Các bảng điều khiển vi mô đầu tiên chạy JavaScript c ame cùng một lúc hơn sáu năm trước và trong số đó là bảng Espruino ban đầu. Kể từ đó Gordon Williams, người đứng sau Espruino, đã sản xuất một số bảng khác. Tuy nhiên, dự án mới nhất của anh ấy có hơi khác, vì lần này anh ấy đang chế tạo một chiếc đồng hồ thông minh.

Đồng hồ thông minh, được gọi là bangle.js, sẽ được xây dựng bằng cách sử dụng phần cứng trên kệ, với phần sụn trên bo mạch được thay thế hoàn toàn bằng một ngăn xếp nguồn mở được xây dựng xung quanh JavaScript. Rất giống với PineTime, từ những người ở PINE64, trong khi phần cứng đồng hồ có thể được tìm thấy ở nơi khác, phần mềm làm cho nó ‘thông minh’ là mới và là nguồn mở.

Dự án hiện đang gây quỹ trên Kickstarter ngay bây giờ và đạt mục tiêu tài trợ chỉ 5 giờ sau khi nó ra mắt sáng nay lúc 8 giờ theo giờ Anh.

Mặc dù nếu bạn không thể đợi cho đến khi đồng hồ đưa ra lựa chọn tốt nhất của bạn để có được phần cứng ngay bây giờ là nếu bạn biết ai đó tình cờ ở Nodeconf EU ở Ireland vào cuối tuần trước, người không muốn đồng hồ mới của họ.

Bởi vì tất cả hơn 250 người tham dự của Nodeconf EU đã nhận được mô hình beta của đồng hồ thông minh bangle.js và cơ hội tham dự hội thảo về cách sử dụng nó với Tensorflow Lite cho Bộ điều khiển vi mô.

Phần cứng
Đồng hồ có vỏ nhựa tròn kích thước 5 × 5 × 1,7 cm, với vòng bezel bằng thép không gỉ. Nó có vỏ được xếp hạng IP68 , và nó tuyên bố không thấm nước xuống dưới 10 m, nhưng vẫn có thể tháo rời chỉ bằng 4 ốc vít.

Bên trong phần cứng được xây dựng xung quanh bộ vi xử lý Arm Cortex-M4 của Bắc Âu nRF52832 chạy ở 64 MHz, với 64kB RAM, 512kB flash trên chip và 4 MB flash ngoài. Đồng hồ có 40kB RAM có sẵn như bộ nhớ chương trình, trong khi pin 350 mAh bên trong sẽ cung cấp thời gian chờ một tuần.

Đồng hồ có cảm biến nhịp tim, gia tốc kế 3 trục, từ kế 3 trục, cũng như loa piezo và động cơ rung. Ngoài ra còn có máy thu GPS / Glonass và hỗ trợ Bluetooth LE với cả hỗ trợ trung tâm và ngoại vi cùng với hỗ trợ cho dịch vụ UART của Bắc Âu.

Mặt đồng hồ là màn hình LCD 1,3 inch 240 × 240 pixel16-bit với hai vùng chạm và mặc dù hình dạng của vỏ, màn hình hiển thị là hình vuông.

Phần mềm
Mặc dù phần cứng không có sẵn, phần sụn của đồng hồ thông minh không có. Nó vận chuyển được lập trình sẵn với trình thông dịch JavaScript mã nguồn mở Espruino và có thể được lập trình bằng IDE, các công cụ dòng lệnh dựa trên web, hoặc trong trình soạn thảo đồ họa dựa trên Blockly.

Bạn có thể dễ dàng cài đặt các ứng dụng mới từ web hoặc phát triển ứng dụng của riêng mình bằng JavaScript hoặc ngôn ngữ lập trình đồ họa (Blockly). Tất cả những gì bạn cần là Trình duyệt web (Chrome, Edge hoặc Opera) và bạn có thể tải lên ứng dụng hoặc viết mã để chạy trên đồng hồ không dây!
Việc định cấu hình đồng hồ được thực hiện giống như bạn làm với bất kỳ bảng điều khiển vi mô nào khác, đến mức cách dễ nhất để đặt thời gian là thông qua việc đẩy một đoạn mã Javascript nhanh vào đồng hồ qua Web Bluetooth.

Theo cách tương tự như điện thoại thông minh là một máy tính bạn mang trong túi, thay vì điện thoại, tốt nhất bạn nên nghĩ đây là bảng điều khiển vi mô bạn đeo trên cổ tay thay vì đồng hồ. Bởi vì, như bạn có thể mong đợi đối với một chiếc đồng hồ thông minh mã nguồn mở, việc tương tác với nó giống như sử dụng bảng hơn là sử dụng một thiết bị đeo thông thường, mặc dù các hành động cơ bản có thể được thực hiện bằng các nút của đồng hồ và tất nhiên bạn có thể viết và thêm ứng dụng vào cung cấp cho bạn nhiều quyền kiểm soát hơn. Bởi vì, giống như bất kỳ thiết bị thông minh nào khác hiện nay, có một cửa hàng ứng dụng !

Các bảng điều khiển vi mô đầu tiên chạy JavaScript c ame cùng một lúc hơn sáu năm trước và trong số đó là bảng Espruino ban đầu. Kể từ đó Gordon Williams, người đứng sau Espruino, đã sản xuất một số bảng khác. Tuy nhiên, dự án mới nhất của anh ấy có hơi khác, vì lần này anh ấy đang chế tạo một chiếc đồng hồ thông minh.

Đồng hồ thông minh, được gọi là bangle.js, sẽ được xây dựng bằng cách sử dụng phần cứng trên kệ, với phần sụn trên bo mạch được thay thế hoàn toàn bằng một ngăn xếp nguồn mở được xây dựng xung quanh JavaScript. Rất giống với PineTime, từ những người ở PINE64, trong khi phần cứng đồng hồ có thể được tìm thấy ở nơi khác, phần mềm làm cho nó ‘thông minh’ là mới và là nguồn mở.

Video Kickstarter của bangle.js. (📹: Gordon Williams)
Dự án hiện đang gây quỹ trên Kickstarter ngay bây giờ và đạt mục tiêu tài trợ chỉ 5 giờ sau khi nó ra mắt sáng nay lúc 8 giờ theo giờ Anh.

Mặc dù nếu bạn không thể đợi cho đến khi đồng hồ đưa ra lựa chọn tốt nhất của bạn để có được phần cứng ngay bây giờ là nếu bạn biết ai đó tình cờ ở Nodeconf EU ở Ireland vào cuối tuần trước, người không muốn đồng hồ mới của họ.

Bởi vì tất cả hơn 250 người tham dự của Nodeconf EU đã nhận được mô hình beta của đồng hồ thông minh bangle.js và cơ hội tham dự hội thảo về cách sử dụng nó với Tensorflow Lite cho Bộ điều khiển vi mô.

Phần cứng
Đồng hồ có vỏ nhựa tròn kích thước 5 × 5 × 1,7 cm, với vòng bezel bằng thép không gỉ. Nó có vỏ được xếp hạng IP68 , và nó tuyên bố không thấm nước xuống dưới 10 m, nhưng vẫn có thể tháo rời chỉ bằng 4 ốc vít.

Bên trong phần cứng được xây dựng xung quanh bộ vi xử lý Arm Cortex-M4 của Bắc Âu nRF52832 chạy ở 64 MHz, với 64kB RAM, 512kB flash trên chip và 4 MB flash ngoài. Đồng hồ có 40kB RAM có sẵn như bộ nhớ chương trình, trong khi pin 350 mAh bên trong sẽ cung cấp thời gian chờ một tuần.

Đồng hồ có cảm biến nhịp tim, gia tốc kế 3 trục, từ kế 3 trục, cũng như loa piezo và động cơ rung. Ngoài ra còn có máy thu GPS / Glonass và hỗ trợ Bluetooth LE với cả hỗ trợ trung tâm và ngoại vi cùng với hỗ trợ cho dịch vụ UART của Bắc Âu.

Mặt đồng hồ là màn hình LCD 1,3 inch 240 × 240 pixel16-bit với hai vùng chạm và mặc dù hình dạng của vỏ, màn hình hiển thị là hình vuông.

Phần mềm
Mặc dù phần cứng không có sẵn, phần sụn của đồng hồ thông minh không có. Nó vận chuyển được lập trình sẵn với trình thông dịch JavaScript mã nguồn mở Espruino và có thể được lập trình bằng IDE, các công cụ dòng lệnh dựa trên web, hoặc trong trình soạn thảo đồ họa dựa trên Blockly.

Bạn có thể dễ dàng cài đặt các ứng dụng mới từ web hoặc phát triển ứng dụng của riêng mình bằng JavaScript hoặc ngôn ngữ lập trình đồ họa (Blockly). Tất cả những gì bạn cần là Trình duyệt web (Chrome, Edge hoặc Opera) và bạn có thể tải lên ứng dụng hoặc viết mã để chạy trên đồng hồ không dây!
Việc định cấu hình đồng hồ được thực hiện giống như bạn làm với bất kỳ bảng điều khiển vi mô nào khác, đến mức cách dễ nhất để đặt thời gian là thông qua việc đẩy một đoạn mã Javascript nhanh vào đồng hồ qua Web Bluetooth.

Theo cách tương tự như điện thoại thông minh là một máy tính bạn mang trong túi, thay vì điện thoại, tốt nhất bạn nên nghĩ đây là bảng điều khiển vi mô bạn đeo trên cổ tay thay vì đồng hồ. Bởi vì, như bạn có thể mong đợi đối với một chiếc đồng hồ thông minh mã nguồn mở, việc tương tác với nó giống như sử dụng bảng hơn là sử dụng một thiết bị đeo thông thường, mặc dù các hành động cơ bản có thể được thực hiện bằng các nút của đồng hồ và tất nhiên bạn có thể viết và thêm ứng dụng vào cung cấp cho bạn nhiều quyền kiểm soát hơn. Bởi vì, giống như bất kỳ thiết bị thông minh nào khác hiện nay, có một cửa hàng ứng dụng !

Trình thông dịch Espurino triển khai phần lớn các tính năng JavaScript ES5 và một số tính năng ES6 bao gồm; Biểu thức chính quy, Lời hứa, Hàm mũi tên và Văn bản mẫu.

Học máy trên đồng hồ?
Tuy nhiên, có lẽ điều thú vị nhất về phần mềm trên bangle.js là có TensorFlow Lite dành cho bộ điều khiển vi mô được tích hợp trong phần sụn, vì vậy bạn có thể chạy các mô hình học máy trên cổ tay .

Ngoài ra, TensorFlow được sử dụng để nhận dạng cử chỉ, mặc dù được cảnh báo là Tấn , mô hình mà chúng ta có ngay bây giờ hoạt động tốt cho những người được đào tạo, nhưng không phải cho bất kỳ ai khác – vì vậy về cơ bản bạn phải nhập dữ liệu của riêng mình.

Giống như Smart Edge Agile, điều đó có nghĩa là bạn có thể xây dựng các mô hình phát hiện cử chỉ bằng cách sử dụng gia tốc kế tích hợp. Đơn giản chỉ cần đào tạo và kiểm tra mô hình của bạn trên máy tính xách tay của bạn với TensorFlow, chuyển đổi mô hình của bạn thành TensorFlow Lite và tải nó lên đồng hồ của bạn.

Phỏng vấn
Trước chiến dịch Kickstarter của anh ấy sẽ được phát hành sớm hơn hôm nay, chúng tôi đã ngồi lại với Williams để nói về chiếc đồng hồ thông minh mới của anh ấy, và cách anh ấy thấy nó phù hợp với hệ sinh thái nhúng và đeo được.

Tại sao bạn xây dựng một chiếc đồng hồ thông minh?

Đồng hồ thông minh thương mại cung cấp các ứng dụng cho các hoạt động phổ biến, nhưng có rất nhiều lần những gì bạn muốn một chiếc đồng hồ thông minh phải làm là rất nhỏ mà không ai đã làm điều đó, hoặc các tùy chọn duy nhất là quá đắt. Ví dụ, bạn có thể có một chiếc thuyền và muốn biết Neo của bạn bị trượt hay bạn có thể lái dù lượn và muốn biết tốc độ gốc của bạn là gì – hoặc để giao tiếp với chỉ báo tốc độ không khí.

Đồng hồ thông minh là một bộ sưu tập tuyệt vời gồm các cảm biến, màn hình, nút bấm, radio Bluetooth và pin sạc trong một hộp chống nước nhỏ và với mức giá thấp hơn nhiều so với bạn có thể mua ngay cả một phần của các bộ phận cấu thành. Thông thường, chúng hầu như không thể phát triển và tôi muốn tìm cách làm cho những thiết bị tuyệt vời này có thể tiếp cận được với nhiều người nhất có thể.

Làm thế nào điều này phù hợp với các dự án phần cứng trước đây của bạn?

Tôi bắt đầu làm việc trên Espruino vì tôi thấy việc phát triển cho các bộ điều khiển vi mô 10 năm trước là một quá trình đau đớn đáng kinh ngạc. Bảng đầu tiên tôi sản xuất ở mức khá thấp – bạn có thể nhấp nháy đèn LED mà không cần hàn, nhưng đó là về nó. Tôi đã chuyển sang Espruino Pico, được cắm vào Breadboard, rồi Puck.js độc lập và đây có vẻ như là bước tiếp theo – một thứ hoàn toàn có thể sử dụng mà không có kiến ​​thức về phần cứng, nhưng điều đó vẫn cho phép bạn có được đúng mức độ thấp nếu bạn muốn.

Chúng ta đang thấy một vài chiếc đồng hồ thông minh mở xuất hiện, tại sao bạn nghĩ vậy?

Tôi nghĩ rằng phần cứng của smartwatch ngày càng lớn, rất có khả năng, nhưng cũng đủ đơn giản để có thể ‘hack’ đúng cách. Một cái gì đó giống như Apple Watch ở đỉnh cao là hoàn toàn không thể chấp nhận được, nhưng đồng hồ rẻ hơn sử dụng các bộ phận ít kỳ lạ hơn như nRF52 được ghi chép tốt và dễ dàng phát triển hơn nhiều.

Bạn đang sử dụng phần cứng nào cho đồng hồ? Nó ra khỏi kệ?

Đúng, đó là một chiếc đồng hồ hiện có, nhưng với tất cả phần sụn độc quyền được thay thế bằng trình thông dịch JavaScript mã nguồn mở của chúng tôi. Có bộ xử lý nRF52 Arm Cortex-M4 chạy ở 64 MHz với RAM 64kB, flash trên chip 512kB và flash ngoài chip 4 MB. Ngoài ra còn có GPS, gia tốc kế, từ kế, cảm biến nhịp tim, động cơ rung và còi Piezo, với pin sạc 350 mAh. Nó thậm chí không thấm nước đến 10m.

Có những chiếc đồng hồ rẻ hơn ngoài kia mà chúng ta có thể đã sử dụng, nhưng tôi cảm thấy như GPS mở ra cả một thế giới khả năng cho bangle.js được sử dụng riêng, thay vì như một thiết bị đầu cuối câm cho điện thoại thông minh của bạn.

Chúng tôi khá hài lòng với chính chiếc đồng hồ thông minh. Nó lớn hơn một cái gì đó giống như Apple Watch nhưng nó đẹp và cứng cáp và đặc biệt đối với những người muốn đi xa hơn một chút, nó có thể được mở chỉ bằng 4 ốc vít và lắp ráp lại trong khi vẫn giữ cho nó không thấm nước!

Làm thế nào dễ dàng để có được Javascript chạy trên phần cứng?

Có được một công cụ JS trên máy tính để bàn như V8 chạy trong RAM 64kB về cơ bản là không thể, nhưng chúng tôi đã nỗ lực rất nhiều cho trình thông dịch JavaScript Espruino trong 7 năm qua để làm cho nó hoạt động tốt trên các loại thiết bị này. Việc triển khai Bluetooth vững chắc cho nRF52 mất rất nhiều công sức, nhưng chúng tôi đã thực hiện điều đó cho Puck.js để chúng tôi có thể sử dụng lại rất nhiều những gì chúng tôi đã có trước đây.

Thách thức thực sự là tạo ra thứ gì đó đáng tin cậy và đầy đủ tính năng trong khi phải thiết kế ngược tất cả phần cứng. Mặc dù với một số nỗ lực bạn có thể tìm thấy một công ty sản xuất đồng hồ thông minh sẽ hợp tác, các nhà sản xuất đồng hồ thực sự tốt đang bán rất nhiều mà họ không quan tâm đến việc cài đặt phần mềm tùy chỉnh hoặc chia sẻ thiết kế, vì vậy bạn phải tìm cách nó

Hãy cho chúng tôi về phần mềm?

Chúng tôi đang chạy trình thông dịch JavaScript Espruino dưới dạng phần sụn của bangle.js. Thông thường việc phát triển loại đồng hồ này sẽ khá khó khăn vì bạn cần phải kết nối vật lý với phần cứng bên ngoài để viết phần mềm mới và gỡ lỗi, nhưng có một trình thông dịch nghĩa là bạn có thể tải lên mã và thậm chí gỡ lỗi hoàn toàn không dây.

Bangle.js cũng chứa TensorFlow Lite dành cho Vi điều khiển, do đó bạn có thể có AI đơn giản chạy trên đồng hồ của mình. Ra khỏi hộp, nó được sử dụng để nhận biết một số cử chỉ nhất định bằng tay của bạn, nhưng bạn có thể sử dụng nó cho bất cứ điều gì bạn muốn, và thậm chí có thể cập nhật các mô hình không dây.

Trên máy tính để bàn, chúng tôi có thể sử dụng Web Bluetooth và chạy toàn bộ IDE trong trình duyệt để bạn luôn cập nhật và bạn không có gì để cài đặt. Lập trình bangle.js dễ dàng như truy cập IDE Espurino và nhấp vào ‘kết nối’ và việc sử dụng Công nhân dịch vụ của chúng tôi có nghĩa là bạn thậm chí có thể sử dụng IDE khi ngoại tuyến!

Xét về những gì đồng hồ đi kèm, chúng tôi sẽ vận chuyển nó với một ứng dụng cài đặt và đồng hồ đơn giản, nhưng có một trang web ‘cửa hàng ứng dụng’ miễn phí mà bạn có thể sử dụng để tải lên các ứng dụng mới. Sẽ có một lựa chọn các trò chơi và ứng dụng tiện ích (và chúng tôi sẵn sàng đề xuất!), Nhưng chúng tôi hy vọng rằng cộng đồng Espruino sẽ đóng góp nhiều ứng dụng hơn khi thời gian trôi qua.

Làm thế nào những người khác có thể tận dụng những gì bạn đang làm với đồng hồ thông minh?

Đồng hồ cực kỳ thân thiện với nhà phát triển, vì vậy bất cứ ai cũng có thể chọn nó và phát triển các ứng dụng của riêng họ cho nó. Bạn có thể tự làm một cái gì đó cho riêng mình, tạo hoặc tải xuống một cái gì đó cho bạn bè hoặc người thân hoặc sử dụng nó để tạo nguyên mẫu cho một sản phẩm mới.

Tất cả phần mềm là nguồn mở để bạn có thể xem những gì chúng tôi đã làm hoặc thậm chí là cổng Espruino để chạy trên các đồng hồ khác nhau. Trình thông dịch có nghĩa là các ứng dụng JavaScript của bangle.js thậm chí có thể được chuyển sang các thiết bị mới.

Công việc của bạn có mở ra những thứ khác ngoài Javascript trên cùng một phần cứng không?

Phải, chắc chắn rồi. Bạn chỉ có thể sử dụng lựa chọn lớn các bộ chuyển đổi để chuyển đổi ngôn ngữ bạn chọn sang JavaScript, tuy nhiên tất cả nguồn cho Espruino trên đồng hồ sẽ có sẵn và chúng tôi sẽ xuất bản kỹ thuật đảo ngược của chúng tôi để bạn có thể thay thế hoàn toàn phần sụn nếu bạn muốn . Nếu có đủ sự quan tâm, chúng tôi cũng sẽ xuất bản một số mã C ví dụ cho ứng dụng ‘xương cốt’, nhưng có một lý do chính đáng để chúng tôi chọn JavaScript cho bangle.js: trừ khi bạn sẵn sàng mở đồng hồ và hàn trình gỡ lỗi cho SWD Bản thân các cổng trên đồng hồ bạn sẽ thấy rằng phát triển với các ngôn ngữ không được dịch là một quá trình rất chậm!

Chiến dịch bangle.js đã đi vào hoạt động sớm hơn ngày hôm nay và hiện được tài trợ hoàn toàn trên Kickstarter. Một chiếc đồng hồ chim sớm có giá 40 bảng Anh (khoảng 50 đô la) cộng với vận chuyển, trong khi nếu bạn bỏ lỡ một khe chim sớm, đồng hồ sẽ đưa bạn trở lại £ 47 (khoảng 60 đô la) cộng với vận chuyển. Bên trong hộp là đồng hồ thông minh và dây sạc USB từ tính.

Đồng hồ dự kiến ​​sẽ bắt đầu xuất xưởng vào tháng 3 năm 2020, mặc dù nếu bạn mong muốn có được phần cứng, bạn luôn có thể lấy một trong những mẫu beta giới hạn. Điều đó sẽ tiêu tốn của bạn £ 110 (khoảng $ 130) cộng với vận chuyển, nhưng các đơn vị beta sẽ giao hàng vào tháng tới, vì vậy bạn có thể có nó trong tay vào dịp Giáng sinh.

Tham khảo thêm thông tin về đồng hồ thông minh giá rẻ tại website donghothongminh.top để tìm được smartwatch phù hợp hơn với giá cả chất lượng và thương hiệu.

Nhận xét

Nhận Xét Chi Tiết

Compare items
  • Total (0)
Compare
0