@crispyoz Thanks for the return of experience. But I understand you are using your own OS images and not the ones from Onion. The latest firmware (up to November 2024) was 0.3.4 based on OpenWRT 18.06 and now they made a jump to OpenWRT 23.05. Correct?
Posts made by MK
-
RE: Max date in OpenWRT
-
RE: Max date in OpenWRT
@luz : Thanks for this. I'm running the firmware version 0.3.4 (running OpenWRT 18.06) which is the latest version before the newest OpenWRT 23.05 released by Onion in October this year. I do not wan't to switch to 23.05 as according to the docs quite relevant changes have been made, and I do not wan't to affect my firmware.
So basically, I can either run a OpenWRT Version 18.06 with the date issue or switch to 23.05 which will be a huge hassle....Any idea?
-
Max date in OpenWRT
Hi Community,
Came accros this interesting phenomenon:
Setting a date doesn't work after 2038. This is not sooooo far away, and there is a good chance, some devices going into the field today will still be working in 15 years.
What might happen, when this point is reached? Couldn't find anything related to this issue.
-
RE: Interesting New Onion Omega2 Product on Crowd Supply
Nice! This can indeed save some dev time!
@Lazar-Demin : I'm for PoE as well. Lot's of my applications need connectivity without having power availability. It's much easier to install a simple RJ45 cable than a new wall socket...@crispyoz : I have a PoE board (with a bunch of other features you probably do not need: RTCC, Touch screen interface, RFID reader etc...), don't hesitate to get in touch if you're interested. Other features can be stripped away.
-
OnionOS user
Hi Community,
Has anybody figured out if it is possible to grand the access to the OnionOS to another user (other than root)?
Thanks,
MK
-
RE: PoE 802.3af Dock
@crispyoz : Sorry for the delay. Haven't been very active on the forum for a few weeks. We did integrate a POE hardware into our device which can be found here: https://community.onion.io/topic/5050/omega-and-capacitive-touch-screen
So, it's not just a POE dock. It's a complete PCB integrating a bunch of other functions. But still....POE works on it.
Moreover, here is an older post:
https://community.onion.io/topic/2968/omega-poe-dock -
RE: spidev code for MCP3202 12-Bit A/D converter only reads 252 values
@Kazooie : Hadn't time top check the datasheet in depth, but you should indeed get values up to 4096 if Vin = Vdd (check p.13 of datasheet).
What is you Vdd and Vin to wich you get 252 (which is a very strange value by the way).
You could connect the analog input to you Vdd. The converter should output 4096.
-
RE: Omega and capacitive touch screen
@Lazar-Demin : Thanks a lot. It took us some time to finalize this dev :-). Correct: The MicroSD only is accessed by the display controller. However, over serial commands from the Omega to the display controller, you can interact with the display itself. I'm pretty fond of this, as just dumping some serial commands really is easy.
I therefore have two MicroSD slots on the board. One is reserved for the display controller and only accessed by it. The second one is connected to the Omega2S+ and serves as memory extension.
If this can be an interesting solution for you, don't hesitate E-mailing me. I'll send you a proto board.
Best,
MK
-
Omega and capacitive touch screen
Hi Community,
I've been developing a new device embedding an Onion Omega 2S+ with the need of a small (3,5") touch screen. First, I had a look at the Omega Dash (which seems to be the first choice as many functions are already integrated). However, I ran into 2 main issues:
- First: As I'm much more comfortable using Python than C, I had some issues really getting the hang of LVGL.
- Second: The resistive touch screen, didn't really quite fit my requirements regarding "quality". A capacitive touch would be much nicer.
I had a look at several posts from this forum, and noticed many people where looking for touch solutions. However, I didn't find anything regarding capacitive touch....
I therefore went on the hunt of a capacitive touch solution which I could handle with the Omega. Requirements are as follow:
- 3,5" capacitive touch (not resistive)
- Cover Lens Bezel
- Reasonable price
- Drivable with some Python code
After a lot (I really mean a lot) of research, I finally tested a solution from 4D Systems: https://4dsystems.com.au/products/. This Australian company offers quite a lot of different screens and controllers. I finally chose a 3,5" touch screen which can be driven by their diablo 16 controller: https://www.mouser.fr/ProductDetail/4D-Systems/DIABLO16?qs=0lQeLiL1qybL%2FKx9ffo26w%3D%3D
This solution needs quite a bit of custom PCB design, but as my device anyway needs a custom PCB, it wasn't a real hastle integrating the diablo 16 onto the board. The nice thing here is, all the heavy lifting is done by the controller, which directly interfaces with the Omega with a simple serial connection. So once the hardware is done, just get out the Diablo 16 documentation and start writting serial commands....nice.....
Here are my conclusions to this project:
Advantages:
- Super easy to use, once the hardware is integrated. Just write a simple code in the language of your choice (Python in my case) and start talking with the Diablo16 via UART!!!
- 4D Systems offers a free IDE called 4D Workshop enabling a drag and drop style interface in order to design your screen. Again this is super easy and terribly reduces dev time!
- The result is great! The look of the screen and the touch interface are really excellent. The touch response is really fast and gives the user a good experience.
Disadvantages:
- You do need to make a custom hardware. However, I think 4D also offers some intelligent displays directly integrating the controller. This will also require some hardware dev but probably less complexe as directly integrating the controller onto your board.
- All the static data (images, fixed texts, screen layout etc....) is not stored on the controller. The controller accesses this data on an external MicroSD card. This implies two things: You need to integrate this onto your board and you need a high quality industrial grade MicroSD card if you want your product to last.
- As the screen layout is directly written onto the controller and the MicroSD, you cannot perform any remote updates.
- For a final system, you need: Screen + Controller + MicroSD Card + a bunch of other passive components... All this adds up to a certain sum $£€.
Not sure this will meet the requirements for other projects, however for my purposes, this was a great solution enabling a really nice looking device, development simplicity at a reasonable cost. I tried to attach a small video of the screen interaction, this however failed in this post...sorry.
My device as such bundles some other features:
- Ethernet connectivity
- POE (This is really cool as sometimes I need to deploy this device where there is no AC access, and deploying a simple Ethernet cable is wayyyyyy easier than a 220V power line :-))
- 13,56MHz RFID reader (Serial connection with CR95HF controller from ST)
- RTCC chip (MCP7951X from Microchip) with minimum 3 days backup power storage. This is in case power and internet connection would fail simultaneously. The chip is connected to the Omega via SPI.
I'm a little short on time, but I'll try to post some more infos regarding these other features.
Best,
-
RE: Onion Memory structure
Hi Community,
Just an update on this. Thanks to @crispyoz , I had A LOT of really interesting documentation to read. So this is how I would summarize my investigations:
-
Point 1 was that after dumping a 2,967MB file into /root, the du -h command showed a total additional storage usage of 5,8MB (3MB in /root and 2,9MB in /overlay). As I understand, the overlay FS is a union of 2 filesystems. In OpenWRT the two filesystems will be /rom containing the rootfs and /overlay which will be the actual storage space. As in my understanding /root is uncluded in /overlay, this explains why the du command counts the used storage as double.
-
Point 2 was that the df command however only returns an additional storage usage of 0.8MB after dumping my 2.967MB file. I couldn't find any explanation for this in the OpenWRT specific flash layout. However, some dark memory popped into my mind regarding JFFS2 and compression. Following Stackoverflow post seems to confirm my thoughts:
https://stackoverflow.com/questions/31622039/jffs2-filesystem-storage-usage-inconsistent-with-real-file-size
To conclude:
1 - It seems du and df commands do not calculate storage the same way. du seems to add the individual file sizes, whereas df seems to take into account the "real" used flash storage taking into account JFFS2 compression algorithms.
2- This makes it quite difficult to evaluate remaining storage. For my projects I think I'll go over to practical use cases with max file sizes (+ some safety) in order to make sure my applications do not run out of storage.Open Points:
1 - Does anybody know where I could find the Omega specific flash layout (just out of curiosity in order to cross check it with the standard OpenWRT flash layout found here: https://openwrt.org/docs/techref/flash.layout#explanations)?
2 - I think the Omega Flash in of NOR type. I however was unable to find any official datasheet confirming this. Does anyone have this kind of ressource? -
-
RE: Onion Memory structure
@SpiderKenny
Thanks for your reply.
My app will write quite a lot. The device is intended to collect external data (every minute or so) and transfer the data to an MQTT broker. However, the device will always keep an internal Database (sqlite) in order to backup the sent data. Database will be about 2MB at it's maximum size.
Not sure the internal flash really is an issue with frequent writings. I always understood sd cards are more prone to errors over time. My device has a built in sd card slot if needed. If really really necessary I could therefore switch to the sd card. However, if possible, I'd like to avoid this.@crispyoz
Thanks for the link. This is exactly what I was looking for. I'll dive into this content. -
Onion Memory structure
Hi Community,
I'm looking more in detail into the onion disk storage layout. And I must admit....I'm really confused....
First: I'm working with on onion omega 2S+ which is given with 32MB of flash storage. If I run a df -h command, I get this:
I do not understand where I can see the total available disk space of 32MB.
Second: running a du -h -d 1 / command, will output this:
I really don't get the link between both as the df command indicates a usage of 11.6MB in /overlay and the du command indicates a size of 20.7MB for overlay
Third (and this is where it get's really difficult for me to understand): If I just dump a 2967KB text file into /root (via ssh) I get this if I run the du command:
I do not see where the additionnal 2967KB went...Moreover, the du command shows:
According to this, adding this 2,967MB file used about 5,8MB on disk...
Any explanation for this? I'm just making these trials in order to make sure my application will not run out of storage. However, I'm not able to understand this.
Thanks in advance,
MK
-
RE: Create custom App for OnionOS
@SUPERMARINE98 Great! Thanks for this nice description!
-
RE: Clarification Needed: WiFi Frequency Configuration for CE Certification
Hi @sajintricog,
I'm not a WiFi expert. I do not know what htmode and hwmode are. It would however seem logiciel to set channel to 1 and check it out. A simple check would be to install a simple WiFi analyser on your Smarpthone (App-Stores are full of these). The app will show you the WiFi channel the Omega AP is on.
Note: Do not forget some channels are not authorized in some countries.
Best of luck,
MK
-
RE: Clarification Needed: WiFi Frequency Configuration for CE Certification
Hi @sajintricog ,
A guess would be to change the WiFi Channel from the AP (Channels range from 1 to 14). Frequency ranges can be found here:
https://en.wikipedia.org/wiki/List_of_WLAN_channelsHowever I do not know how tho change the Channel on the Omegas AP.... I would however be interested in knowing how to do this.
Regarding CE certifications, a bummer with radio equipement (which your End device is as it has WiFi connectivity) is that it falls under the RED directive (2014/53/EU). This directive however inludes the electrical safety regulation (EN 62368-1). This for example implies that your device must meet advanced safety requirements (as none fire propagating properties etc...). Your testing lab however should be able to give you more information on this.
Best,
MK
-
Create custom App for OnionOS
Hi Community,
I was wondering how to create custom apps for OnionOS. Except for some dead links here (https://onion.io/the-onion-app-sdk-is-here/), I haven't found any kind of documentation. I'd like to create a simple administration app on a browser available GUI. I'd like to use the OnionOS environnement. Else I'd have to build a full server in Django or something (don't know if Django even runs on the Omega).
Thanks,
MK
-
RE: Onion Omega 2 WiFi connection. What if wrong Password?
@crispyoz Great hint! I'll check what I see in the log. Just to get things right: I'm explicitely testing the use case where a user enters a wrong Password. This case has a strange behaviour as even if a wrong password is entered, the network is added to the registered wifi list and is set to "enabled" = True....